Oracle
 sql >> Base de Dados >  >> RDS >> Oracle

Configurando o tempo limite de rede para conexão JDBC


setNetworkTimeout() foi introduzido no JDBC 4.1 e não estava presente no JDBC 4.0.

Você vai querer ojdbc7 já que o JDBC 4.1 só veio com o Java 7 se você quiser usar setNetworkTimeout() método.

O problema subjacente é que adicionar métodos a interfaces em especificações posteriores pode fazer com que implementações mais antigas dessas interfaces apresentem erros. Um dos novos recursos do próximo Java 8, métodos padrão, esperamos tornar isso um pouco menos problemático.

Aparentemente, há também uma propriedade de driver JDBC para Oracle que pode modificar os tempos limite do soquete.

Você também pode tentar usar esta propriedade Oracle JDBC para definir o tempo limite do soquete se estiver usando o driver thin:
Properties props = new Properties();
props.setProperty("user", "dbuser");
props.setProperty("password", "dbpassword");
props.setProperty(OracleConnection.CONNECTION_PROPERTY_THIN_NET_CONNECT_TIMEOUT, "2000");

Connection con = DriverManager.getConnection("<JDBC connection string>", props);