我从SqlSessionFactory
生成SqlSessionFactoryBean
,并捕获异常以确定它是否为给定的数据源成功创建。
但是,我发现如果数据库存在,但是没有监听器,该方法将失败。不会生成异常,只有在我实际尝试创建SqlSessionFactory
的打开会话时才会发生异常。
我最好的方法是检查我是否使用有效的数据库,接受正常的会话?
编辑:实际上似乎并不是打开会话会引发异常...它可能只发生在我第一次实际更新/检索调用时。
答案 0 :(得分:0)
许多连接池都有一个连接验证查询选项,可以将其配置为执行简单的操作,如SELECT 1
(当然,取决于数据库)以验证连接是否有效。但是,它是相同的前提:尝试执行查询并捕获异常。
如果您已经在使用连接池,并且它支持这样的选项,我想知道这是否可以解决您的问题。