1

请帮助我详细说明如何正确保持外部数据库连接对象(外部数据库服务器 = MongoDB、OrientDB、Apache SOLR)。对于我们的 xPages 应用程序,我们无法正确解析其相当笼统的概念。当像数据库一样连接到外部服务时,您必须在应用程序启动/首次使用时创建连接对象,并在应用程序生命周期内保持共享(出于性能原因,使用一些池机制)(我的意思是单例模式)。事情来了,我不确定。在类似 servlet 的环境中,通常使用 servlet 侦听器事件来正确连接和断开数据库。但是如何在 xPages 环境中做到这一点?ApplicationScope 似乎很合适,但我找不到如何附加应用程序生命周期以正确断开与外部数据库的连接的方法。

根据 JSF 文档,托管 bean 应该支持托管 bean LifeCycle 注释 @PostConstruct 和 @PreDestroy 可以很好地解决这个问题。但它在 xPages 中不起作用......请参阅下面的故事。它已报告给 IBM 并被接受为将来要修复但尚未修复的错误。...您是否有任何提示如何正确操作,如何连接和断开分机。在应用程序重新启动、自动卸载等情况下可以正常工作的数据库?

http://www-10.lotus.com/ldd/xpagesforum.nsf/topicThread.xsp?documentId=131569D202C110E185257958005B0A7B&action=openDocument

谢谢你,大卫

4

2 回答 2

0

@PostConstruct 和 @PreDestroy 不是 JSF1.2 的一部分。也许你应该看看 ExtLib 中当前的 JDBC 连接器是如何实现的,并为其他类型的 DB 使用相同的逻辑。

于 2012-04-28T02:51:15.753 回答
0

我刚刚找到了这里描述的解决方案http://hasselba.ch/blog/?p=740 ...

于 2012-07-13T12:50:53.750 回答