創建JDBC連接並關閉每個使用預處理語句的Java類或存儲過程調用是否是行業標準?看來在執行插入,更新和刪除操作時重用連接的方式會更有效,而不是每次實例化類時都建立連接。創建JDBC連接時的行業標準是什麼?
我不是要求引用Java Servlets。
感謝您的任何反饋和資源審查。
創建JDBC連接並關閉每個使用預處理語句的Java類或存儲過程調用是否是行業標準?看來在執行插入,更新和刪除操作時重用連接的方式會更有效,而不是每次實例化類時都建立連接。創建JDBC連接時的行業標準是什麼?
我不是要求引用Java Servlets。
感謝您的任何反饋和資源審查。
通常應用程序使用由DataSource提供的連接輪詢。您不必爲此運行應用程序服務器,甚至不需要運行servlet容器。只需實例化實現並從應用程序中使用它。常用的實施方式是Apache Dbcp:
ds = new BasicDataSource();
ds.setDriverClassName("com.mysql.jdbc.Driver");
ds.setUsername("root");
ds.setPassword("root");
ds.setUrl("jdbc:mysql://localhost/test");
...
// then later in the application:
Connection conn = ds.getConnection();
// do the stuff
conn.close(); // only releases conn back to pool
...
// or better in Java 7:
try (Connection conn = ds.getConnection()) {
// do the stuff
}
謝謝大家的反饋意見。創建了一個Connection Manager類,並使用Connection.getConnection()完成了工作;就像我可以簡單地與一個方法建立聯繫。請讓我知道是否需要發佈我的更新代碼。 – dangerouslyCoding
您可以使用連接池,根據需要您的代碼可以從中獲取/釋放連接。一些流行的是C3P0和DBCP。請參閱this answer開始。
使用連接池,通過從Servlet容器獲取連接,它將爲您管理連接池。如果不是Servlet,則應該爲連接池使用第三方庫,例如請參閱[如何在JDBC中建立連接池?](http://stackoverflow.com/q/2835090/5221149) – Andreas
,但如果不使用servlet,仍然可以輕鬆使用連接池。取決於你的應用程序的工作情況,涉及多少連接以及多久,你需要決定這是否值得做。 (但通常是) – slipperyseal