mybatis中注册映射sql的Mapper的三种方式详解

mybatis注册映射sqlMapper的三种方式详解

1.<mappers>配置于全局配置文件的<configuration>节点下,代码如下:

<!-- 一定要将写好的sql映射文件注册到全局配置文件中 -->

<!-- mapper:注册一个sql映射

resource:引入类路径(编译后以classes为跟的路径)下的资源

如:com/test/xxMapper.xml

URL:引入网络或磁盘路径下的资源

如:file:///var//mappers//xxMapper.xml

class:引用(注册)接口;

1.有sql映射文件,映射文件名必须和接口同名,并且放在与接口同一目录下;

2.没有sql映射文件,所有的sql都是基于注解写在接口上。

-->

<mappers>

<!-- 方式一:通过映射文件注册 Mapper-->

<!-- 通过mapper元素的resource属性可以指定一个相对于类路径的Mapper.xml文件 -->    

<mapper resource="com/mapper/EmployeeMapper.xml" />    

<!-- 通过mapper元素的url属性可以指定一个通过URL请求道的Mapper.xml文件 -->    

<!-- <mapper url="file:///E:/UserMapper.xml"/> -->    

      

<!-- 方式二:通过mapper元素的class属性可以指定一个Mapper接口进行注册 --> 

<!-- 基于映射文件的接口。有sql映射文件,映射文件名必须和接口同名,并且放在与接口同一目录下 -->

<!-- <mapper class="com.mapper.EmployeeMapper"/> -->

<!-- 基于注解的接口。没有sql映射文件,所有的sql都是基于注解写在接口上。 -->

<!-- <mapper class="com.mapper.EmployeeMapperAnnotation"/> -->



<!-- 方式三:通过package元素将会把指定包下面的所有Mapper接口进行注册

        批量注册 :基于映射文件的接口与映射文件必须在同一个包下

        name:包的全类名 -->    

<!-- <package name="com.tiantian.mybatis.mapperinterface"/> --> 

<package name="com.mapper"/>

</mappers> 

 

2.基于注解的mapper接口。

基于注解的mapper接口不需要sql映射文件,所有的sql都是基于注解写在接口上,代码如下:

public interface EmployeeMapperAnnotation {
	@Select("select * from tbl_employee where id = #{id}")
	public Employee getEmpById(Integer id);
}



©️2020 CSDN 皮肤主题: 编程工作室 设计师: CSDN官方博客 返回首页
实付0元
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值