MyBatis4-mapper代理开发规范&实现

思路:我们只需要写 mapper 接口(相当于 dao 接口),而不需要实现接口.在编写 mapper.xml 映射文件.

开发规范

注:mybatis 可以自动生成 mapper 接口的实现类代理对象.

第一步

在 mapper.xml 中 namespace 的值要为mapper 接口的包名+接口名.

<mapper namespace="cc.ibadboy.mybatis.mapper.UserMapper">

</mapper>
第二步
public interface UserMapper {
    public String findById(int id);
}

mapper.java接口中的方法名要和 mapper.xml映射文件中的 id 值一样.

<select id="findById" resultType="String" parameterType="int">
</select>
第三步
public interface UserMapper {
    public String findById(int id);
}

mapper.java接口中的方法参数要和 mapper.xml映射文件中的 parameterType 值一样.

<select id="findById" resultType="String" parameterType="int">
</select>
第四步
public interface UserMapper {
    public String findById(int id);
}

mapper.java接口中的方法返回值类型要和 mapper.xml映射文件中的 resultType 值一样.

<select id="findById" resultType="String" parameterType="int">
</select>

实现

//这几个步骤是必须的,因为必须要得到SqlSessionFactory
InputStream inputStream = Resources.getResourceAsStream("mybatis-config.xml");
SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
SqlSession session = sqlSessionFactory.openSession();

//创建Mapper代理对象
UserMapper userMapper = session.getMapper(UserMapper.class);

//通过接口调用代理对象中的方法.
String userName = userMapper.findById(1);

System.out.println(userName);
session.close();

原理:其实代理对象内部调用 selectOne 或 selectList


补充知识

别名

<typeAliases>
    <package name=""></package>
    <typeAlias type="" alias=""></typeAlias>
</typeAliases>

package:写包路径,别名就为包下的类名.
typeAlias:包路径与类名,别名alias指定.
注:别名在使用的时候是不区分大小写的.

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1. 简介 1.1 什么是 MyBatis ? MyBatis 是支持定制化 SQL、存储过程以及高级映射的优秀的...
    笨鸟慢飞阅读 11,165评论 0 4
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,810评论 19 139
  • Java数据持久化之mybatis 一. mybatis简介 1.1 原始的JDBC操作: Java 通过 Jav...
    小Q逛逛阅读 10,485评论 0 16
  • 我们总是读诗 在阳光下的绿荫从里 在雨后嘀嗒的灰瓦下 在沙滩,摇椅,课堂上 我们总是读诗 诗是多情的浪子 也是无情...
    妖小妖先生阅读 1,486评论 2 0
  • 年轻的时候,大概都会遇到一个让自己一见倾心的男孩子,他的笑是暖的,声音是迷人的,他的一言一行都带着自己独特的魅力,...
    傲娇粉糖阅读 4,136评论 0 4

友情链接更多精彩内容