SSM整合

SSM整合

1.需要的依赖


    
    
        org.springframework
        spring-webmvc
        5.1.8.RELEASE
    
    
        org.springframework
        spring-context-support
        5.1.8.RELEASE
    
    
        org.springframework
        spring-tx
        5.1.8.RELEASE
    
    
        org.springframework
        spring-aspects
        5.1.8.RELEASE
    
    
        org.springframework
        spring-jdbc
        5.1.8.RELEASE
    
    
        org.springframework
        spring-test
        5.1.8.RELEASE
    
    
    
        com.fasterxml.jackson.core
        jackson-core
        2.9.8
    
    
        com.fasterxml.jackson.core
        jackson-annotations
        2.9.8
    
    
        com.fasterxml.jackson.core
        jackson-databind
        2.9.8
    
    
    
        mysql
        mysql-connector-java
        8.0.16
    
    
        com.alibaba
        druid
        1.1.13
    
    
    
        org.mybatis
        mybatis
        3.5.1
    
    
        org.mybatis
        mybatis-spring
        2.0.1
    
    
    
        jstl
        jstl
        1.2
    


    
        javax.servlet
        javax.servlet-api
        3.1.0
    
    
        org.slf4j
        slf4j-log4j12
        1.7.2
    
    
        log4j
        log4j
        1.2.12
    
    
        junit
        junit
        4.12
        test
    

2.SM整合

通过让spring接管mybatis的核心对象sqlSessionFactory对象,进行创建

  1. 配置spring工厂监听器

    在web.xml的web-app标签内配置如下

    
    
      org.springframework.web.context.ContextLoaderListener
    
    
    
      contextConfigLocation
      classpath:config/spring.xml
    
    
  2. 开启注解扫描

    在resources目录下创建config目录,再创建spring.xml配置文件。对应的web.xml中contextConfigLocation的值

    然后开启注解扫描,base-package指定要扫描的包。

    
    
    
  3. 创建数据源对象

    在resources目录下创建db.properties

    #db.properties
    jdbc.driverClass=com.mysql.cj.jdbc.Driver
    jdbc.jdbcUrl=jdbc:mysql://127.0.0.1:3306/jsp?useUnicode=true&characterEncoding=UTF-8&serverTimezone=GMT%2B8
    jdbc.user=root
    jdbc.password=123456
    
    
    
    
    
        
        
        
        
    
    
  4. 创建sqlSessionFactory对象

    这里直接取消了mybatis的配置文件,mybatis的一切配置,可以由SqlSessionFactoryBean和Configuration共同完成。

    
    
        
        
        
        
    
    
        
    
    
  5. 扫描dao/mapper对象

    需要为MapperScannerConfigurer注入sqlSessionFactory,需要指定扫描的包(mapper接口所在的包)

    
    
        
        
    
    
  6. 创建事务管理器DataSourceTransactionManager

    
    
        
    
    
  7. 开启注解式事务

    这样开启注解式事务,就省去了切面配置事务,直接使用@Transactional注解即可指定事务

    
    
    
  8. 配置aop

    
      
       
    
    
    
    
    
        
    
       
       
       
       
    
    

SS整合

因为spring和springmvc本来就是一加产品,所以可以达到无缝整合

  1. 配置springMVC核心servlet,DispatcherServlet

    在web.xml配置springmvc的核心servlet,并且指定contextConfigLocation,也就是指定配置文件的路径

    
    
      dispatcher
      org.springframework.web.servlet.DispatcherServlet
      
        contextConfigLocation
        classpath:config/springmvc.xml
      
      0
    
    
      dispatcher
      /
    
    
  2. 配置解决post请求乱码

    在web.xml配置过滤器解决post请求乱码,注意过滤路径是/*

    
    
      characterEncodingFilter
      org.springframework.web.filter.CharacterEncodingFilter
      
        encoding
        UTF-8
      
    
    
      characterEncodingFilter
      /*
    
    
  3. 配置注解扫描控制器

    在config目录下新建springmvc.xml,加入如下配置

    
    
    
  4. 配置处理器映射器和处理器适配器

    
    
    
  5. 放行静态资源文件

    
    
    
  6. 配置视图解析器

    
    
        
        
    
    
  7. 前后端分离模式下返回json

    只要加入Jackson相关依赖,并且在响应的方法或返回值上贴上@ResponseBody注解,spring就会使用Jackson自动将返回值解析为json格式返回给前端。

4.项目目录结构

SSM整合_第1张图片
  1. spring.xml

    
    
        
        
        
        
        
        
            
            
            
            
        
        
        
            
            
            
            
        
        
            
        
        
        
            
            
        
        
        
        
        
            
        
        
            
                
        
                
        
        
        
            
    
            
            
            
            
            
    
    
    
        
    
        
        
    
    
  2. springmvc.xml

    
    
        
        
        
        
        
        
        
        
            
            
        
    
    
  3. web.xml

    
    
      ssm整合
      
      
        org.springframework.web.context.ContextLoaderListener
      
      
      
        contextConfigLocation
        classpath:config/spring.xml
      
      
      
        dispatcher
        org.springframework.web.servlet.DispatcherServlet
        
          contextConfigLocation
          classpath:config/springmvc.xml
        
        0
      
      
        dispatcher
        /
      
      
      
        characterEncodingFilter
        org.springframework.web.filter.CharacterEncodingFilter
        
          encoding
          UTF-8
        
      
      
        characterEncodingFilter
        /*
      
    
    

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