【发布时间】:2017-12-24 01:45:04
【问题描述】:
我在 Adobe 体验管理器中安装了一个 Java 应用程序 (jar) 作为 OSGI 包。
在 Java 应用程序中,我有以下数据源配置: 1. 我正在使用 MyBatis-3 来管理数据源池连接,如下所示: 使用http://www.mybatis.org/mybatis-3/getting-started.html中提到的属性
2. Creating SQL Session factory in following manner :
SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(configuration);
3. Using SQL Server 2014 as my database.
我们有数据库服务器集群,每当我们必须对数据库应用补丁时,我们都会切换数据库服务器。 即使 dataSource URL 保持不变,应用程序也会导致 DB 连接失败错误。 问题仅在捆绑重新启动后得到解决。 连接池有什么方法可以自动重新连接或恢复? 我是 MyBatis、SQL server 和 AEM 的新手,非常感谢任何帮助。
【问题讨论】:
-
我假设使用您的冷备用方法,所有已打开的数据库连接都将失败。抱歉,我不知道 MyBatis。但是要么你找到更好的集群方法,要么你应该有 ConnectionPool 与验证。这意味着 ConnectionPool 在分发连接之前会进行极其简单的查询。如果这失败了,这个错误的连接将被丢弃并打开一个新的连接。其他人也问过,但在这里没有得到答案:mybatis-user.963551.n3.nabble.com/…
标签: sql-server database-connection aem mybatis osgi-bundle