【发布时间】:2017-09-21 13:41:03
【问题描述】:
我有一个旧的 spring 应用程序,它使用 jee:jndi-lookup 作为数据源。此应用程序在 Tomcat 8 上运行。
<jee:jndi-lookup id="datasource" jndi-name="java:/comp/env/jdbc/Tomcat8Database" destroy-method="close" expected-type="javax.sql.DataSource" lookup-on-startup="false"/>
数据库可能在应用程序启动时关闭,但当我也尝试延迟初始化 spring bean 时,它并没有帮助,因为 spring 中的 JNDI 查找似乎总是发生在 Startup 上,或者它不在 Spring 控件中作为服务器提供连接池。
任何想法或代码示例都会有所帮助。
【问题讨论】:
-
在您启动应用程序之前,您是否知道数据库何时关闭? (例如,您想要支持多个配置文件,一个拥有数据库,一个没有数据库)或者您不知道并且您希望应用程序对您期望存在的数据库具有容错性,而不是