首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Apache Tomcat持久存储Oracle 9i存储过程的结果的Java框架“建议”

使用Apache Tomcat持久存储Oracle 9i存储过程的结果的Java框架“建议”
EN

Stack Overflow用户
提问于 2010-03-19 18:46:46
回答 3查看 154关注 0票数 1

我正在开发一个调用Oracle存储过程的Java servlet。存储过程可能会随着时间的推移而“增长”,我担心“在网页上显示结果”所需的时间。

虽然我在实现阶段,我想要一些建议的持久性框架,将工作在Apache Tomcat5.5?我看到了两种持久化数据库结果的方法。每隔N分钟执行一次预定的数据库查询,或使用触发器。

Hibernate似乎是显而易见的答案,但我从未从Hibernate调用过存储过程(HQL和Criteria)。有没有更合适的框架可以使用?

EN

回答 3

Stack Overflow用户

发布于 2010-03-19 18:58:59

几乎任何Java ORM都可以在像Tomcat这样的servlet容器环境中工作: Hibernate、Cayenne、TopLink...but它对提高存储过程的执行速度和更快地呈现页面毫无帮助。

这里有一些一般性的建议:

  • 不使用存储过程(供应商锁定、维护困难、意大利面条代码、不符合标准的开发语言等)
  • 使用ORM
  • 从基本的性能优化策略开始,以获得更好的响应时间:确保索引有意义,调整数据库配置,在数据库中引入冗余值,在绝对必要时使用触发器重新计算它们,如果您不需要绝对最新的数据,则定期预先计算结果,并在必要时简单地读取它们。
票数 0
EN

Stack Overflow用户

发布于 2010-03-19 22:05:36

我建议,考虑在这个阶段不要使用持久性框架。只需直接使用JDBC保存结果即可。从你的帖子来看,听起来你并不是真的需要它。

如果您想要简化应用程序与JDBC的交互,请考虑使用spring。

尽管如此,数据库独立性还是不错的。我将假设您正在运行1.使用pl/sql的复杂逻辑,或者2.转换大量数据。考虑将oracle DMBS_SCHEDULER与触发器一起使用。

票数 0
EN

Stack Overflow用户

发布于 2010-03-22 07:54:57

Hibernate似乎是显而易见的答案,但我从未从Hibernate调用过存储过程(HQL和标准)。

不那么明显,对于存储过程不是这样,特别是如果您只是调用存储过程,而不是处理对象持久性(CRUD操作)。

有没有更合适的框架可以使用?

简单的JDBC,或者Spring,或者iBATIS。但不是Hibernate,它对你的用例没有任何好处。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2476562

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档