【发布时间】:2015-06-08 19:17:12
【问题描述】:
我正在 eclipse 上开发一个动态 web 项目。
以下是使用 DataSource 连接 MySQL 的示例。 这是正确的方法吗?我的意思是在 Servlet 中获得连接是否正常?
此外,我发现这种获取/关闭连接的方式很乏味,因为每次想要获取/关闭连接时,我都需要编写完全相同的代码部分。我认为应该有更好的方法。有人可以给我一些建议吗?
谢谢!
@WebServlet(name="HelloUser", urlPatterns={"/hellouser"})
public class HelloUserServlet extends HttpServlet{
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
DataSource ds = MyDataSourceFactory.getMySQLDataSource();
Connection con = null;
Statement stmt = null;
ResultSet rs = null;
try {
con = ds.getConnection();
stmt = con.createStatement();
rs = stmt.executeQuery(...);
...
} catch (SQLException e) {
e.printStackTrace();
}finally{
try {
if(rs != null) rs.close();
if(stmt != null) stmt.close();
if(con != null) con.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
}
}
【问题讨论】:
-
简答:否。长回答:首先了解
try-with-resources构造,其次考虑了解更高级别的JDBC 库,例如Spring JDBC。 -
谢谢!我会试试 Spring JDBC。
标签: java mysql jdbc datasource