MyBatis配置文件(九)--mappers映射器

映射器是MyBatis中最复杂、最核心的组件,本文先介绍映射器的引入方法,其他的在我日后会再做分析和总结。

之前的文章中有提到过,映射器是由一个接口和一个XML配置文件组成,XML文件中需要定义一个命名空间namespace,它的值就是接口对应的全路径。

如我定义一个根据ID查询产品的映射器,需要以下两步:

第一步:创建一个接口,定义查询方法

1 public interface ProductMapper {
2     //查询接口
3     public Product selectById(String id);
4 }

第二步:创建对应的XML,定义命名空间

 1 <?xml version="1.0" encoding="UTF-8"?>
 2 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 3 <mapper namespace="com.daily.dao.ProductMapper">
 4     <resultMap id="BaseResultMap" type="com.daily.pojo.Product">
 5         <id column="id" jdbcType="VARCHAR" property="id" />
 6         <result column="product_name" jdbcType="VARCHAR" property="productName" />
 7         <result column="product_price" jdbcType="VARCHAR" property="productPrice" />
 8         <result column="product_type" jdbcType="VARCHAR" property="productType" />
 9     </resultMap>
10
11     <!-- MyBatis自动映射功能:
12     1、首先通过接口中的方法名与sql查询语句进行关联
13     2、当查询到的字段与pojo中的字段完全对应的时候,就会将查询结果自动映射成一个pojo对象
14     3、如果数据库字段和类字段不一致,则需要进行转换,所以一般设计数据库的时候,字段采用驼峰式
15     -->
16     <select id="selectById" parameterType="String" resultType="product">
17         SELECT * FROM product p WHERE p.id = #{id,jdbcType=VARCHAR}
18     </select>
19 </mapper>

在上面的配置中,mapper中有一个namespace="com.daily.dao.ProductMapper"配置,这就是命名空间,其值是接口的全路径,当然这个全路径也可以在别名中定义,然后直接在这里引用。

定义好了一个映射器之后就可以在mybatis-config.xml中引入了,引入方法有以下几种:

1、用文件路径引入

<mappers>
        <mapper resource="com/daily/mapper/UserMapper.xml" />
        <mapper resource="com/daily/mapper/ProductMapper.xml" />
        <mapper resource="com/daily/mapper/BlogMapper.xml" />
</mappers>

2、用包名引入

这种引入方式相当于批量引入一个包下的所有映射器

<mappers>
        <package name="com.daily.mapper"/>
</mappers>

3、用类注册引入

<mappers>
        <mapper class="com.daily.mapper.UserMapper" />
        <mapper class="com.daily.mapper.ProductMapper" />
        <mapper class="com.daily.mapper.BlogMapper" />
</mappers>

4、使用URL方式引入

<mappers>
        <mapper url="xml文件访问URL" />
</mappers>

根据实际情况选择合适的引入方式即可。

以上就是映射器引入方式的介绍。

原文地址:https://www.cnblogs.com/hellowhy/p/9676534.html

时间: 2024-10-07 23:40:05

MyBatis配置文件(九)--mappers映射器的相关文章

[转] MyBatis的XxxMapper.xml 映射器的详解(六)

上一章简单介绍了MyBatis的核心配置文件 SqlMapConfig.xml(五),如果没有看过,请观看上一章. 一 . XxxMapper.xml 映射器的使用在MyBatis 中,将Dao层的接口与对应的Mapper.xml 配置文件进行组合使用,而不是以前的接口实现类处理. 这里着重讲解一下,这个配置文件的使用. 将XxxMapper.xml 放置在与接口XxxMapper.java 同级的目录下. 一.一 Schema约束<!DOCTYPE mapper PUBLIC "-//m

IDEA Mybatis 找不到映射器xml文件

用IDEA新建了一个测试MyBatis工程,工程目录如下 其中config是MyBatis的配置文件,内容如下 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd&quo

mybatis精讲(五)--映射器组件

目录 前言 标签 select insert|update|delete 参数 resultMap cache 自定义缓存 # 加入战队 微信公众号 前言 映射器之前我们已经提到了,是mybatis特有的组件: java+xml组合的方式.对于Java类和xml的编写也很简单.值得注意的是需要将Java编写的mapper注册到mybatis中来.之前的注册的方式通过xml.到后续通过spirng来管理通过@Mapper就很方便了. 标签 Java实现的接口Mapper很简单,就是已接口的形式暴露

Java Persistence with MyBatis 3(中文版) 第三章 使用XML配置SQL映射器

关系型数据库和SQL是经受时间考验和验证的数据存储机制.和其他的ORM 框架如Hibernate不同,MyBatis鼓励开发者可以直接使用数据库,而不是将其对开发者隐藏,因为这样可以充分发挥数据库服务器所提供的SQL语句的巨大威力.与此同时,MyBaits消除了书写大量冗余代码的痛苦,它使使用SQL更容易. 在代码里直接嵌套SQL语句是很差的编码实践,并且维护起来困难.MyBaits使用了映射器配置文件或注解来配置SQL语句.在本章中,我们会看到具体怎样使用映射器配置文件来配置映射SQL语句.

MyBatis学习总结(二)——MyBatis核心配置文件与输入输出映射

一.MyBatis配置文件概要 MyBatis核心配置文件在初始化时会被引用,在配置文件中定义了一些参数,当然可以完全不需要配置文件,全部通过编码实现,该配置文件主要是是起到解偶的作用.如第一讲中我们用到conf.xml文件: <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN&

MyBatis——配置文件

mybatis配置文件 转载:http://loveshisong.cn/mybatis/2015/01/20/MyBatis(%E4%BA%8C)%E9%85%8D%E7%BD%AE%E6%96%87%E4%BB%B6.html MyBatis 的配置文件即mybatis-config.xml中的configuration标签下有settings.properties等属性.本文对其中常用属性的配置做简单介绍 本文结构 properties 属性 typeAliases 类型别名 typeHa

Mybatis配置文件SqlMapConfig.xml中的标签

SqlMapConfig.xml配置文件中的属性 1 配置内容 properties(属性) settings(全局配置参数) typeAliases(类型别名) typeHandlers(类型处理器) objectFactory(对象工厂) plugins(插件) environments(环境集合属性对象) environment(环境子属性对象) transactionManager(事务管理) dataSource(数据源) mappers(映射器) 注: sqlMapConfg.xml

MyBatis学习 之 四、MyBatis配置文件

四.MyBatis主配置文件 在定义sqlSessionFactory时需要指定MyBatis主配置文件: Xml代码   <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"> <property name="configLocation" value="classpath:mybatis-config.xml&qu

MyBatis学习(四)、MyBatis配置文件

四.MyBatis主配置文件 在定义sqlSessionFactory时需要指定MyBatis主配置文件: Xml代码   <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"> <property name="configLocation" value="classpath:mybatis-config.xml&qu