mybatis自动生成mapper中的insert与insertseletive,updateByPrimaryKey,updateByPrimaryKeySelective方法的区别

MyBatis插入Insert、InsertSelective的不同以及使用心得 逆向自动生成的mybatis对应配置Mapper文件里面,有两个方法,分别为insert和insertSelective。这两个方法均是插入对象的方法。为什么会有两个插入方法呢?这里说一下两者的区别。 阅读详情
对于insert:
//插入一条数据
//支持Oracle序列,UUID,类似Mysql的INDENTITY自动增长(自动回写)
//优先使用传入的参数值,参数值空时,才会使用序列、UUID,自动增长
int insert(T record);

对于InsertSelective
//插入一条数据,只插入不为null的字段,不会影响有默认值的字段
//支持Oracle序列,UUID,类似Mysql的INDENTITY自动增长(自动回写)
//优先使用传入的参数值,参数值空时,才会使用序列、UUID,自动增长
int insertSelective(T record);


这两个update都是使用generator生成的mapper.xml文件中,对dao层的更新操作

updateByPrimaryKey对你注入的字段全部更新(不判断是否为Null)

updateByPrimaryKeySelective会对字段进行判断再更新(如果为Null就忽略更新)

区别了这两点就很容易根据业务来选择服务层的调用了!

详细可以查看generator生成的源代码!

insert和insertSelective和上面类似,加入是insert就把所有值插入,但是要注意加入数据库字段有default,default是不会起作用的

insertSelective不会忽略default

Matlab 2023b 科研党必备:MOSEK 10.1.25 安装与配置全记录(附License过期解决方案) 本文详细介绍了在Matlab 2023b中安装与配置MOSEK 10.1.25的全过程,特别针对科研用户提供学术许可申请、证书文件部署及环境集成的实用指南。文章还包含常见问题解决方案和性能调优建议,帮助用户高效完成优化计算任务。 阅读详情

相关推荐

PyMiMi实战指南:midas_api配置与连接测试详解

本文详细介绍了PyMiMi库中midas_api的配置与连接测试全流程。从环境准备、API密钥获取,到核心的url_cfg配置函数使用,再到通过test_url进行连接验证,提供了清晰的步骤和代码示例。文章重点解析了配置原理、常见错误排查方法(如401错误、连接超时),并强调了API密钥的安全性管理,帮助用户稳固建立Python与Midas Civil NX之间的自动化通信桥梁。

weixin_29044713的博客 683

MyBatis插入相关问题(insert、InsertSelective)

本文转载于:简书《MyBatis插入相关问题(insert、InsertSelective)》 自动生成代码insert和insertSelective的区别 自动生成的mybatis对应配置文件里面,有两个方法,分别为insert和insertSelective。这两个方法均是插入对象的方法。这里说一下两者的区别。 首先看一下两者代码: insert <insert id="inser...

技术探求 3567

(秋招)vins中的光流法

那么下一层基于这个初值也会得到一个解,就这样进行迭代,直到达到金字塔的最底层,也即第0层,就是原始分辨率的那张图片,此时光流法就会给出一个速度值,这个值是比较可靠的(相比对原始图片直接使用光流法来说)。2.小运动,这个也必须满足,就是时间的变化不会引起位置的剧烈变化,这样灰度才能对位置求偏导(换句话说,小运动情况下我们才能用前后帧之间单位位置变化引起的灰度变化去近似灰度对位置的偏导数),这也是光流法不可或缺的假定。可以看到光流法是来估计物体运动的(估计的是物体运动的速度,根据速度再计算相对应的特征点)。

努力coding 651

关于Mybatis提交更新字段使用 updateByPrimaryKey和 updateByPrimaryKeySelective的记录

mybatis 更新方法的使用

初心不改 4120

用Arduino Uno和纸板做个扫地机器人?手把手教你复刻一个低成本DIY方案(附完整代码)

本文详细介绍了如何用Arduino Uno和纸板制作一款低成本DIY扫地机器人,涵盖材料准备、机械结构设计、电路系统搭建和智能清扫算法实现。通过开源硬件和日常废弃物,打造极致性价比的创客项目,适合初学者学习电子和编程。

weixin_42531588的博客 262

实战指南:在摩尔线程GPU上部署AI模型的完整流程

