标签:
以前用JDBC处理多个Statement的时候,总会因为异常而无法完美的解决Statement正常关闭,今天无意看到老外写了以下一段代码,和大家分享一下:
- private PreparedStatement psStmt1;
- private PreparedStatement psStmt2;
- private PreparedStatement psStmt3;
- ........................
- ........................
- /* 关闭代码 */
- public void cleanup() throws SQLException {
- SQLException exception = null;
- if (psStmt1 != null) {
- try {
- psStmt1.close();
- } catch (SQLException e) {
- exception = e;
- } finally {
- psStmt1 = null;
- }
- }
- if (psStmt2 != null) {
- try {
- psStmt2.close();
- } catch (SQLException e) {
- if (exception != null) e.setNextException(exception);
- exception = e;
- } finally {
- psStmt2 = null;
- }
- }
- if (psStmt3 != null) {
- try {
- psStmt3.close();
- } catch (SQLException e) {
- if (exception != null) e.setNextException(exception);
- exception = e;
- } finally {
- psStmt3 = null;
- }
- }
- if (exception != null) {
- throw exception;
- }
- }


档案
日志
相册
视频



评论
想第一时间抢沙发么?