1. 框架整合
Dao层:
1、SqlMapConfig.xml,空文件即可。需要文件头。
2、applicationContext-dao.xml。
a) 数据库连接池
b) SqlSessionFactory对象,需要spring和mybatis整合包下的。
c) 配置mapper文件扫描器。
Service层:
1、applicationContext-service.xml包扫描器,扫描@service注解的类。
2、applicationContext-trans.xml配置事务。
表现层:Springmvc.xml
1、包扫描器,扫描@Controller注解的类。
2、配置注解驱动。
3、视图解析器
Web.xml
配置前端控制器。
配置WEB服务器的监听器
2.配置文件
2.1.在classpath下创建mybatis/sqlMapConfig.xml
<?xmlversion="1.0"encoding="UTF-8"?>
<!DOCTYPEconfiguration
PUBLIC"-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
</configuration>
2.2.applicationContext-dao.xml配置数据源、配置SqlSessionFactory、mapper扫描器。
<!-- 加载配置文件 --> <context:property-placeholderlocation="classpath:db.properties"/> <! destroy-method="close"> <propertyname="driverClassName"value="${jdbc.driver}"/> <propertyname="url"value="${jdbc.url}"/> <pro-- 数据库连接池 --> <beanid="dataSource"class="org.apache.commons.dbcp.BasicDataSource" pertyname="username"value="${jdbc.username}"/> <propertyname="password"value="${jdbc.password}"/> <propertyname="maxActive"value="10"/> <propertyname="maxIdle"value="5"/> </bean> <!-- mapper配置 --> <!-- 让spring管理sqlsessionfactory 使用mybatis和spring整合包中的 --> <beanid="sqlSessionFactory"class="org.mybatis.spring.SqlSessionFactoryBean"> <!-- 数据库连接池 --> <propertyname="dataSource"ref="dataSource"/> <!-- 加载mybatis的全局配置文件 --> <propertyname="configLocation"value="classpath:mybatis/SqlMapConfig.xml"/> </bean> <!-- 配置Mapper扫描器 --> <beanclass="org.mybatis.spring.mapper.MapperScannerConfigurer"> <propertyname="basePackage"value="cn.itcast.springmvc.mapper"/> </bean> </beans>
2.3.applicationContext-service.xml包扫描器,扫描@service注解的类
<context:component-scanbase-package="cn.itcast.springmvc.service"/>
2.4.applicationContext-trans.xml配置事务
<!-- 配置事务管理器 --> <bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager"> <property name="dataSource" ref="dataSource"/> </bean> <!-- 开启注解事务 -->在业务层上添加一个注解:@Transactional <tx:annotation-driven transaction-manager="transactionManager"/>
2.5.Springmvc.xml
<!-- 扫描带Controller注解的类 --> <context:component-scanbase-package="cn.itcast.springmvc.controller"/> <!-- 加载注解驱动 配置最新版的处理器映射器和处理器适配器--> <mvc:annotation-driven/> <!-- 视图解析器 --> <beanclass="org.springframework.web.servlet.view.InternalResourceViewResolver"> <propertyname="viewClass" value="org.springframework.web.servlet.view.JstlView"/> <!-- jsp前缀 --> <propertyname="prefix"value="/WEB-INF/jsp/"/> <!-- jsp后缀 --> <propertyname="suffix"value=".jsp"/> </bean> </beans>
2.6.web.xml
<!-- 加载spring容器 --> <context-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:spring/applicationContext-*.xml</param-value> </context-param> <listener> <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> </listener> <servlet> <servlet-name>springmvc</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:spring/springmvc.xml</param-value> </init-param> </servlet> <servlet-mapping> <servlet-name>springmvc</servlet-name> <url-pattern>*.action</url-pattern> </servlet-mapping>