本文提供了一份详尽的实战指南,手把手教你如何在摩尔线程GPU上成功部署AI模型。内容涵盖从驱动安装、Docker环境配置,到核心的代码适配与模型运行全流程,并分享了性能调优技巧与常见避坑方法,旨在帮助开发者高效利用国产硬件进行AI应用开发。

weixin_29271263的博客 531

mybatis| mybati自动生成mapper中的insert与insertseletive,updateByPrimaryKey,updateByPrimaryKeySelective方法的区别

对于insert: //插入一条数据 //支持Oracle序列,UUID,类似Mysql的INDENTITY自动增长(自动回写) //优先使用传入的参数值,参数值空时,才会使用序列、UUID,自动增长 int insert(T record); 对于InsertSelective //插入一条数据,只插入不为null的字段,不会影响有默认值的字段 //支持Oracle序列,UUID,类似Mysql...

YvesHe的专栏 1615

判断两个多边形是否相交(java实现)

判断两个多边形是否相交 ,当前认为一个点相交也是相交,可针对凹多边形和凸边型等多复杂的多边形进行相交判断,采用java实现,因为网上java实现的比较少,所以这里写下如何实现,适用于碰撞检测,地图等等应用场景

IT_CREATE的博客 5843

解决tk.mapper的updateByPrimaryKeySelective()、deleteByPrimaryKey()不生效

解决tk.mapper的updateByPrimaryKeySelective()、deleteByPrimaryKey()不生效

m0_60209100的博客 577

手把手入门YOLO到改进优化教程专栏介绍与说明——列表目录查阅(持续更新)

手把手入门YOLO到改进优化教程专栏介绍与说明——列表目录查阅(持续更新)

嵌入式阿齐Archie 2万+

用 ABAP 驾驭 OAuth 2.0:从 Authorization Code 到 SAML Bearer 的全栈落地指南

ABAP平台OAuth 2.0客户端开发实践 本文为SAP开发者详细解析ABAP平台内置OAuth 2.0客户端的使用方法,涵盖四种授权流的最佳实践: 授权流选择: Authorization Code:适用于用户交互场景 SAML 2.0 Bearer:适合已有SAML体系的企业 Client Credentials:系统间通信 Password Credentials:过渡方案(不推荐) 配置流程: 通过SE80定义Client Profile 使用SOAUTH2_CLIENT/OA2C_CONFIG配

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 309

mybatis genertor 实践及遇到的问题

参考: Spring boot Mybatis 整合(完整版)——没有坑点,一次成功 https://blog.csdn.net/Winter_chen001/article/details/77249029 https://blog.csdn.net/pucao_cug/article/details/64499355 https://blog.csdn.net/Winter_chen001/a...

回纹勾边宝相花团 1001

解锁PyCharm+Deepseek:本地部署AI编程超能力

在本次探索中,我们成功地在 PyCharm 中实现了 DeepSeek 的本地化部署,这一过程虽然涉及多个步骤,但每一步都为我们开启 AI 编程大门奠定了基础。从安装最新版 PyCharm,确保我们拥有一个功能强大且兼容性良好的开发环境,到注册 DeepSeek 账号并获取 API Key,这是连接我们与强大 AI 能力的关键纽带。接着,在 PyCharm 中安装 Continue 插件并进行精细配置,让 DeepSeek 能够深度融入我们的编程流程。

远程部署调试 运行安装 项目调试 二次开发 项目技术新 持续迭代 部分源码免费分享 5548

MyBatis中insert和insertSelective的区别

主要对比了MyBatis生成的Mapper类中的insert方法和insertSelective方法的区别。

Jeffreyhh的博客 2148

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

通用mapper的学习与使用

通用mapper的学习与使用 本文是基于SpringBoot 2.0.4.release环境,学习和使用通用mapper: 一、通用mapper的注解使用 (1)@Table 建立实体类与数据库表之间的映射关系 @Data @NoArgsConstructor @AllArgsConstructor @Table(name = "table_emp") public class Employ...

哈工大许政的博客 1万+

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

使用ktolin+springboot+mybatis。通用mapper方法updateByPrimaryKey出错

如何将要修改的参数传到,updateByPrimaryKey方法中,让它根据主键修改数据。使用swagger测试接口,报错500不知道是哪里的问题。

weixin_63915924的博客 193

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

关于SpringBoot中通用Mapper的updateByPrimaryKey 更新无效解决方案

