zoukankan      html  css  js  c++  java
  • Mybatis-Plus的BaseMapper的使用

      Mybatis-Plus 是一款 Mybatis 动态 SQL 自动注入 Mybatis 增删改查 CRUD 操作中间件, 减少你的开发周期优化动态维护 XML 实体字段。

      下面简单举例,调用BaseMapper中的一些基本方法。在使用的时候需要实现BaseMapper接口。

    一、deleteByMap

    接口注释如下:

    /**
         * <p>
         * 根据 columnMap 条件,删除记录
         * </p>
         *
         * @param columnMap 表字段 map 对象
         * @return int
         */
        Integer deleteByMap(@Param("cm") Map<String, Object> columnMap);

    调用例子:

    public int deleteById(Long id) {
         //删除条件
         Map<String, Object> columnMap = Maps.newHashMap();
       columnMap.put("id", id);
    
      return userMapper.deleteByMap(columnMap);
     }

    二、selectList

    接口注释如下:

    /**
         * <p>
         * 根据 entity 条件,查询全部记录
         * </p>
         *
         * @param wrapper 实体对象封装操作类(可以为 null)
         * @return List<T>
         */
        List<T> selectList(@Param("ew") Wrapper<T> wrapper);

    调用例子:

    public List<SysUser> searchUserList(User user) {
            EntityWrapper<User> ew = new EntityWrapper<>();
            ew.where(user.getId() != null, "id={0}", user.getId())
                    .like(!Strings.isNullOrEmpty(user.getUserName()), "user_name", "%" + user.getUserName() + "%")
                    .where(user.getStatus() != null, "status={0}", user.getStatus());
            return userMapper.selectList(ew);
     }

    上面的调用,当条件 user.getId()不等于空时,后面的条件才会出现在where中。

    三、updateForSet

    源码接口注释:

    /**
         * <p>
         * 根据 whereEntity 条件,更新记录
         * </p>
         *
         * @param setStr  set字符串
         * @param wrapper 实体对象封装操作类(可以为 null)
         * @return
         */
        Integer updateForSet(@Param("setStr") String setStr, @Param("ew") Wrapper<T> wrapper);

    使用举例:

    public int updateStatus(Long status,  Long userId) {
           String setSql = " status=" + status;
           EntityWrapper<User> ew = new EntityWrapper<>();
           ew.where("id={0}", userId);
    
           return userMapper.updateForSet(setSql, ew);
    }

    剩下的就自己举一反三吧!!!

  • 相关阅读:
    "bs".endsWith()的使用注意,别用错了
    国外测试专家BLOG地址
    手机测试地址
    校验日期格式{YYYYMM_DD的java代码
    汉字的字节计算情况不同
    AssertThat汇集
    maven常见仓库
    取消冒泡事件
    好看的绿色阴影按钮
    IComparer 继承接口排序 实例 可选择排序
  • 原文地址:https://www.cnblogs.com/JoeyWong/p/9489701.html
Copyright © 2011-2022 走看看