MyBatis学习-4
MyBatis 接口绑定
作用:实现创建一个接口后,把mapper.xml变成由mybatis生成接口的实现类,通过调用接口对象就可以获取 mapper.xml中编写的 sql.
后面 mybatis 和 spring 整合时使用的是这个方案.
实现步骤:
- 创建一个接口
- 接口包名和接口名与 mapper.xml 中<- mapper>namespace相同
- 接口中方法名和 mapper.xml 标签的 id 属性要报持相同
- 在 mybatis.xml 中使用<-package>进行扫描接口和 mapper.xml
代码实现步骤:
在 mybatis.xml 中<-mappers>下使用<-package>
创建一个接口,接口包名和接口名与 mapper.xml 中
namespace相同。接口中方法名和 mapper.xml 标签的 id 属性相同 创建xml文件,获取参数,编写sql namespace 必须和接口全限定路径(包名+类名)一致。id值必须和接口中方法名相同,使用接口绑定可以省略parameterType
通过session.getMapper(接口类对象);创建了一个实现接口类,并将它实例化,之后调用相应的方法
多参数实现方法–#{角标}
前面步骤一样,创建接口,创建方法,mybatis配置文件中使用<-package>进行扫描接口和xml文件
namespace 必须和接口全限定路径(包名+类名)一致。id值必须和接口中方法名相同
使用#{角标}获取参数,从零开始,0代表第一个参数,以此类推
- 通过session.getMapper(接口类对象);创建了一个实现接口类,并将它实例化,之后调用相应的方法
- 通过session.getMapper(接口类对象);创建了一个实现接口类,并将它实例化,之后调用相应的方法
多参数实现方法–注解
前面步骤一样,创建接口,创建方法,mybatis配置文件中使用<-package>进行扫描接口和xml文件
通过@Param注解获取参数, mybatis 把参数转换为 map 了,其中@Param(“key”)参数内容就是 map 的 value,使用动态sql时可以使用此方法
- 通过注解把参数转换成了map对象,获取参数就变成了通过#{键}来获取参数内容
- 通过session.getMapper(接口类对象);创建了一个实现接口类,并将它实例化,之后调用相应的方法
- 通过注解把参数转换成了map对象,获取参数就变成了通过#{键}来获取参数内容
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 Kylin!
评论