MyBatis——使用Mapper代理开发

风陵南·2022-09-23 00:44·76 次阅读

MyBatis——使用Mapper代理开发

使用 Mapper 代理开发方式完成入门案例

  1、定义与SQL映射文件同名的Mapper接口,并将 Mapper 接口和SQL映射文件放置在同一目录下#

      (企业开发中,通常是将配置文件统一放到 resource 文件夹中,其编译完成后配置信息文件与com同目录)

      创建同名的Mapper接口 interface

      

      

      

      

      

      注意目录的创建方式中分层符号不再是 点 .  而是 斜杠 /

      如果写成com.cqupt.mapper 其会创建一个名为此的文件夹 不会分层

               

      将UserMapper.xml 移动进去

      

      再次编译

      

      这样就完成了在idea中配置信息文件仍在resource文件夹中 但编译后在同一目录下

      

   

 

  2、设置SQL映射文件的namespace属性为Mapper接口全限定名#

      

  3、在 Mapper 接口中定义方法,方法名就是SQL映射文件中sql语句的id,并保持参数类型和返回值类型一致#

      

      在 UserMapper 接口中定义此方法

      

      SQL映射文件路径更改了,mybatis-config.xml 配置文件中有加载SQL映射文件的部分,也需要改成现在的路径

      

      找到SQL映射文件路径

      

      

      --------关于sql映射文件的加载路径 若满足:(使用Mapper代理开发方式)

          Mapper接口名称和SQL映射文件名称相同

          编译后SQL映射文件与Mapper接口同目录

        ----可以使用包扫描方式简化SQL映射文件的加载

<!-- Mapper代理开发方式-->
<package name="com.cqupt.mapper"/>

            

  4、编码#

    复制之前的MyBatisDemo

    

    (1)通过 SqlSession 的 getMapper 方法获取 Mapper 接口的代理对象#

// 3.1 获取UserMapper接口代理对象
UserMapper userMapper = sqlSession.getMapper(UserMapper.class);

      

    (2)调用对应方法完成SQL的执行#

// 3.2 调用对应的方法执行sql
List<User> users = userMapper.selectAll();

    

    运行结果与之前相同:

      

 

posted @   风陵南  阅读(76)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 记一次.NET内存居高不下排查解决与启示
目录
点击右上角即可分享
微信分享提示