Tôi có kết nối JDBC MySQL trong Java. Chương trình của tôi hoạt động tốt để thực hiện truy vấn đơn giản.MySQLNonTransientConnectionException trong chương trình JDBC tại thời gian chạy
Nếu tôi chạy chương trình tương tự cho hơn 10 giờ và thực hiện một truy vấn sau đó tôi nhận được ngoại lệ MySQL sau:
com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException:
Connection.close() has already been called. Invalid operation in
this state.
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(
Native Method)
com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException:
No operations allowed after statement closed.
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(
Native Method)
tôi đã không sử dụng phương pháp close()
bất cứ nơi nào. Tôi tạo ra kết nối cơ sở dữ liệu và mở nó mãi mãi và luôn luôn thực hiện truy vấn. Không có nơi nào tôi đã đề cập rõ ràng thời gian chờ kết nối. Tôi không thể xác định được vấn đề.
Đây là mã tôi sử dụng cho các kết nối cơ sở dữ liệu:
String driver = PropertyReader.getDriver();
String url = dbURLPath;
Class.forName(driver);
connectToServerDB = DriverManager.getConnection(url);
connectToServerDB.setAutoCommit(false);
gì gây ra ngoại lệ đó?