zoukankan      html  css  js  c++  java
  • MyBatis通过Mapper动态代理来实现curd操作

    MyBatis官方推荐使用mapper代理方法开发mapper接口,程序员不需要编写mapper实现类,使用mapper代理方法时,输入参数可以使用pojo包装对象或者map对象,保证dao的通用性

    代理对象的方法体同上一篇博客里的Dao接口实现类的方法。

     上一篇博客地址

    首先,我们定义一个UserMapper接口,接口同上一篇博客里Dao的接口。

    public interface UserMapper {
    
        public User findUserById(Integer id);
        
        //动态代理形式中,如果返回结果是List, mybatis会在生成实现类的使用时自动调用selectList方法
        public  List<User>  findUserByUsername(String username);public List<User> findUserByUsernameAndId(User user);
    }

    然后编写对应的UserMapper.xml配置文件

    内容同上一篇的User.xml

    但是需要修改nameSpace为对应的UserMapper.java接口的路径

    然后我们需要在最核心的配置文件,SqlMapConfig.xml文件中,把UserMapper.xml引入进去。

    在企业开发中。会存在许多个类似UserMapper.xml之类的。所以采用包扫描的方式更能方便开发。

    其他的没什么变化。

    接口里的方法不需要我们实现,MyBatis帮我们实现好了。

    测试代码:

    和用原始Dao实现的最直接区别就是,方法体不需要自己手写。

    以下是规范:

  • 相关阅读:
    C#中的WebBrowser控件的使用
    触发器
    SQL Server存储机制
    mongodb客户端操作常用命令
    动态居中方法
    关于node不需要重启即可刷新页面
    测试一个段落里面是否含有数字
    表单验证
    关于echarts和jquery的结合使用问题
    js函数获取ev对象
  • 原文地址:https://www.cnblogs.com/tonbby/p/9159847.html
Copyright © 2011-2022 走看看