排坑mark 最近用SpringBoot在做接口开发,用了通用mapper之后发现一直更新不了,返回的参数是0。(即无法更新) 采取方案如下: 1.实体类导入 import javax.persistence.Id; 并且在主键前@Id 2.观察项目中实体类主键与数据库主键以及代码中的各个部分主键是否类型一致。(不要前面是long后面变int) 3.也是我在经过前面2种方...

qq_39101697的博客 3416

Idea中Mybatis工具插件结合mysql自动生成实体类和mapper层的增删改查

Idea中Mybatis工具插件结合mysql自动生成实体类和mapper层的增删改查

weixin_46625488的博客 2342

IDEA mysql&oracle mybatis-generator plugin插件 自动生成实体类和mapper.xml实战

记录下IDEA集成自动生成实体类和mapper踩过的坑 开发环境 开发工具:IntelliJ IDEA 2019.2.3 (Ultimate Edition) jdk版本:jdk1.8.0_77 工程构建工具:apache-maven-3.3.9 数据库:mysql MyBatis Generator 插件版本:Free MyBatis plugin 2019.12.18 项目构建:Spring Boot :: (v2.3.1.RELEASE) 插件下载 在线下载:File | Settin

ylm-sigmund 2170

学习笔记--MyBatis04:使用注解开发

MyBatis04:使用注解开发 使用注解开发 面向接口编程 大家之前都学过面向对象编程,也学习过接口,但在真正的开发中,很多时候我们会选择面向接口编程 根本原因 : 解耦 , 可拓展 , 提高复用 , 分层开发中 , 上层不用管具体的实现 , 大家都遵守共同的标准 , 使得开发变得容易 , 规范性更好 在一个面向对象的系统中,系统的各种功能是由许许多多的不同对象协作完成的。在这种情况下,各个对象内部是如何实现自己的,对系统设计人员来讲就不那么重要了; 而各个对象之间的协作关系则成为系统设计的关键。

qq_44534541的博客 358

IDEA好用插件:MybatisX快速生成接口实体类mapper.xml映射文件

在Idea中添加数据库 --------以Oracle数据库为例。4测试自动生成entity-service-mapper。第三步:点击Next后,检查路径,文件名,基础选项配置。下一步:按照红色表示的地方配置,其他的地方不用改变。自动生成查询-----写select关键字,测试ok后,点击Apply--OK就加好了。自动生成新增-----写insert关键字。自动生成修改-----写update关键字。

SUMMERENT的博客 5万+

IDEA自动生成Mapper和实体文件

当我们在用到Mybatis的时候,肯定避免不了需要根据数据表字段创建pojo类、mapper文件以及dao类,并且需要配置它们之间的依赖关系,这样的工作很琐碎和重复,mybatis官方也发现了这个问题,因此给我们提供了mybatis generator工具来帮我们自动创建pojo类、mapper文件以及dao类并且会帮我们配置好它们的依赖关系。 今天用到这块工具,通过自己的努力终于可以成功的应用,...

王小义笔记 1万+

Mybatis系列(十一)mapper映射文件之insert,update,delete

上篇文章Mybatis系列(十)mapper映射文件之select元素(一对一,一对多,多对多),平时项目中查询也是用的最多,也是最复杂的,最硬的一块骨头都啃完了,剩下的就小菜一碟了,这一节我们来看insert,update,delect。 ...

Sean'Xu Blogs 1238

深入浅出Mybatis系列(七)---mapper映射文件配置之insert、update、delete

上篇文章《深入浅出Mybatis系列(六)---objectFactory、plugins、mappers简介与配置》简单地给mybatis的配置画上了一个句号。那么从本篇文章开始,将会介绍mapper映射文件的配置, 这是mybatis的核心之一,一定要学好。在mapper文件中,以mapper作为根节点,其下面可以配置的元素节点有: select, insert, update, delete, cache, cache-ref, resultMap, sql 。 本篇文章将简单介绍insert, .

lisheng19870305的专栏 945

TKmapper的更新方法updateByPrimaryKey()与updateByPrimaryKeySelective()

Mybatis之更新方法: updateByPrimaryKeySelective() 和 updateByPrimaryKey() 的区别 int updateByPrimaryKeySelective(TbItem record); int updateByPrimaryKey(TbItem record); 上面的是逆转工程生成的Mapper接口 对应的xml为 <update id="updateByPrimaryKeySelective" parameterType="com.taot

欢迎访问我的博客 2806
上一篇: spring mvc log4j2配置
下一篇: BigDecimal比较大小问题
shadow_zed
博客等级 码龄10年 6289粉丝 68原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值