2

我有使用 Toplink 将对象转换为数据库的经验,反之亦然。但这都是 JSP 站点的一部分,现在我用它做了一些 EJB 的东西。现在是我的问题:在 Java 桌面应用程序中使用 Toplink 之类的东西好还是使用 Java 中的本机 sql 东西更常见?

也许是教授的一些经验。开发人员可能很好。我需要为客户开发一个认真的应用程序。我正在使用 Java 进行操作,并将数据存储在数据库中。

谢谢

4

4 回答 4

3

如果你的数据模型结构良好,不太复杂,而且最重要的是,如果你可以控制它,那么 ORM 就很好。

遗留数据库或建模不佳的数据库更难用 ORM 表示,并且强烈建议不要这样做,因为您的应用程序会增加模型本身所暗示的复杂性。

如果您对某些 ORM 工具(例如 Hibernate)感到满意,并且您的数据库做得相当好,那就去吧。它们确实为您节省了大量样板代码,并在后台提供了一些不错的查询优化代码。否则,您可能希望直接使用 JDBC 或其他一些框架来简化 JDBC 的使用,但仍使用纯 SQL。对于这种情况,我推荐MyBatis

于 2011-01-25T12:35:08.110 回答
2

TopLink(和 EclipseLink/JPA)在桌面应用程序中的工作与在服务器端应用程序中一样好。事实上,在服务器端流行之前,TopLink 早在 90 年代就已经有了客户端-服务器 Smalltalk 应用程序。

于 2011-02-08T14:31:46.420 回答
1

这取决于您的用例

ORM 技术可以很好地抽象出数据库细节并让您专注于领域模型。但是,在某些情况下使用 ORM 层是不合适的(非常大的数据集可能会导致性能问题,例如,难以映射到对象的数据库模式是另一种情况)。

我建议使用符合 JPA 的技术,例如 Hibernate。这样,您就可以使用实现 Java 标准的 ORM,并且您可以或多或少地换入和换出实现。

对于其他一切,JDBC 是一个灵活的朋友

于 2011-01-25T12:24:06.540 回答
0

也取决于数据库容量。对于具有大量数据的数据库,请尝试使用 hibernate。它可能比编写 JDBC 代码有很大帮助

于 2011-01-25T12:21:34.330 回答