1.web.xml
2.applicationcontext.xml
<!--1、 加载数据库配置文件 -->
<context:property-placeholder location="classpath:jdbc.properties" />
<!--2、 数据源 -->
<bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource">
<property name="driverClass" value="${jdbc.driverClass}"></property>
<property name="jdbcUrl" value="${jdbc.url}"></property>
<property name="user" value="${jdbc.username}"></property>
<property name="password" value="${jdbc.password}"></property>
</bean>
<!-- 3、sqlSessionFactory ,加载mybatis配置文件
注入数据源,
-->
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<property name="dataSource" ref="dataSource"></property>
<property name="configLocation" value="classpath:SqlMapConfig.xml"></property>
</bean>
<!-- 4.mapper -->
<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
<property name="sqlSessionFactoryBeanName" value="sqlSessionFactory"></property>
<property name="basePackage" value="com.lp.mapper"></property>
</bean>
<!-- 6、平台事务管理器 -->
<bean id="txManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<property name="dataSource" ref="dataSource"></property>
</bean>
<!-- 7.通知 -->
<tx:advice id="txAdvice" transaction-manager="txManager">
<tx:attributes>
<tx:method name="add*" isolation="DEFAULT" propagation="REQUIRED"/>
<tx:method name="update*"/>
<tx:method name="delete*"/>
<tx:method name="find*" read-only="true"/>
<tx:method name="*"/>
</tx:attributes>
</tx:advice>
<!-- 8.aop管理事务 -->
<aop:config>
<aop:pointcut expression="execution(* com.lp.service..*.*(..))" id="myPointcut"/>
<aop:advisor advice-ref="txAdvice" pointcut-ref="myPointcut"/>
</aop:config>
<!-- 配置springmvc -->
<context:component-scan base-package="com.lp"></context:component-scan>
<mvc:annotation-driven ></mvc:annotation-driven>
<!-- 配置视图解析器 -->
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/"></property>
<property name="suffix" value=".jsp"></property>
</bean>
<!-- 文件視圖解析器 -->
<bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
<!-- 设置默认编码 -->
<property name="defaultEncoding" value="utf-8"></property>
<!-- 上传图片最大大小5M-->
<property name="maxUploadSize" value="10242440"></property>
</bean>
3.SqlMapConfig.xml
<configuration>
<settings>
<!-- 开启延迟加载的功能 -->
<!-- 延迟加载是否启用,默认值为false -->
<setting name="lazyLoadingEnabled" value="true"/>
<!-- 积极的延迟加载,默认值为true,设置为false为按需加载 -->
<setting name="aggressiveLazyLoading" value="false"/>
<!-- 开启二级缓存:总开关 -->
<setting name="cacheEnabled" value="true"/>
</settings>
<!-- 定义别名 -->
<typeAliases>
<package name="com.lp.domain" />
</typeAliases>
<mappers>
<!-- 加载指定包下所有的映射文件,推荐使用 -->
<package name="com.lp.mapper"/>
</mappers>
2.applicationcontext.xml
<!--1、 加载数据库配置文件 -->
<context:property-placeholder location="classpath:jdbc.properties" />
<!--2、 数据源 -->
<bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource">
<property name="driverClass" value="${jdbc.driverClass}"></property>
<property name="jdbcUrl" value="${jdbc.url}"></property>
<property name="user" value="${jdbc.username}"></property>
<property name="password" value="${jdbc.password}"></property>
</bean>
<!-- 3、sqlSessionFactory ,加载mybatis配置文件
注入数据源,
-->
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<property name="dataSource" ref="dataSource"></property>
<property name="configLocation" value="classpath:SqlMapConfig.xml"></property>
</bean>
<!-- 4.mapper -->
<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
<property name="sqlSessionFactoryBeanName" value="sqlSessionFactory"></property>
<property name="basePackage" value="com.lp.mapper"></property>
</bean>
<!-- 6、平台事务管理器 -->
<bean id="txManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<property name="dataSource" ref="dataSource"></property>
</bean>
<!-- 7.通知 -->
<tx:advice id="txAdvice" transaction-manager="txManager">
<tx:attributes>
<tx:method name="add*" isolation="DEFAULT" propagation="REQUIRED"/>
<tx:method name="update*"/>
<tx:method name="delete*"/>
<tx:method name="find*" read-only="true"/>
<tx:method name="*"/>
</tx:attributes>
</tx:advice>
<!-- 8.aop管理事务 -->
<aop:config>
<aop:pointcut expression="execution(* com.lp.service..*.*(..))" id="myPointcut"/>
<aop:advisor advice-ref="txAdvice" pointcut-ref="myPointcut"/>
</aop:config>
<!-- 配置springmvc -->
<context:component-scan base-package="com.lp"></context:component-scan>
<mvc:annotation-driven ></mvc:annotation-driven>
<!-- 配置视图解析器 -->
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/"></property>
<property name="suffix" value=".jsp"></property>
</bean>
<!-- 文件視圖解析器 -->
<bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
<!-- 设置默认编码 -->
<property name="defaultEncoding" value="utf-8"></property>
<!-- 上传图片最大大小5M-->
<property name="maxUploadSize" value="10242440"></property>
</bean>
3.SqlMapConfig.xml
<configuration>
<settings>
<!-- 开启延迟加载的功能 -->
<!-- 延迟加载是否启用,默认值为false -->
<setting name="lazyLoadingEnabled" value="true"/>
<!-- 积极的延迟加载,默认值为true,设置为false为按需加载 -->
<setting name="aggressiveLazyLoading" value="false"/>
<!-- 开启二级缓存:总开关 -->
<setting name="cacheEnabled" value="true"/>
</settings>
<!-- 定义别名 -->
<typeAliases>
<package name="com.lp.domain" />
</typeAliases>
<mappers>
<!-- 加载指定包下所有的映射文件,推荐使用 -->
<package name="com.lp.mapper"/>
</mappers>