setNetworkTimeout()
JDBC 4.1 में पेश किया गया था और JDBC 4.0 में मौजूद नहीं था।
आप ojdbc7 चाहते हैं क्योंकि JDBC 4.1 केवल Java 7 के साथ आया है यदि आप setNetworkTimeout()
का उपयोग करना चाहते हैं विधि।
अंतर्निहित मुद्दा यह है कि बाद के विनिर्देशों में इंटरफेस में विधियों को जोड़ने से उन इंटरफेस के पुराने कार्यान्वयन त्रुटियों से टूट सकते हैं। आने वाले जावा 8 की नई सुविधाओं में से एक, डिफ़ॉल्ट तरीके, उम्मीद है कि यह समस्या को थोड़ा कम कर देगा।
जाहिरा तौर पर Oracle के लिए एक JDBC ड्राइवर संपत्ति भी है जो सॉकेट टाइमआउट को संशोधित कर सकती है।
यदि आप पतले ड्राइवर का उपयोग कर रहे हैं तो आप सॉकेट टाइमआउट सेट करने के लिए इस Oracle JDBC प्रॉपर्टी का उपयोग करने का भी प्रयास कर सकते हैं:
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);