我正在阅读Hibernate参考指南和《使用Hibernate进行Java持久化》书籍中的ID生成部分。
Hibernate和JPA结合可以提供许多选项。
我想进一步了解如何选择特定的id生成策略的文档。
我也在寻找临界点。
例如,hilo策略预计可以降低竞争。 我认为这种选择必须存在折衷。
我希望了解相关的权衡利弊。
是否有任何相关的文献可供参考?
我正在阅读Hibernate参考指南和《使用Hibernate进行Java持久化》书籍中的ID生成部分。
Hibernate和JPA结合可以提供许多选项。
我想进一步了解如何选择特定的id生成策略的文档。
我也在寻找临界点。
例如,hilo策略预计可以降低竞争。 我认为这种选择必须存在折衷。
我希望了解相关的权衡利弊。
是否有任何相关的文献可供参考?
前一段时间,我写了一篇关于Hibernate键生成器的详细文章:http://blog.eyallupu.com/2011/01/hibernatejpa-identity-generators.html
选择正确的生成器是一项复杂的任务,但尽早选择正确的生成器非常重要,因为晚期的迁移可能会成为噩梦。
有点离题,但这是一个提出通常被忽视的观点的好机会,即在应用程序之间(通过API)共享键。个人而言,我总是喜欢使用代理键,如果我需要将我的对象与其他系统通信,我不会暴露我的键(即使它是代理键)-我使用额外的“外部键”。作为一名顾问,我已经看到过不止一次使用对象键(“它就在那里,让我们使用它”方法)的“伟大”系统集成,只发现一两年后一方存在键范围或类似问题,需要对公开内部键的系统进行深度迁移。公开您的键意味着向外部约束公开您代码的基本方面,这些约束实际上不应该公开。