public ResultSet executeQuery(String sql){ try{ conn=getConnection(); stmt=conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY); rs=stmt.executeQuery(sql); }catch (SQLException ex){ System.err.println(ex.getErrorCode()); } return rs; }
时间: 2024-02-14 09:32:19 浏览: 82
JSP与SQL Server连接.pdf
根据您提供的代码,ConnDB类的executeQuery方法实现存在一定的问题。具体问题如下:
1. 每次执行executeQuery方法,都会创建一个新的Connection对象和Statement对象,这会导致资源浪费和性能问题。建议使用连接池来管理数据库连接。
2. 在try代码块中获取Connection对象、创建Statement对象、执行SQL语句、返回ResultSet对象,这些操作都有可能抛出SQLException异常,但是该异常处理方式只是简单地打印错误码,没有对异常进行处理。建议在方法中增加异常处理逻辑,例如记录日志、关闭ResultSet、Statement和Connection等资源。
3. 该方法返回的ResultSet对象需要在使用完之后及时关闭,否则可能导致资源泄露和性能问题。
综上所述,建议对该方法进行改进和优化,以提高代码的可维护性和可扩展性。
阅读全文