case INSERT: {//insert Object param = method.convertArgsToSqlCommandParam(args); result = rowCountResult(sqlSession.insert(command.getName(), param)); break; } case UPDATE: {//update Object param = method.convertArgsToSqlCommandParam(args); result = rowCountResult(sqlSession.update(command.getNa...
"updateTime", LocalDateTime.class, LocalDateTime.now());// updateFill( metaObject);// 或者// this.strictInsertFill(metaObject, "createTime", () -> LocalDateTime.now(), LocalDateTime.class); /
@TableField(fill = FieldFill.INSERT)、@TableField(fill = FieldFill.INSERT_UPDATE)这两个注解经常在项目中使用到,他MyBatis-Plus 库中的注解,它用于指定字段在执行数据库表的插入和更新操作时的填充策略 @TableField(fill = FieldFill.INSERT_UPDATE)详细介绍 功能: @TableField(fill = FieldFill.INSERT_UPDA...
Mybatis-Plus 在执行插入和更新操作时,可能会抛出以下异常: org.apache.ibatis.exceptions.PersistenceException:这是 Mybatis 的基础异常,表示数据库访问过程中发生了错误。 com.baomidou.mybatisplus.core.exceptions.MybatisPlusException:这是 Mybatis-Plus 的异常类,通常是由于 Mybatis-Plus 配置不当或使用方式不正...
MyBatis-Plus中的saveOrUpdate(或类似方法,因为insertOrUpdate可能是用户自定义或特定版本中的别名)方法的基本作用是根据传入实体的状态自动决定执行插入(Insert)还是更新(Update)操作。这通常依赖于实体的主键(或唯一标识)字段的值:如果主键字段为空或未设置,则执行插入操作;如果主键字段已设置且数据库中存在对应记录,...
@TableField(value = "create_time", fill = FieldFill.INSERT) private LocalDateTime createTime; @TableField(value = "update_user", fill = FieldFill.INSERT_UPDATE) // 新增和更新执行 private String updateUser; @TableField(value = "update_time", fill = FieldFill.INSERT_UPDATE) ...
*/@TableField(fill=FieldFill.INSERT_UPDATE,select=false)privateLocalDateTime updateTime;} fill = FieldFill.INSERT表示insert操作的时候自动为该字段赋值 fill = FieldFill.INSERT_UPDATE表示nsert或update操作的时候自动为该字段赋值 select = false表示在使用Mybatis Wrapper条件构造器进行查询的时候,不查询这个属性...
#全局策略 mybatis-plus.global-config.db-config.update-strategy=not_empty mybatis-plus.global-config.db-config.insert-strategy=not_empty mybatis-plus.global-config.db-config.select-strategy=not_empty 可选的配置值,看源码如下 package com.baomidou.mybatisplus.annotation; public enum FieldStrategy { ...
@TableField(value = "update_user", fill = FieldFill.INSERT_UPDATE) // 新增和更新执⾏ private String updateUser;@TableField(value = "update_time", fill = FieldFill.INSERT_UPDATE)private LocalDateTime updateTime;@TableField(value = "remark")private String remark;} @Data @TableName("sys_...
if (isInsert && metaObjectHandler.openInsertFill()) { // 插入填充 metaObjectHandler.insertFill(metaObject); } else if (!isInsert) { // 更新填充 metaObjectHandler.updateFill(metaObject); } } return metaObject.getOriginalObject(); } 从源码分析我们可以得知当tableInfo为null时,是不走自动填充逻辑。