-2

EJB 比纯优化的 JDBC 慢,但据说这里http://www.javaperformancetuning.com/news/qotm047.shtml

“简单的 JDBC/EJB 比较假定您的 JDBC 与 EJB 生成的 JDBC 一样高效。这绝不是肯定的,因为容器供应商可以拥有擅长生成最佳 SQL 的专业开发人员。”

我如何知道 JBoss、Glassfish、TomEE 之间的优化逻辑?我怎么知道它实际上适合我的特定应用程序,因为通用优化是一种过早的优化:我可以检查以某种方式生成的代码吗?如果需要的话,我可以覆盖那个优化吗?

4

2 回答 2

1

是的,你可以看到生成的sql,是的,你一般可以使用你自己的。大多数 Java EE 容器使用其他 jpa 库,例如 hibernate 和 eclipselink。这些库有办法显示它们正在使用的 sql。他们也有使用你自己的 jpql 或 sql 的方法。

于 2012-05-19T23:49:56.543 回答
1

我如何知道 JBoss、Glassfish、TomEE 之间的优化逻辑?

通过查看生成的 SQL 并检查源代码。另外,通过阅读文档。

我怎么知道它实际上适合我的特定应用程序,因为通用优化是一种过早的优化

那没有意义。“过早优化”综合症是当您(程序员)花时间优化代码时......在确定需要优化之前。相比之下,容器正在执行的优化是自动完成的,并且需要零开发人员时间。

:我可以检查以某种方式生成的代码吗?

是的。但是你如何做到这一点是特定于容器的。阅读容器特定文档。

如果需要的话,我可以覆盖那个优化吗?

我认为这也取决于容器。


您是否注意到这个答案中有一个共同的模式?还值得注意的是,Tomcat 不是 EJB 容器,并且没有“TomcatEE”之类的东西。

于 2012-05-20T02:26:22.277 回答