原标题:Spring认证|Spring Data JDBC-如何使用自定义ID生成
这是关于如何解决使用 Spring Data JDBC 时可能遇到的各种挑战的系列文章的第一篇。
如果你不了解 Spring Data JDBC,你应该首先阅读它的介绍和文章,它解释了 Spring Data JDBC 上下文中的相关性。相信我,这很重要。
文章基于我在 2021 年春季一期上这篇文章的部分演讲。
使用 ID - 特别是当您想要控制实体的 ID 并且不会选择什么数据库时,您的选择是什么。
假设情况下,类型数据列JDBC假设的ID通过生成SERIAL或AUTOINCREMENT得到。 ,聚合根执行插入操作。数据库生成一个ID,这个ID由Spring Data JDBC在聚合根中设置。
考虑一个由单个简单的类组成的简单聚合:
类小黄人{
@ID
长ID;
字符串名称;
Minion(字符串名称){
this.name = 名称;
}
}
进一步考虑默认CrudRepository。
接口 MinionRepository 扩展 CrudRepository {
}
存储库会自动连接到您的代码中,如下所示:
@自动连线
MinionRepository 随从;
以下工作正常:
Minion before = new Minion("Bob");