int countByExample(BUserExample example); //根据条件查询数量

    /**
* 示例
* public int countByExample() {
* BUserExample userExample = new BUserExample();
* BUserExample.Criteria criteria = userExample.createCriteria();
* criteria.andUsernameEqualTo("fan");
* int count = userMapper.countByExample(userExample);
* return count;
* }
* 相当于:select count(*) from user where username = 'fan'
*/ int deleteByExample(BUserExample example); //根据条件删除数据(一条或多条) /**
* 示例
* public int deleteByExample() {
* BUserExample userExample = new BUserExample();
* BUserExample.Criteria criteria = userExample.createCriteria();
* criteria.andUsernameEqualTo("fan");
* int count = userMapper.deleteByExample(userExample);
* return count;
* }
* 相当于:delete from user where username = 'fan'
*/ int deleteByPrimaryKey(Integer id); //根据主键删除数据 int insert(BUser record); //插入数据(插入一条数据) int insertSelective(BUser record); //插入数据(插入一条数据,只插入不为null的字段,不会影响有默认值的字段) List<BUser> selectByExample(BUserExample example); //根据条件查询数据 /**
* 示例:
* public List<BUser> getList() {
* BUserExample userExample = new BUserExample();
* BUserExample.Criteria criteria = userExample.createCriteria();
* criteria.andUsernameEqualTo("fan");
* userExample.setOrderByClause("username desc");
* List<BUser> users = userMapper.selectByExample(userExample);
* return users;
* }
* 相当于:select * from user where username = 'fan' order by username desc
*/ BUser selectByPrimaryKey(Integer id); //根据主键查询 int updateByExampleSelective(@Param("record") BUser record, @Param("example") BUserExample example); //按条件更新值不为null的字段 /**
* 示例:
* public int updateByParam(String username) {
* BUserExample userExample = new BUserExample();
* BUserExample.Criteria criteria = userExample.createCriteria();
* criteria.andUsernameEqualTo(username);
* BUser user = new BUser();
* user.setNickname("jdk");
* int update = userMapper.updateByExampleSelective(user, userExample);
* return update;
* }
* 相当于:update user set nickname = 'jdk' where username = #{username}
*/ int updateByExample(@Param("record") BUser record, @Param("example") BUserExample example); //按条件更新 int updateByPrimaryKeySelective(BUser record); //根据主键与条件更新
/**
* 示例:
* public int updateByIdAndParam(String username) {
* BUser user = new BUser();
* user.setId(101);
* user.setUsername(username);
* int update = userMapper.updateByPrimaryKeySelective(user);
* return update;
* }
* 相当于:update user set username = #{username} where id = 101
*/ int updateByPrimaryKey(BUser record); //根据主键更新

原文链接:https://blog.csdn.net/feidao0/article/details/80731824

MyBatis逆向工程生成dao层增删改查方法解释使用(转载)的更多相关文章

  1. 小D课堂-SpringBoot 2.x微信支付在线教育网站项目实战_3-2.使用Mybatis注解开发视频列表增删改查

    笔记 2.使用Mybatis注解开发视频列表增删改查     讲解:使用Mybatis3.x注解方式 增删改查实操, 控制台打印sql语句              1.控制台打印sql语句      ...

  2. 通用mapper的增删改查方法 留存 备忘

    Mybatis通用Mapper介绍与使用   前言 使用Mybatis的开发者,大多数都会遇到一个问题,就是要写大量的SQL在xml文件中,除了特殊的业务逻辑SQL之外,还有大量结构类似的增删改查SQ ...

  3. Spring Data CrudRepository增删改查方法(八)

    CrudRepository   的主要方法 long count(); boolean exists(Integer arg0); <S extends StudentPO> S sav ...

  4. Django REST framework 五种增删改查方法

    Django-DRF-视图的演变   版本一(基于类视图APIView类) views.py: APIView是继承的Django View视图的. 1 from .serializers impor ...

  5. Mybatis之基于XML的增删改查

    这里先吐槽下,写的半天的东西,IE浏览器弹出调试窗口导致写的东西全部没保存,搞得我还要重新用谷歌写,思路全没了,fuck. 前面学习了下spring的DAO层,说起DAO层,那ORM肯定是少不了的,O ...

  6. SSM框架之MyBatis框架实现简单的增删改查

    MyBatis框架介绍 MyBatis是一个优秀的数据持久层框架,在实体类和SQL语句之间建立映射关系是一种半自动化的ORM实现,其封装性要低于Hibernate,性能优越,并且小巧,简单易学,应用也 ...

  7. SSMybatis整合 --详细解读Mybatis对oracle数据库进行增删改查(一)

    Mybatis是现在主流的持久化层框架,与Hibernate不同的是,它鼓励程序员使用原声SQL语句对数据库进行操作.因此提供了非常灵活的功能.特别是当数据库同时访问数过多,需要进行优化时,使用sql ...

  8. mybatis:开发环境搭建--增删改查--多表联合查询(多对一)

    什么是mybatisMyBatis是支持普通SQL查询,存储过程和高级映射的优秀持久层框架.MyBatis消除了几乎所有的JDBC代码和参数的手工设置以及结果集的检索.MyBatis使用简单的XML或 ...

  9. 【Mybatis】mybatis开启Log4j日志、增删改查操作

    Mybatis日志(最常用的Log4j) 官方网站http://www.mybatis.org/mybatis-3/zh/logging.html 1.在src目录下创建一个log4j.propert ...

随机推荐

  1. “500 oops socket” Debian 9 running via Linux Deploy上成功部署vsftpd的解决方案(201901原创)【成功完美简单极致】

    "500 oops socket" Debian 9 running via Linux Deploy上成功部署vsftpd的解决方案(201901原创)[成功完美简单极致] #自 ...

  2. 【Flutter】容器类组件之变换

    前言 Transform可以在其子组件绘制时对其应用一些矩阵变换来实现一些特效. 接口描述 const Transform({ Key key, @required this.transform, t ...

  3. 与HBase对比,Cassandra的优势特性是什么?

    在1月9日Cassandra中文社区开年活动开始之前的闲聊时间,活动的四位嘉宾就"HBase和Cassandra的对比"这一话题展开了讨论.   总的来说,HBase和Cassan ...

  4. 【JAVA并发第三篇】线程间通信

    线程间的通信 JVM在运行时会将自己管理的内存区域,划分为不同的数据区,称为运行时数据区.每个线程都有自己私有的内存空间,如下图示: Java线程按照自己虚拟机栈中的方法代码一步一步的执行下去,在这一 ...

  5. MyBatis初级实战之五:一对一关联查询

    欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...

  6. DOCKER 安装步骤-最靠谱的笔记

    一.系统环境规划 服务器名 项目名称 docker 操作系统 CentOS Linux release 7.1.1503 (Core) Docker 版本 17.03.2-ce   二.Docker ...

  7. 白日梦的Elasticsearch实战笔记,32个查询案例、15个聚合案例、7个查询优化技巧。

    目录 一.导读 三._search api 搜索api 3.1.什么是query string search? 3.2.什么是query dsl? 3.3.干货!32个查询案例! 四.聚合分析 4.1 ...

  8. Springboot中mybatis控制台打印sql语句

    Springboot中mybatis控制台打印sql语句 https://www.jianshu.com/p/3cfe5f6e9174 https://www.jianshu.com/go-wild? ...

  9. 目前 c++ primer学习总结笔记

    C++的开始 1 main的返回值:0为成功状态,非0为系统定义的错误类型 2 输入输出:计算结果为左侧运算对象,IO操作读写缓冲与程序中的动作无关 3 输入流istream对象:cin(标准输入): ...

  10. Vue中双向数据绑定是如何实现的?

    vue 双向数据绑定是通过 数据劫持 结合 发布订阅模式的方式来实现的, 也就是说数据和视图同步,数据发生变化,视图跟着变化,视图变化,数据也随之发生改变:核心:关于VUE双向数据绑定,其核心是 Ob ...