一、更新操作探究(3.0.3版本)

demo

 /**
* 修改用户
* @throws SQLException
*/
@Test
public void update() throws SQLException { Employee employee = new Employee(); employee.setLastName("Marry");
employee.setAge(12);
employee.setEmail("marry@163.com");
employee.setGender(1); Integer result = employeeMapper.updateById(employee); if (result!=null||result>0) {
logger.info("++++++++++++++++修改成功+++++");
}
}

1、根据Id修改字段内容

  /**
* 修改用户
* @throws SQLException
*/
@Test
public void update() throws SQLException { Employee employee = new Employee(); employee.setId(1);
employee.setLastName("Marry");
employee.setAge(55);
employee.setEmail("marry@163.com");
employee.setGender(0); Integer result = employeeMapper.updateById(employee); if (result!=null||result>0) {
logger.info("++++++++++++++++修改成功+++++");
}
}

2、全表修改一个字段值

  /**
* 修改用户
* @throws SQLException
*/
@Test
public void update() throws SQLException { Employee employee = new Employee(); employee.setId(1);
employee.setLastName("Marry");
employee.setAge(55);
employee.setGender(0); //全表修改一个字段的值
Integer result = employeeMapper.update(employee,new UpdateWrapper().set("email","marry@163.com")); if (result!=null||result>0) {
logger.info("++++++++++++++++修改成功+++++");
}
}

3、判断重复的就修改

  /**
* 修改用户
* @throws SQLException
*/
@Test
public void update() throws SQLException { Employee employee = new Employee(); employee.setId(1);
employee.setLastName("Marry");
employee.setAge(55);
employee.setEmail("marry@163.com");
employee.setGender(0); // 判断重复的就修改
// UPDATE tbl_employee SET last_name=?, gender=?, age=? WHERE id=? AND last_name=? AND gender=? AND age=?
Integer result = employeeMapper.update(employee,new UpdateWrapper().setEntity(employee)); if (result!=null||result>0) {
logger.info("++++++++++++++++修改成功+++++");
}
}

4、自定义sql语句修改

  /**
* 修改用户
* @throws SQLException
*/
@Test
public void update() throws SQLException { Employee employee = new Employee(); employee.setId(1);
employee.setLastName("Marry");
employee.setAge(55);
employee.setEmail("marry@163.com");
employee.setGender(0); //拼接一个sql的值
//UPDATE tbl_employee SET last_name=?, gender=?, age=?, email=1 where email=1 and age=12(注意where前的空格))
Integer result = employeeMapper.update(employee,new UpdateWrapper().setSql("email="+employee.getId()+" where email=1 and age=12")); if (result!=null||result>0) {
logger.info("++++++++++++++++修改成功+++++");
}
}

注意:

2.3版本有

  1. 1)  Integer updateById(@Param("et") T entity); 根据ID修改

  2. 2)  Integer updateAllColumnById(@Param("et") T entity)  不管是否为空,都会出现在slq语句中。默认未设置的字段设置为空

Mybatis-Plus 实战完整学习笔记(五)------insert测试的更多相关文章

  1. Mybatis-Plus 实战完整学习笔记(八)------delete测试

    1.根据ID删除一个员工deleteById /** * 删除客户 * * @throws SQLException */ @Test public void deletedMethod() thro ...

  2. Mybatis-Plus 实战完整学习笔记(七)------select测试二

    1.查询selectOne  (3.0.3版) @Test public void selectMethod() throws SQLException { // 根据ID获取一个对象的数据 Empl ...

  3. Mybatis-Plus 实战完整学习笔记(六)------select测试一

    查询方法(3.0.3) 1.查询一个员工的数据 @Test public void selectMethod() throws SQLException { // 根据ID获取一个对象的数据 Empl ...

  4. Mybatis-Plus 实战完整学习笔记(一)------简介

    第一章    简介      1. 什么是MybatisPlus                MyBatis-Plus(简称 MP)是一个 MyBatis 的增强工具,在 MyBatis 的基础上只 ...

  5. Mybatis-Plus 实战完整学习笔记(四)------全局参数配置

    一.全局配置设置 (1)全局配置Id自动生成 <!--定义mybatisplus全局配置--> <bean id="globalConfig" class=&qu ...

  6. Mybatis-Plus 实战完整学习笔记(二)------环境搭建

     第二章    使用实例   1.搭建测试数据库 -- 创建库 CREATE DATABASE mp; -- 使用库 USE mp; -- 创建表 CREATE TABLE tbl_employee( ...

  7. Mybatis-Plus 实战完整学习笔记(三)------导入MybatisPlus环境

    1.dao层接口引入 package com.baidu.www.mplus.mapper; import com.baidu.www.mplus.bean.Employee; import com. ...

  8. 《从Lucene到Elasticsearch:全文检索实战》学习笔记五

    今天我给大家讲讲tf-idf权重计算 tf-idf权重计算: tf-idf(中文词频-逆文档概率)是表示计算词项对于一个文档集或语料库中的一份文件的重要程度.词项的重要性随着它在文档中出现的次数成正比 ...

  9. Mybatis-Plus 实战完整学习笔记(十一)------条件构造器删除,修改,conditon

    1.修改功能--其他过滤方式跟select一样 /** * 修改条件构造器 * @throws SQLException */ @Test public void selectUpdate() thr ...

随机推荐

  1. 博客(二)注册页面django

    首先上一个html <!DOCTYPE html> <html lang="en"> <head> <meta charset=" ...

  2. iOS 10 之后权限设置

    iOS 10 之后权限设置 麦克风权限:Privacy - Microphone Usage Description 是否允许此App使用你的麦克风? 相机权限: Privacy - Camera U ...

  3. 20165315 实验一 Java开发环境的熟悉

    # 20165315 实验一 Java开发环境的熟悉 一.实验内容及步骤 (一)使用JDK编译.运行简单的Java程序 macOS命令行下运行Java 打开终端 输入mkdir 20165315exp ...

  4. 微信小程序 错误记录

    1.报错this.getUserInfo(this.setData) is not a function;at pages/index/index onShow function;at api req ...

  5. excel数据复制到html表格<textarea>中

    方案一 多行文本框接收到复制的excel值后,在文本框的chage事件中,将excel内容分割到二维数组中,然后填充到html的表格的input或textarea中. 数据格式: 单元格复制后的数据格 ...

  6. andorid 多线程handler用法

    .xml <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android ...

  7. hdu 1255(线段树 扫描线) 覆盖的面积

    http://acm.hdu.edu.cn/showproblem.php?pid=1255 典型线段树辅助扫描线,顾名思义扫描线就是相当于yy出一条直线从左到右(也可以从上到下)扫描过去,此时先将所 ...

  8. Taxi

    /* After the lessons n groups of schoolchildren went outside and decided to visit Polycarpus to cele ...

  9. 谁说delphi没有IOCP库,delphi新的IOCP类库,开源中

    DIOCP Demo说明 下载地址 https://code.google.com/p/diocp/ 特地为DIOCP开设了一个群:320641073,欢迎学习的IOCP的童鞋进入讨论. 核心作者:  ...

  10. [AI]AI章1 框架选型

    工欲善其事,必先利其器 你想选哪个? 如何选?先来介绍下,也许有帮助... 介绍下几个名词: 卷积神经网络(Convolutional Neural Network,CNN) CNN是一种前馈神经网络 ...