しばらくしてこのエラーが発生したので、シングルトンを提供する前に接続が切断されていないことを確認するにはどうすればよいですか?
これが私のコードです:
public static Connection getInstance() throws Exception {
if(connection != null) {
return connection;
}
DriverManager.registerDriver(new AppEngineDriver());
connection = DriverManager.getConnection("jdbc:google:rdbms://"+instanceName+"/vidaao");
return connection;
}
スタックトレース:
java.sql.SQLException: この接続は閉じられています。com.google.cloud.sql.jdbc.internal.Exceptions.newConnectionClosedException(Exceptions.java:52) で com.google.cloud.sql.jdbc.Connection.throwIfNotOpen(Connection.java:633) で com.google.cloud .sql.jdbc.Connection.getHoldability(Connection.java:194) com.google.cloud.sql.jdbc.Connection.createStatement(Connection.java:123) で com.google.cloud.sql.jdbc.Connection.createStatement で(Connection.java:54) で db.DbUser.exist(DbUser.java:209) で controller.CtrlUser.login(CtrlUser.java:343) で vidaao.ConnectServlet.doPost(ConnectServlet.java:36) で javax.servlet で.http.HttpServlet.service(HttpServlet.java:637) at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511) at組織
isClosed() を使用しようとしましたが、機能しません。 isValid() は機能しているように見えますが、毎回データベースへの接続が遅くなります