使用原生Spring API接口
注意xml文件一定要放到resources层(建个包)
aop约束
<aop:config>
<aop:pointcut id="point" expression="execution(* com.openlab.Service.*.*(..))"/>
<!-- 配置切入点-->
<aop:advisor advice-ref="txadvice" pointcut-ref="point"></aop:advisor>
</aop:config>
<tx:advice transaction-manager="transactionManager" id="txadvice">
<tx:attributes>
<tx:method name="*"/>
<tx:method name="find*" read-only="true"/>
</tx:attributes>
</tx:advice>
mybatis-bean xml文件
<context:component-scan base-package="com.openlab"></context:component-scan>
<context:property-placeholder location="classpath:druid.properties"></context:property-placeholder>
<bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource">
<property name="driverClassName" value="${driver}"/>
<property name="url" value="${url}"/>
<property name="username" value="${user}"/>
<property name="password" value="${password}"/>
</bean>
<bean id="transactionManager" class="org.springframework.jdbc.support.JdbcTransactionManager">
<property name="dataSource" ref="dataSource"/>
</bean>
<bean class="org.mybatis.spring.SqlSessionFactoryBean" id="sqlSessionFactory">
<property name="dataSource" ref="dataSource"></property>
<property name="mapperLocations" value="classpath:com/openlab/Dao/*.xml"></property>
<!-- 绑定mybatis配置文件-->
<property name="configLocation" value="classpath:mybatis-config.xml"></property>
</bean>
<!-- SqlSessionTemplate就是 我们使用的sqlsession-->
<bean class="org.mybatis.spring.SqlSessionTemplate" id="sessionTemplate">
<!-- 只能使用构造器注入sqlsessionFactory,因为它没有set方法-->
<constructor-arg name="sqlSessionFactory" ref="sqlSessionFactory"></constructor-arg>
</bean>
<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
<property name="basePackage" value="com.openlab.Dao"></property>
<property name="sqlSessionTemplateBeanName" value="sessionTemplate"></property>
</bean>
将实现层注入方法,
stuMappper注入属性,私有化属性
测试类