如何修改Eclipselink JPA 2.0连接重试行为

jaw*_*ath 4 connection jpa reconnect eclipselink

如何修改Eclipselink JPA 2.0连接重试行为.Eclipselink会在检测到连接失败时自动尝试将其重新连接到数据库,这会导致swing ui冻结而没有任何响应,直到它连接到数据库.是否有任何解决方案来修改此行为即是可以在连接失败时抛出异常而不重试请帮助解决此问题我面临着巨大的问题.

我去了eclipselink源代码和谷歌,但我找不到任何解决方案.

Gor*_*rke 7

使用SessionCustomizer可以禁用连接重新连接.

package acme;
import  org.eclipse.persistence.internal.sessions.factories.SessionCustomizer;
import org.eclipse.persistence.sessions.Session;
import org.eclipse.persistence.sessions.DatabaseLogin;

public class EmployeeSessionCustomizer implements SessionCustomizer {

    public void customize(Sesssion session) {
        DatabaseLogin login = (DatabaseLogin)session.getDatasourceLogin();
        login.setConnectionHealthValidationOnError(false);
    }
}
Run Code Online (Sandbox Code Playgroud)

可以通过持久性单元属性设置此自定义程序

 <property name="eclipselink.session.customizer" value="acme.EmployeeSessionCustomizer"/>
Run Code Online (Sandbox Code Playgroud)