0
点赞
收藏
分享

微信扫一扫

mybatis与spring整合:Mapper编写的三种方法

何晓杰Dev 2022-02-11 阅读 57

Mapper编写的三种方法

1.Dao接口实现类继承SqlSessionDaoSupport
使用此种方法即原始dao开发方法,需要编写dao接口,dao接口实现类、映射文件。
(1)在sqlMapConfig.xml中配置映射文件的位置

<mappers>
  <mapper resource="mapper.xml文件的地址" />
<mapper resource="mapper.xml文件的地址" />
</mappers>

(2)定义dao接口
(3)dao接口实现类集成SqlSessionDaoSupport
dao接口实现类方法中可以this.getSqlSession()进行数据增删改查。
(4)spring 配置

<bean id=" "class="mapper接口的实现">
	<property name="sqlSessionFactory" ref="sqlSessionFactory"></property>
</bean>

2.使用org.mybatis.spring.mapper.MapperFactoryBean
此方法即mapper接口开发方法,只需定义mapper接口,不用编写mapper接口实现类。每个mapper接口都需要在spring配置文件中定义。
(1)在sqlMapConfig.xml中配置mapper.xml的位置
如果mapper.xml和mappre接口的名称相同且在同一个目录,这里可以不用配置

<mappers>
  <mapper resource="mapper.xml文件的地址" />
<mapper resource="mapper.xml文件的地址" />
</mappers>

(2)定义mapper接口
(3)Spring中定义

<bean id="" class="org.mybatis.spring.mapper.MapperFactoryBean">
	<property name="mapperInterface" value="mapper接口地址"/>
    <property name="sqlSessionFactory" ref="sqlSessionFactory"/>
</bean>

3.使用mapper扫描器
此方法即mapper接口开发方法,只需定义mapper接口,不用编写mapper接口实现类。只需要在spring配置文件中定义一个mapper扫描器,自动扫描包中的mapper接口生成代代理对象。
(1)mapper.xml文件编写
(2)定义mapper接口
注意mapper.xml的文件名和mapper的接口名称保持一致,且放在同一个目录
(3)配置mapper扫描器

<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
 <property name="basePackage" value="mapper接口包地址"></property>
 <property name="sqlSessionFactoryBeanName" value="sqlSessionFactory"/>
</bean>

basePackage:扫描包路径,中间可以用逗号或分号分隔定义多个包
(4)使用扫描器后从spring容器中获取mapper的实现对象
如果将mapper.xml和mapper接口的名称保持一致且放在一个目录 则不用在sqlMapConfig.xml中进行配置

举报

相关推荐

0 条评论