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,在入库前就已知.

相关推荐
徐子童2 天前
网络协议---TCP协议
网络·网络协议·tcp/ip·面试题·1024程序员节
扫地的小何尚4 天前
NVIDIA RTX PC开源AI工具升级:加速LLM和扩散模型的性能革命
人工智能·python·算法·开源·nvidia·1024程序员节
数据皮皮侠AI5 天前
上市公司股票名称相似度(1990-2025)
大数据·人工智能·笔记·区块链·能源·1024程序员节
开开心心就好5 天前
系统清理工具清理缓存日志,启动卸载管理
linux·运维·服务器·神经网络·cnn·pdf·1024程序员节
Evan东少8 天前
[踩坑]笔记本Ubuntu20.04+NvidiaRTX5060驱动+cuda+Pytorch+ROS/Python实现人脸追踪(环境准备)
1024程序员节
不爱编程的小陈9 天前
C/C++每日面试题
面试·职场和发展·1024程序员节
开开心心就好9 天前
右键菜单管理工具,添加程序自定义名称位置
linux·运维·服务器·ci/cd·docker·pdf·1024程序员节
码农三叔10 天前
(4-2-05)Python SDK仓库:MCP服务器端(5)Streamable HTTP传输+Streamable HTTP传输
开发语言·python·http·大模型·1024程序员节·mcp·mcp sdk
西幻凌云14 天前
初始——正则表达式
c++·正则表达式·1024程序员节
启芯硬件14 天前
电源XL6009E1的dieshot细节分析-芯片设计干货
大数据·经验分享·硬件工程·1024程序员节