检查数据库在JPA中

Ria*_*ell 5 java mysql jpa

如何在JPA中检查数据库是否连接,在部署应用程序后打开或关闭数据库连接,即(运行应用程序时)

Jam*_*mes 6

最简单的方法是执行一个查询,比如

em.createNativeQuery("select 1 from dual").getSingleResult();
Run Code Online (Sandbox Code Playgroud)

通常数据源/连接池或 JPA 提供程序将提供某种连接测试或死连接解决方​​案。

如果您使用 EclipseLink 的连接池,它将自动检测死连接并重试查询。


San*_*osh 1

通常,所有 JPA 实现都使用一些连接池或池数据源(如 C3P0),并且这些连接池具有在获取连接之前测试数据库连接性的配置。请检查您的连接池/数据源文档以了解此设置。