(续)SSM整合之SSM整合笔记(ContextLoaderListener)(P179-188)
创始人
2024-04-11 22:39:01

一   准备工作

1 新建模块ssm    com.atguigu.ssm

2 导入依赖

war5.3.1
org.springframeworkspring-context${spring.version}org.springframeworkspring-beans${spring.version}org.springframeworkspring-web${spring.version}org.springframeworkspring-webmvc${spring.version}org.springframeworkspring-jdbc${spring.version}org.springframeworkspring-aspects${spring.version}org.springframeworkspring-test${spring.version}org.mybatismybatis3.5.7org.mybatismybatis-spring2.0.6com.alibabadruid1.0.9junitjunit4.12testmysqlmysql-connector-java8.0.16log4jlog4j1.2.17com.github.pagehelperpagehelper5.2.0ch.qos.logbacklogback-classic1.2.3javax.servletjavax.servlet-api3.1.0providedcom.fasterxml.jackson.corejackson-databind2.12.1commons-fileuploadcommons-fileupload1.3.1org.thymeleafthymeleaf-spring53.0.12.RELEASE

 

3 . 转web

4 . 创建表

配置web.xml

 CharacterEncodingFilterorg.springframework.web.filter.CharacterEncodingFilterencodingUTF-8forceEncodingtrueCharacterEncodingFilter/*HiddenHttpMethodFilterorg.springframework.web.filter.HiddenHttpMethodFilterHiddenHttpMethodFilter/*SpringMVCorg.springframework.web.servlet.DispatcherServletcontextConfigLocationclasspath:springmvc.xml1SpringMVC/org.springframework.web.context.ContextLoaderListenercontextConfigLocationclasspath:spring.xml

三  创建SpringMVC的配置文件并配置

springmvc.xml 


spring.xml


四 .创建控制层EmployeeController

package com.atguigu.ssm.controller;/*** 查询所有的员工信息-->/employee-->get* 查询员工的分页信息-->/employee/page/1-->get* 根据id查询员工信息-->/employee/1-->get* 跳转到添加页面-->/to/add-->get* 添加员工信息-->/employee-->post* 修改员工信息-->/employee-->put* 删除员工信息-->/employee/1-->delete*/
@Controller
public class EmployeeController {}

五   index.html



首页


index.html

六  测试

 七  创建service

1  创建service接口EmployeeService

package com.atguigu.ssm.service;public interface EmployeeService {}

2 创建service实现类EmployeeServiceImpl

package com.atguigu.ssm.service.impl;
import com.atguigu.ssm.service.EmployeeService;
import org.springframework.stereotype.Service;@Service
public class EmployeeServiceImpl implements EmployeeService {}

八  创建jdbc.properties

 

 

jdbc.driver=com.mysql.cj.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/ssm?serverTimezone=UTC
jdbc.username=root
jdbc.password=123456

九  spring.xml


十  SSM整合之Spring整合MyBatis

1 .mybatis-config.xml



2   mapper的接口 EmployeeMapper

package com.atguigu.ssm.mapper;public interface EmployeeMapper {}

3   mapper的接口所对应的映射文件


4 .spring.xml

普通工厂和工厂bean的区别

普通工厂:如果是一个普通的工厂 然后我们把工厂配置到IOC容器中  要先获取IOC 在获取工厂的bean  然后在通过工厂获得工厂所提供的对象

工厂bean:  可以省略一个获取工厂的步骤  我们可以直接获取工厂所提供的对象

所以我们当前把SqlSessionFactoryBean配置到IOC容器中之后  就可从IOC容器直接获取到SqlSessionFactory对象

    
配置好SqlSessionFactoryBean后  就可以直接装配sqlSessionFactory对象

 删除mybatis-config.xml里面的数据源和引入实体所在的包  最后变成如下


5. 创建实体类pojo

