public ResultSet executeQuery(String querySQL, Connection con) throws SQLException { Connection conn = (Connection)con; Statement st = conn.createStatement(); ResultSet rs = null; try { rs = st.executeQuery(querySQL); ResultSetAdapter rsAdapter = new ResultSetAdapter(rs); ResultSetAdapter rsAdapterReturn = rsAdapter; loghelper.info("executeQuery", "end"); return rsAdapterReturn; } catch (SQLException ex) { while(ex != null) { if (ex.getSQLState() !=null && ex.getSQLState().equals("40001")) { System.out.println( "deadlock occur."); }else if(ex.getSQLState() !=null && (ex.getSQLState().equals("40XL1") || ex.getSQLState().equals("40XL2"))) { System.out.println( "lockwait timeout."); } ex.printStackTrace(); ex = ex.getNextException(); } loghelper.info("executeQuery", "end"); return null; } finally { // st.close(); } }
public ResultSet executeQuery(String querySQL, Connection con) throws SQLException { Connection conn = (Connection)con; Statement st = conn.createStatement(); ResultSet rs = null; try { rs = st.executeQuery(querySQL); return rs; } catch (SQLException ex) { while(ex != null) { ex.printStackTrace(); ex = ex.getNextException(); } return null; } finally { // here I can't use close() method // st.close(); } }
猜你喜欢
本站原创《复杂软件设计之道:领域驱动设计全面解析与实战》