我正在學習使用Java SE 6項目的JPA w/Hibernate。我只想能夠檢測到Hibernate和我的數據庫(MS SQL Server)之間的連接是否打開。例如,我希望能夠檢測到這種情況,將其記錄下來,然後在60秒內重新嘗試重新連接。如何檢測與Hibernate/JPA打開數據庫連接?
這是我認爲會工作,但isOpen()
並不似乎是我想要的(通常爲true):
EntityManagerFactory emf = Persistence.createEntityManagerFactory("rcc", props);
if (emf != null && emf.isOpen()) {
EntityManager em = emf.createEntityManager();
if (em == null || !emf.isOpen())
// error connecting to database
else ...
在我看來這是一個簡單的問題,但我不能找到一個回答!
J2SE中的JPA?這是行不通的。你不是指Java SE或Java EE嗎? JPA是Java EE的一部分,因此您隱式使用Java EE。 – BalusC
是的 - Java SE 6(1.6.0_18),很抱歉。現在修復。 –