【前言】
之前在项目中一直是利用原始的dao方法开发的,最近小编在项目里用到了mybatis的mapper方式,下面总结一下:
在网上查到的开发顺序如下:
- 程序员需要编写mapper.xml映射文件
- 程序员只需要编写mapper接口(相当于dao接口),需要遵循一些开发规范
- mybatis可以自动生成mapper接口的实现类代理对象
按照这个顺序咱们说说在代码中是如何实现的。
一、程序员需要编写mapper.xml映射文件,并遵循开发规范
mapper.xml映射文件中,namespace要设定为我们接下来写的mapper接口的地址,即完全限定名。假设我们新建一个mapper包,在里面新建一个userMapper.xml,如下:
二、现在我们看一下开发规范有哪些:
- 在mapper.xml中,使namespace等于mapper接口的地址(完全限定名)
- mapper.java接口中的方法名和mapper.xml中statement的id一致
- mapper.java接口中方法的输入参数类型和mapper.xml中statement的parameterType指定的类型一致
- mapper.java接口中方法返回值类型和mapper.xml中statement的resultType指定的类型一致
mapper.java
//根据id查询用户信息
public User findUserById(int id) throws Exception;
mapper.xml
<select id="findUserById" parameterType="int" resultType="user">
SELECT * FROM USER WHERE id=#{value}
</select>
【总结】
暂时理解的mapper代理就是这样了,在接下里的实践中会不断了解,不断总结。