java学习笔记(四):整合Mybatis框架其中的常用xml标签

java学习笔记(四):整合Mybatis框架其中的常用xml标签

最近难得有很多空闲时间,想接着来完成之前做了一半的毕业设计。今天重新拾起的时候发现很多标签都忘了意思,标签的用法都已经混淆。只好在此做个记录,再次加深自己的印象,避免再次出现这次情况。

Spring整合Mybatis框架的用到的标签

1.扫描Dao层的接口注入到Spring容器中
<bean id="mapperScannerConfigurer" 
 class="org.mybatis.spring.mapper.MapperScannerConfigurer">
        <property name="basePackage" value="xxx"></property>
</bean>

MapperScannerConfigurer的作用就是扫描你指定的xxx路径下的所有Mapper接口,产生对应的代理类并且将他们加入到Spring容器中。值得注意的是MapperScannerConfigurer顺带帮忙完成了接口对应crud注解扫描的操作,所以我们也无需去mybatis主配置文件中专门配置注解扫描标签。


多说一句,在Spring中有这个标签

<context:component-scan base-package="xxx">
</context:component-scan>

它是扫描@Component,@Controller,@Service,@Repository,@Configuration注解的类并将它加入到Spring容器。以下是官方文档对应的解释:
在这里插入图片描述

重要的是,它只能扫描类,所以如果我们想用这个标签来替代上面的标签,我们只能手把手的生成对应的Dao实现类加上@Repository注解才行。而MapperScannerConfigurer就省事很多,它会帮我们对应生成代理实现类。

2.Spring配置Mybatis的主配置文件位置
<!--    配置sqlsession工厂-->
    <bean id="sqlSessionFactoryBean" class="org.mybatis.spring.SqlSessionFactoryBean">
        <property name="dataSource" ref="druidDataSource"></property>
<!--        mybatis配置文件位置-->
        <property name="configLocation" value="classpath:xxx.xml"></property>
    </bean>

我们可以在SqlSessionFactoryBean中配置对应的属性configLocation,来指明Mybatis的主配置文件的位置。

Mybatis框架的主配置文件用到的标签

1.配置映射配置文件,实现注解方式和xml方式混用
<mappers>
      <package name="xxx"/>
</mappers>

mappers下的package标签就是指明xxx路径下的所有与接口同名的xml映射配置文件。这里一定要注意xml映射配置文件要和接口同名


而其实Mybatis是可以使用注解和xml配置文件混用的,如前面MapperScannerConfigurer说的,前面我们其实已经把注解扫描顺带配置好了。所以此时我们已经可以实现两者的混用了。

2.配置实体类别名
<typeAliases>
<!--        该包下的所有类都有开头小写的别名-->
       <package name="xxx"/>
</typeAliases>

typeAliases下的package标签用于指明xxx路径下所有类都有对应开头小写的类名的别名。不然我们每次指定对应实体类类型的时候都得写他们的全限定类名,实在是麻烦



小结

把以上的配好基本上就已经把mybatis整合进去了,剩下的配置基本都是关于自己业务所需要的。总体的步骤也不是很多,注意的是不要把一些标签的作用弄混淆,有些标签看起来很相似但是实际作用不同。在平时自己学习的时候要尽量对每一步都弄懂,能够很有效的提升自己。努力努力再努力!

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值