xml的新增insert语句怎么得到新增的id值

java 复制代码
public class OperationLog {
    private Long id;
    private Long groupId;
    private Long userId;
    private String crtName;
    private Date crtTime;
    private String optResult;
    private String optType;
    private String optContent;
    private String optObject;

    // Getters and Setters
}

// 插入操作
operationLogMapper.insertPlain(operationLog);

// 获取生成的ID
Long generatedId = operationLog.getId();
XML 复制代码
<insert id="insertPlain" useGeneratedKeys="true" keyProperty="operationLog.id">
    INSERT INTO ${tableName} (group_id, user_id, crt_name, crt_time, opt_result, opt_type, opt_content, opt_object)
    VALUES (#{operationLog.groupId}, #{operationLog.userId}, #{operationLog.crtName}, #{operationLog.crtTime}, #{operationLog.optResult}, #{operationLog.optType}, #{operationLog.optContent}, #{operationLog.optObject})
</insert>

解释:

useGeneratedKeys="true": 表示启用自动生成的键值。

keyProperty="operationLog.id": 指定将生成的键值赋值给operationLog对象的id属性。

注意事项:

确保数据库表中的主键字段(通常是id)是自增的。

在Java代码中,插入操作后可以通过operationLog.getId()获取生成的ID值。

另一种方法是,生成雪花算法id,在入库前就已知.

相关推荐
惜.己13 小时前
Jmeter中的断言(二)
测试工具·jmeter·1024程序员节
西电研梦1 天前
考研倒计时30天丨和西电一起向前!再向前!
人工智能·考研·1024程序员节·西电·西安电子科技大学
惜.己1 天前
Jmeter中的断言(四)
测试工具·jmeter·1024程序员节
·云扬·1 天前
Java IO 与 BIO、NIO、AIO 详解
java·开发语言·笔记·学习·nio·1024程序员节
网安_秋刀鱼1 天前
PHP代码审计 --MVC模型开发框架&rce示例
开发语言·web安全·网络安全·php·mvc·1024程序员节
HUODUNYUN2 天前
小程序免备案:快速部署与优化的全攻略
服务器·网络·web安全·小程序·1024程序员节
惜.己2 天前
Jmeter的后置处理器(二)
测试工具·github·1024程序员节
惜.己2 天前
Jmeter中的断言(一)
测试工具·jmeter·1024程序员节
cainiao0806052 天前
《物理学进展》
1024程序员节·核心期刊·知网期刊·职称评审
FFDUST3 天前
C++ —— string类(上)
c语言·开发语言·数据结构·c++·stl·1024程序员节