SSM


一、SSM(spring 、spring mvc、mybatis)框架整合

1、pom.xml依赖如下

		
        
            org.springframework
            spring-webmvc
            4.3.18.RELEASE
        
        
        
            org.springframework
            spring-aop
            4.3.18.RELEASE
        
        
            org.springframework
            spring-aspects
            4.3.18.RELEASE
        
        
        
        
            org.springframework
            spring-jdbc
            4.3.18.RELEASE
        
        
        
            org.springframework
            spring-tx
            4.3.14.RELEASE
        
        
        
            javax.servlet
            jstl
            1.2
        
        
        
            javax.validation
            validation-api
            1.1.0.Final
        
        
        
            org.hibernate
            hibernate-validator
            5.4.1.Final
        

        
        
            org.mybatis
            mybatis
            3.4.6
        
        
        
            mysql
            mysql-connector-java
            5.1.38
        

        
        
            org.mybatis
            mybatis-spring
            1.3.2
        
        
        
            com.mchange
            c3p0
            0.9.5.2
        

        
        
            tk.mybatis
            mapper
            4.1.5
        

2、依照以下次序进行配置

2.1、首先配置spring的 MVC

2.1.1、web.xml中加入字符集过滤器

spring很贴心的给我们提供了一个字符集过滤器 -- CharacterEncodingFilter --,我们直接拿来耍即可。

	
    
        CharacterEncodingFilter
        org.springframework.web.filter.CharacterEncodingFilter
        
            encoding
            UTF-8
        
    
    
        CharacterEncodingFilter
        
        /*
    

2.1.2、web.xml中加入spring MVC的核心servlet配置

DispatcherServlet 是spring MVC核心的servlet,负责控制整个应用的请求分发至对应的控制器



    DispatcherServlet
    org.springframework.web.servlet.DispatcherServlet
    
    
        contextConfigLocation
        classpath:applicationContext.xml
    
    
    0


    DispatcherServlet
    /

2.1.3、编写 applicationContext.xml 配置文件

上面我们的DispatcherServlet进行初始化时,要指定它的配置文件

它的配置文件中可以配置 controller、视图解析器、映射处理器...等

范例如下:

<?xml version="1.0" encoding="UTF-8" ?>


    
    
    
    

    
    
        
        
    

2.2、spring 容器配置

2.2.1、web.xml指定监听器

classpath:spring-*.xml 会让spring去加载类路径下的 所有 spring开头的xml文件

	
    
        contextConfigLocation
        classpath:spring-*.xml
    
    
    
        org.springframework.web.context.ContextLoaderListener
    

2.2.2、dao层配置

我们的数据访问层要集成MyBatis框架

2.2.2.1、编写spring-dao.xml配置文件,范例如下

将数据源、dao层映射器示例...等交由spring容器来管理

指定mybatis-conf.xml配置文件等

<?xml version="1.0" encoding="UTF-8" ?>

    
    
    
        
        
        
        
    

    
    
        
        
    

    
    
        
        
        
        
        
    

    
    
        
        
        
    

2.2.2.2、编写mybatis-conf.xml ,范例如下
<?xml version="1.0" encoding="UTF-8" ?>



    
    
        
        
        
        
    
    
    
        
    

    
    


2.2.2.3、这里示例StudentMapper.xml 和 StudentMapper.java

类路径下 mapper/StudentMapper.xml

<?xml version="1.0" encoding="UTF-8" ?>



    
        insert into t_student(
            stu_name,
            stu_age,
            stu_score,
            stu_birthday,
            stu_sex,
            c_id
        ) values(
            #{stuName},
            #{stuAge},
            #{stuScore},
            #{stuBirthday},
            #{stuSex},
            #{cid}
        )
    

mapper包下 StudentMapper.java

import tk.mybatis.mapper.common.Mapper;

/**
 * 操作学生表的映射的接口
 */
public interface StudentMapper extends Mapper {
    /**
     * 添加学生
     * @param stu
     * @return
     */
    int add2(Student stu);
}

2.2.3、service层配置

servcie层主要配置事物

2.2.3.1、编写spring-sevice.xml配置文件,范例如下
<?xml version="1.0" encoding="UTF-8" ?>

    

    
    
        
        
    

    
    
        
        
    
    
    
        
        
            
            
            
            
            
            
        
    

    
        
        
        
        
    

3、简单集成完毕

最后做一个简单的表单提交,测试框架集成是否有问题

4、静态资源被拦截问题

applicationContext.xml中加入映射规则,下面是范例:


    
    
    
    

5、让spring MVC支持文件上传

pom.xml加入依赖如下



    commons-fileupload
    commons-fileupload
    1.3.1


    commons-io
    commons-io
    2.6


applicationContext.xml中加入文件上传解析器,范例如下:


    
        
        
        
        
        
        
    

6、集成security

额外课题

pom.xml加入security的相关依赖



    org.springframework.security
    spring-security-web
    4.2.3.RELEASE


    org.springframework.security
    spring-security-config
    4.2.3.RELEASE


类路径中编写 spring-security.xml 配置文件,范例如下:

<?xml version="1.0" encoding="UTF-8" ?>

    

    
    
    
    
    
    
    
    

    
    
        
        
        
        
        
        
        
        
        
        
        
            
            
        
        
        
    

    
    
        
        
            
            
        
    
    
    
    
    


相关