一尘不染

将Hibernate用于现有数据库

hibernate

我们有一个已经运行很长时间的应用程序。现在我们将其迁移到Spring并可能使用Hibernate或任何其他ORM。

但是我们遇到了一个问题。不建议/不好的主意,对于已经存在的数据库使用Hibernate并围绕Schema对对象进行建模吗?

大多数人主张不要使用Hibernate,而应该使用iBatis等其他ORM。但是在我们公司中,所有人都是Hibernate的支持者。

有经验吗?


阅读 251

收藏
2020-06-20

共1个答案

一尘不染

我会说在不了解您的要求的情况下选择Hibernate,iBatis或其他任何东西都是不负责任的。

如果您没有实体对象模型,那么我会说Hibernate是一个糟糕的选择。

如果您使用存储过程作为数据库的接口,那么Hibernate就是一个糟糕的选择。

如果您不喜欢Hibernate为您生成的动态SQL,那么我想说Hibernate是一个糟糕的选择。

得到它?像那些Hibernate支持者那样的下意识反应不是一个好主意。

与Hibernate相比,iBatis或Spring
JDBC模板可能是更好的选择。您应该对该决定有更多的了解,并使其适合您的应用程序,而不是盲目地听暴民的声音。

您也不必一无所有。可以使用一种技术来实现您的解决方案的一部分,而使用另一种技术来实现其余的解决方案。

我建议使您的持久层基于接口,以便您可以交换实现而不会影响客户端。

2020-06-20