package com.atguigu.ssm.pojo;public class Employee {private Integer empId;private String empName;private Integer age;private String gender;private String email;public Employee() {}public Employee(Integer empId, String empName, Integer age, String gender, String email) {this.empId = empId;this.empName = empName;this.age = age;this.gender = gender;this.email = email;}public Integer getEmpId() {return empId;}public void setEmpId(Integer empId) {this.empId = empId;}public String getEmpName() {return empName;}public void setEmpName(String empName) {this.empName = empName;}public Integer getAge() {return age;}public void setAge(Integer age) {this.age = age;}public String getGender() {return gender;}public void setGender(String gender) {this.gender = gender;}public String getEmail() {return email;}public void setEmail(String email) {this.email = email;}@Overridepublic String toString() {return "Employee{" +"empId=" + empId +", empName='" + empName + '\'' +", age=" + age +", gender='" + gender + '\'' +", email='" + email + '\'' +'}';}
}

6 . spring.xml


7 .创建日志文件log4j.xml


十 一   SSM整合之员工列表功能

1 书写控制层EmployeeController

查询完信息要把它展示在页面上  所以我们要把它共享到域对象中 
package com.atguigu.ssm.controller;
import com.atguigu.ssm.pojo.Employee;
import com.atguigu.ssm.service.EmployeeService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;import java.util.List;/*** Date:2022/7/11* Author:ybc* Description:* 查询所有的员工信息-->/employee-->get* 查询员工的分页信息-->/employee/page/1-->get* 根据id查询员工信息-->/employee/1-->get* 跳转到添加页面-->/to/add-->get* 添加员工信息-->/employee-->post* 修改员工信息-->/employee-->put* 删除员工信息-->/employee/1-->delete*/
@Controller
public class EmployeeController {@Autowiredprivate EmployeeService employeeService;@RequestMapping(value = "/employee", method = RequestMethod.GET)public String getAllEmployee(Model model){//查询所有的员工信息List list = employeeService.getAllEmployee();//将员工信息在请求域中共享model.addAttribute("list", list);//跳转到employee_list.htmlreturn "employee_list";}}

2   在接口里面写方法

 

package com.atguigu.ssm.service;import com.atguigu.ssm.pojo.Employee;import java.util.List;public interface EmployeeService {/*** 查询所有的员工信息* @return*/List getAllEmployee();
}

3 写实现类 

 

 

package com.atguigu.ssm.service.impl;@Service
public class EmployeeServiceImpl implements EmployeeService {@Autowiredprivate EmployeeMapper employeeMapper;@Overridepublic List getAllEmployee() {return employeeMapper.getAllEmployee();}
}

 

 

3 在mapper接口里面创建方法  查询所有员工的方法

package com.atguigu.ssm.mapper;import com.atguigu.ssm.pojo.Employee;import java.util.List;public interface EmployeeMapper {/*** 查询所有的员工信息* @return*/List getAllEmployee();
}

这里面不用写实现类  因为是mapper  主需要根据mapper接口的方法在所对应的映射文件创建他的sql语句就可以  

4  . 根据mapper接口的方法在所对应的映射文件EmployeeMapper.xml里面创建他的sql语句


5.  创建employee_list.html



员工列表


员工列表
流水号员工姓名年龄性别邮箱操作
删除修改

6 .index.html



首页


index.html

查询员工的分页信息

7 .测试

 

相关内容

热门资讯

“逐梦冰雪 陕耀未来”陕西省青... “逐梦冰雪 陕耀未来”陕西省青少年冬季阳光体育大会启动1月17日,“逐梦冰雪 陕耀未来”陕西省青少年...
受降雪天气影响,北京公交5条线... 新京报讯 据@北京公交集团 消息,北京市及周边出现降雪天气,为确保乘客出行安全,截至1月17日20时...
河南一地通报:对朱俊峰的不幸去... 1月16日晚,河南周口市川汇区联合调查工作专班发布情况通报,内容如下:情况通报近日,网传周口一家鸭货...
阿维塔回应“广西南宁15车连撞... 每经编辑|张锦河     1月17日,阿维塔科技发布关于广西南宁15辆车连撞交通事...
最新或2023(历届)三八妇女... 临,一次花个干净。日日月月费心,这日焕然一新,孩子老公别管,尽情使唤来听。  43. 工作干劲似儿郎...