spring注解配置、spring和mybatis的整合

本文详细介绍了如何在Spring中使用注解配置,包括扫描组件、数据源配置、事务管理器设置以及注解驱动的事务管理。同时,文章还展示了Spring与Mybatis的整合过程,如SqlSessionFactory的配置、Mapper接口的获取,并提供了两种不同的Mapper接口实例化方式。通过这些配置,可以实现数据访问层的便捷管理。
摘要由CSDN通过智能技术生成

spring注解配置

base-package属性指定要扫描的包,改包及其子包中的带有如下注解的Bean都会自动注册到IOC容器中

  • @Repositoty 数据访问
  • @Component 通用组件
  • @Service 服务类
  • @Controller 控制器

属性注解 @Resource

事务注解 @Transcation

<!-- 启用Spring 注解 -->
<context:annotation-config/>
<!-- 启用组件扫描 -->
<context:component-scan base-package="com.yq.sp02"/>
      
    <!-- 定义数据源到IOC中 -->
    <bean class="org.apache.commons.dbcp2.BasicDataSource" name="ds">
    	<property name="driverClassName" value="${db.dbcp.driverClassName}"/>
    	<property name="url" value="${db.dbcp.url}"/>
    	<property name="username" value="${db.dbcp.username}"/>
    	<property name="password" value="${db.dbcp.password}"/>
    	
    	<property name="initialSize" value="${db.dbcp.initialSize}"/>
    	<property name="maxTotal" value="${db.dbcp.maxTotal}"/>
    	<property name="maxIdle" value="${db.dbcp.maxIdle}"/>
    	<property name="minIdle" value="${db.dbcp.minIdle}"/>
    	<property name="maxWaitMillis" value="${db.dbcp.maxWaitMillis}"/>
    </bean>
  <!-- 配置事务管理器 -->
    <bean class="org.springframework.jdbc.datasource.DataSourceTransactionManager" name="transactionManager">
    	<property name="dataSource" ref="ds"/>
    </bean>
    
    <!-- 启用注解事务 -->
    <tx:annotation-driven transaction-manager="transactionManager"/>

Spring和Mybatis的整合

  1. 配置操作Mybatis的SQLSessionFactory的工厂类

  2. 配置Mybatis生成Mapper接口实例类

<!-- 配置操作MyBatis的 SqlSession的工厂类 -->
    <bean class="org.mybatis.spring.SqlSessionFactoryBean" id="sessionFactory">
    	<!-- 依赖的数据源 -->
    	<property name="dataSource" ref="ds"/>
    	<!-- 配置实体类别名, 使用实体类包扫描方式建立,建立的别名就是类名 -->
    	<property name="typeAliasesPackage" value="com.yq.tx01.entity"/>
    	<!-- 加载所有的 *Mapper.xml -->
    	<property name="mapperLocations" value="classpath*:com/yq/tx01/mapper/*Mapper.xml"/>
    </bean>
    
 <!--方式一Mapper获取接口类-->
    <!-- 配置Mybatis的 Mapper接口实例类 -->
     <!--  <bean id="empMapper" class="org.mybatis.spring.mapper.MapperFactoryBean">
    	指定接口位置
    	<property name="mapperInterface" value="com.yq.tx01.mapper.EmpMapper"/>
    	指定sessionFactory,配合的xml
    	<property name="sqlSessionFactory" ref="sessionFactory"/>
    </bean>   -->

<!--常用:方式二Mapper获取接口类-->
    <!-- 配置扫描生成Mapper接口对象的bean -->
    <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
    <!-- 指定扫描Mapper接口的包 -->
    <property name="basePackage" value="com.yq.tx01.mapper"/>
    <!-- 指定sessionFactory,配合的xml -->
    <property name="sqlSessionFactory" ref="sessionFactory"></property>
    </bean>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

李鑫海。

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值