1、jar包
别忘了这个整合包mybatis-spring-1.3.1.jar
2、web.xml
spring核心配置文件
字符编码过滤器
springmvc的前端控制器
3、mybatis-sqlMapConfig.xml
延迟加载
<settings>
<setting name="lazyLoadingEnabled" value="true"/>
<setting name="aggressiveLazyLoading" value="false"/>
<!-- 二级缓存 -->
<!-- <setting name="cacheEnabled" value="true"/> -->
</settings>
别名
<typeAliases>
<package name="com.pojo"/>
</typeAliases>
4、springmvc.xml
注解扫描
<context:component-scan base-package="com.controller"></context:component-scan>
处理器映射器\处理器适配器(支持json)
<mvc:annotation-driven></mvc:annotation-driven>
试图解析器
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"
id="internalResourceViewResolver">
<!-- 前缀 -->
<property name="prefix" value="/WEB-INF/jsps/" />
<!-- 后缀 -->
<property name="suffix" value=".jsp" />
</bean>
5、spring-applicationContext.xml
注解
<context:component-scan base-package="com.service"></context:component-scan>
连接池
<!-- 配置连接池 -->
<bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource">
<property name="driverClass" value="${db.driver}"></property>
<property name="jdbcUrl" value="${db.url}"></property>
<property name="user" value="${db.username}"></property>
<property name="password" value="${db.password}"></property>
<property name="initialPoolSize" value="${db.initialPoolSize}"></property>
<property name="maxIdleTime" value="${db.maxIdleTime}"></property>
<property name="maxPoolSize" value="${db.maxPoolSize}"></property>
<property name="minPoolSize" value="${db.minPoolSize}"></property>
</bean>
sqlSessionFactory
<!-- 配置sqlSessionFactory -->
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<property name="dataSource" ref="dataSource" />
<property name="configLocation" value="classpath:sqlMapConfig.xml" />
</bean>
<!-- 批量创建dao对象 -->
<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
<property name="basePackage" value="com.dao"></property>
<!-- 可以不配,自动从上下文找sqlsessionfactory -->
<property name="sqlSessionFactoryBeanName" value="sqlSessionFactory"></property>
</bean>
配置aop、事务
<!-- 配置事务 -->
<!-- 事务管理器 -->
<bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<!-- 注入连接池 -->
<property name="dataSource" ref="dataSource"></property>
</bean>
<!-- 通知:事务, -->
<tx:advice transaction-manager="transactionManager" id="mytx">
<tx:attributes>
<tx:method name="*" isolation="DEFAULT" propagation="REQUIRED"/>
</tx:attributes>
</tx:advice>
<aop:config>
<aop:advisor advice-ref="mytx" pointcut="execution(* com.service.*.*(..))"/>
</aop:config>
<!-- 用注解 -->
<!-- <tx:annotation-driven/> -->