SSM框架中的一些配置信息

一、web.xml

1.配置SpringMVC编码过滤器

1
2
3
4
5
6
7
8
9
10
11
12
<filter>
<filter-name>CharacterEncodingFilter</filter-name>
<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>utf-8</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>CharacterEncodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>

2.启动springMVC

1
2
3
4
5
6
7
8
9
10
11
12
13
14
<servlet>
<servlet-name>DispatcherServlet</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<!-- 参数:读取spring-mvc.xml -->
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:spring-mvc.xml</param-value>
</init-param>
</servlet>
<!-- 通过DispatherServlet过滤前端请求,后缀为.action的调用Controller -->
<servlet-mapping>
<servlet-name>DispatcherServlet</servlet-name>
<url-pattern>*.action</url-pattern>
</servlet-mapping>

3.过滤资源

1
2
3
4
<servlet-mapping> 
<servlet-name>default</servlet-name>
<url-pattern>*.css</url-pattern>
</servlet-mapping>

4.启动spring

1
2
3
4
5
6
7
8
9
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
5.修改路径
<!-- classpath为类路径 -->
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:applicationContext.xml</param-value>
</context-param>
二、spring-mvc.xml

1.扫描Controller所在的包

1
<contenxt:component-scan base-package="xyz.xqsr.controller"/>

2.注解驱动

1
<mvc:annotation-driven></mvc:annotation-driven>

3.视图解析器:简化在Controller类编写的视图路径

1
2
3
4
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/WEB-INF/jsp/"/>
<property name="suffix" value=".jsp"/>
</bean>
三、jdbc.properties
1
2
3
4
jdbc.url=jdbc:mysql://localhost:3306/ticket?useUnicode=true&characterEncoding=UTF-8
jdbc.driverClass=com.mysql.jdbc.Driver
jdbc.user=root
jdbc.password=
四、applicationContext.xml

1.读取jdbc.properties

1
<context:property-placeholder location="classpath:jdbc.properties"/>

2.创建DataSource

1
2
3
4
5
6
7
8
9
10
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource">
<property name="url" value="${jdbc.url}"/>
<property name="driverClassName" value="${jdbc.driverClass}"/>
<property name="username" value="${jdbc.user}"/>
<property name="password" value="${jdbc.password}"/>
<property name="maxActive" value="10"/>
//最大链接数
<property name="maxIdle" value="5"/>
//最大空闲时间
</bean>

3.创建sqlSessionFactory对象

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<!-- 关联连接池 -->
<property name="dataSource" ref="dataSource"/>
<!-- 加载sql映射文件 -->
<property name="mapperLocations" value="classpath:config/*.xml"/>
<!-- 引入插件 -->
<property name="plugins">
<array>
<!-- mybatis分页插件 -->
<bean class="com.github.pagehelper.PageInterceptor">
<property name="properties">
<!--
helperDialect:连接数据库的类型
-->
<value>
helperDialect=mysql
</value>
</property>
</bean>
</array>
</property>
</bean>

4.mapper接口的扫描

注意:如果使用mapper接口包扫描,那么每个mapper接口在spring容器中的id名称为类名

1
2
3
4
<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
<!-- 配置Mapper接口所在包路径 -->
<property name="basePackage" value="xyz.xqsr.dao"/>
</bean>

5.开启Spring的IOC注解扫描

1
<context:component-scan base-package="xyz.xqsr"/>

6.事务管理器

1
2
3
4
5
<bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<property name="dataSource" ref="dataSource"/>
</bean>
<!-- 启用Spring事务注解 -->
<tx:annotation-driven transaction-manager="transactionManager"/>
五、mapper中的默认配置
1
2
3
4
5
6
7
8
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<!-- 该文件编写mybatis中的mapper接口里面的方法提供对应的sql语句 -->
<!-- namespeace为关联mapper的dao层 -->
<mapper namespace="xyz.xqsr.dao.UserDao">
</mapper>

Comments: