MyBatis逆向工程生成dao层增删改查方法解释使用(转载)
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层增删改查方法解释使用(转载)的更多相关文章
- 小D课堂-SpringBoot 2.x微信支付在线教育网站项目实战_3-2.使用Mybatis注解开发视频列表增删改查
笔记 2.使用Mybatis注解开发视频列表增删改查 讲解:使用Mybatis3.x注解方式 增删改查实操, 控制台打印sql语句 1.控制台打印sql语句 ...
- 通用mapper的增删改查方法 留存 备忘
Mybatis通用Mapper介绍与使用 前言 使用Mybatis的开发者,大多数都会遇到一个问题,就是要写大量的SQL在xml文件中,除了特殊的业务逻辑SQL之外,还有大量结构类似的增删改查SQ ...
- Spring Data CrudRepository增删改查方法(八)
CrudRepository 的主要方法 long count(); boolean exists(Integer arg0); <S extends StudentPO> S sav ...
- Django REST framework 五种增删改查方法
Django-DRF-视图的演变 版本一(基于类视图APIView类) views.py: APIView是继承的Django View视图的. 1 from .serializers impor ...
- Mybatis之基于XML的增删改查
这里先吐槽下,写的半天的东西,IE浏览器弹出调试窗口导致写的东西全部没保存,搞得我还要重新用谷歌写,思路全没了,fuck. 前面学习了下spring的DAO层,说起DAO层,那ORM肯定是少不了的,O ...
- SSM框架之MyBatis框架实现简单的增删改查
MyBatis框架介绍 MyBatis是一个优秀的数据持久层框架,在实体类和SQL语句之间建立映射关系是一种半自动化的ORM实现,其封装性要低于Hibernate,性能优越,并且小巧,简单易学,应用也 ...
- SSMybatis整合 --详细解读Mybatis对oracle数据库进行增删改查(一)
Mybatis是现在主流的持久化层框架,与Hibernate不同的是,它鼓励程序员使用原声SQL语句对数据库进行操作.因此提供了非常灵活的功能.特别是当数据库同时访问数过多,需要进行优化时,使用sql ...
- mybatis:开发环境搭建--增删改查--多表联合查询(多对一)
什么是mybatisMyBatis是支持普通SQL查询,存储过程和高级映射的优秀持久层框架.MyBatis消除了几乎所有的JDBC代码和参数的手工设置以及结果集的检索.MyBatis使用简单的XML或 ...
- 【Mybatis】mybatis开启Log4j日志、增删改查操作
Mybatis日志(最常用的Log4j) 官方网站http://www.mybatis.org/mybatis-3/zh/logging.html 1.在src目录下创建一个log4j.propert ...
随机推荐
- oracle 常用指令(持续更新中....)
1. 查看所有表空间大小 select tablespace_name,sum(bytes)/1024/1024 from dba_data_files group by tablespace_nam ...
- 经典项目管理 OR 敏捷项目管理,我该怎么选?
CODING 项目协同近期为支持传统项目管理推出了「经典项目管理」.至此,CODING 已全面支持敏捷项目管理以及传统项目管理.那么问题来了,「经典项目管理」和「敏捷项目管理」,我该怎么选呢?本文将从 ...
- python -c 妙用
前言 python -c 命令还是有用的哈 正文 python的 -c 可以在命令行中调用 python 代码, 实际上 -c 就是 command 的意思 官方文档中解释为(节选自: python ...
- Nginx集成Naxsi防火墙
前言 因工作原因,接触到了WAF,今天部署了一下Naxsi,记录一下 GitHub 正文 环境 Centos 7 下载 更新yum yum update -y 安装必要依赖 yum install g ...
- 对微信小程序的生命周期进行扩展 – Typescript 篇
最近利用业余时间倒腾了一个微信小程序,主要目的是横向比较一些业界小程序平台的架构和做法.因为有在其他平台长期的开发经验,对于小程序的一些机制做了一些辩证的思考.例如,小程序的页面,其实不是一个页面,而 ...
- linux之平均负载(学习笔记非原创)
什么是平均负载 [root@111 ~]# uptime 11:03:33 up 149 days, 17:34, 1 user, load average: 0.08, 0.05, 0.01 最后三 ...
- 【Python】国内pip节点
pip在国内使用国内节点: http://pypi.douban.com/simple 现在已经无法使用了,新版的python3需要使用https://pypi.douban.com/simple/ ...
- C语言字符串结束符“\0”
介绍 '\0'就是8位的00000000,因为字符类型中并没有对应的这个字符,所以这么写.'\0'就是 字符串结束标志. '\0'是转译字符,意思是告诉编译器,这不是字符0,而是空字符.空字符\0对应 ...
- 对于Update Function Modules的一点说明
To be able to call a function module in an update work process, you must flag it in the Function Bui ...
- LOOP语句的AT语句块
在loop一个内表的时候,如果想在loop循环中使用AT NEW ,AT END OF 等语句,一定需要注意的几点: 1.内表要排序 2.AT END OF 语句中影响的是指定字段前面所有的字段 3. ...