sql >> Database teknologi >  >> RDS >> Oracle

Indstilling af netværkstimeout for JDBC-forbindelse

setNetworkTimeout() blev introduceret i JDBC 4.1 og var ikke til stede i JDBC 4.0.

Du vil have ojdbc7, da JDBC 4.1 kun kom ind med Java 7, hvis du vil bruge setNetworkTimeout() metode.

Det underliggende problem er, at tilføjelse af metoder til grænseflader i senere specifikationer kan få ældre implementeringer af disse grænseflader til at bryde med fejl. En af de nye funktioner i den kommende Java 8, standardmetoder, vil forhåbentlig gøre dette lidt mindre af et problem.

Tilsyneladende er der også en JDBC-driveregenskab til Oracle, der kan ændre socket-timeouts.

Du kan også prøve at bruge denne Oracle JDBC-egenskab til at indstille socket-timeout, hvis du bruger den tynde driver:

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);


  1. MySQL Skift brugeradgangskode

  2. Hvor skal værdien af ​​small_case_table_names=2 ændres på windows xampp

  3. Oracle - Hvilken TNS-navne-fil bruger jeg?

  4. fejl ved indsættelse af android.database.sqlite.sqliteconstraintexception fejlkode 19 begrænsning mislykkedes