SSM整合

1、环境要求以及JAR包导入

环境要求

  1. jdk1.8
  2. maven3.6.1
  3. tomcat9
  4. mysql8

jar导入


    
        junit
        junit
        4.12
    
    
        mysql
        mysql-connector-java
        8.0.18
    
    
        com.mchange
        c3p0
        0.9.5.5
    

    
        javax.servlet
        servlet-api
        2.5
    
    
        javax.servlet.jsp
        jsp-api
        2.2
    
    
        javax.servlet
        jstl
        1.2
    
    
        org.mybatis
        mybatis
        3.5.3
    
    
        org.mybatis
        mybatis-spring
        2.0.3
    
    
        org.springframework
        spring-webmvc
        5.2.3.RELEASE
    
    
        org.springframework
        spring-jdbc
        5.2.3.RELEASE
    

其他设置


    
    
        
            
                src/main/resources
                
                    **/*.properties
                    **/*.xml
                
                true
            
            
                src/main/java
                
                    **/*.properties
                    **/*.xml
                
                true
            
        
    
        
        
            
                org.apache.maven.plugins
                maven-compiler-plugin
                3.8.1
                
                    1.8
                    1.8
                
            
        
    

2、Dao层整合

步骤

  1. 在resources目录下创建连接数据库的外部配置文件db.properties

    jdbc.driver=com.mysql.cj.jdbc.Driver
    jdbc.url=jdbc:mysql://localhost:3306/stx?useSSL=true&useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai
    jdbc.username=root
    jdbc.password=root
    
  1. 在resources目录下创建mybatis主配置文件mybatis-config.xml

    
    
    
        
            
        
        
            
        
    
    
  1. 在resources目录下创建mybatis,mapper映射文件存放文件夹

    
    
    
        
    
    
  2. 在resources目录下创建spring-dao.xml配置文件来整合dao层

    
    
        
        
        
        
            
            
            
            
        
        
        
            
            
            
            
        
        
        
        
        
        
        
        
        
    
    
  3. 在com.stx.pojo中创建对应实体类

3、Service层整合

步骤

  1. 在com.stx.service分别编写UserService接口以及对应的实现类

    • 接口

      package com.stx.service;
      
      import com.stx.pojo.User;
      
      import java.util.List;
      @Service
      public interface UserService {
          List getAll();
      }
      
    • 实现类

      package com.stx.service;
      
      import com.stx.pojo.User;
      
      import java.util.List;
      @Service
      public class UserServiceImp implements UserService {
          @Override
          public List getAll() {
              return null;
          }
      }
      
  1. 在resources目录下编写spring-service.xml文件整合service层,将Service层对象交给spring容器托管

    
    
    
        
    
    
  2. 使用注解的方式将service层接口交给容器托管,需要在service层接口/类上加上@Service注解,接口实现类使用@Autowired注解引用Dao层对象

    package com.stx.service;
    
    import com.stx.dao.UserMapper;
    import com.stx.pojo.User;
    import org.springframework.beans.factory.annotation.Autowired;
    import org.springframework.stereotype.Service;
    
    import java.util.List;
    @Service
    public class UserServiceImp implements UserService {
        @Autowired
        UserMapper userMapper;
        @Override
        public List getAll() {
            return userMapper.getAll();
        }
    
    }    
    

注意

  1. dao层引入对象创建失败问题

    六月 17, 2020 4:56:10 下午 org.springframework.context.support.AbstractApplicationContext refresh
    警告: Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'userServiceImp': Unsatisfied dependency expressed through field 'userMapper'; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type 'com.stx.dao.UserMapper' available: expected at least 1 bean which qualifies as autowire candidate. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)}
    

    这是因为service层对象使用@Autowired注解引用dao层对象时,无法在spring-service.xml找到dao层对象实例,只需要将spring-dao.xml和spring-service关联起来即可,在spring-service.xml中使用引入spring-dao.xml的所有配置信息。

4、Controller层整合

步骤

  1. 创建spring-mvc.xml配置文件

    
    
    
        
        
            
                
                    
                
                
    
    
    
    
    
    
    
            
        
        
        
        
        
        
        
            
            
        
            
        
            
        
    
    
  1. 将所有的spring配置文件整合到applicaitonContex.xml中

    
    
        
        
        
    
    
  1. 在web.xml中配置前端控制器DispatcherServlet

    
    
        
        
            contextConfigLocation
            classpath:applicationContext.xml
        
        
            org.springframework.web.context.ContextLoaderListener
        
        
        
            springmvc
            org.springframework.web.servlet.DispatcherServlet
            
                contextConfigLocation
                classpath:spring-mvc.xml
            
            1
        
        
            springmvc
            /
        
        
        
            encodingFilter
            org.springframework.web.filter.CharacterEncodingFilter
            
                encoding
                utf-8
            
        
        
            encodingFilter
            /*
        
        
        
            14
        
    
    
  2. 编写相关Controller实现类

    package com.stx.controller;
    
    import com.stx.service.UserService;
    import org.springframework.beans.factory.annotation.Autowired;
    import org.springframework.web.bind.annotation.RequestMapping;
    import org.springframework.web.bind.annotation.RestController;
    
    @RestController
    public class Test01 {
        @Autowired
        UserService userService;
        @RequestMapping("/hi")
        String h1() {
            return "hello 双体系";
        }
        @RequestMapping("/getusers")
        String getUsers() {
            return userService.getAll().toString();
        }
    }
    
  1. 配置tomcat
  1. 运行测试

注意

  1. 必须在spring-mvc.xml配置文件中加入以下内容,因为spring默认的消息转换器的默认编码标准是ISO-8859-1,该编码是西欧编码,无法对中文编码

        
            
                
                    
                
            
        
    
  1. 关于在IDEA中jar包无法导入到web项目中问题解决

    自行百度

你可能感兴趣的:(SSM整合)