当您使用 ORM 时,我真的很难理解您是如何将您的应用程序与数据库松散耦合的。我知道有代码优先和数据优先的设计模式,在某些场景中(直截了当的模式......一些电子商务等),这是有道理的。当您在开发阶段有更复杂和/或不断变化的模式时,您如何不将自己束缚在与数据库的紧密耦合中。
我只是想了解如何应用有效/稳健的流程来处理对数据结构的典型更改。
谢谢,
小号
您与 ORM 工具紧密耦合,但与数据库无关。您可以将完整的应用程序移动到另一个数据库,只需在 hibernate 配置中更改几行即可。通过更改数据库方言和 jdbc url 以匹配新的数据库服务器,您可以将应用程序从 MySql 移植到 PostgreSQL、Oracle 和 SqlServer。这就是松耦合。
处理数据结构更改的一种方法是通过迁移。但是 ORM 并不是真正为该任务设计的,因此您最终会以某种方式编写/实现自己的迁移,请参阅data-migration-with-hibernate