首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >静态代码分析评论

静态代码分析评论
EN

Stack Overflow用户
提问于 2014-10-20 12:43:22
回答 1查看 223关注 0票数 0

我用静态代码分析器扫描了我的代码,得到了未发布的资源:数据库错误。我正在关闭以下所有db连接,这是我的代码的快照。

代码语言:javascript
复制
public String methodInDAO(Bean bean) throws SQLException ,Exception
{

    Session session = null;
    Connection connection = null;
    ResultSet resultSet1 = null;
    CallableStatement callableStatement = null;

    try {
         connection = dataSource.getConnection();
         callableStatement = connection.prepareCall(query);
         resultSet1 = callableStatement.execute();
        //code operations
   } finally {
        if(null != callableStatement)
            callableStatement.close();

        resultSet1 = null;
        callableStatement = null;

        if(null != connection)
            connection.close();

        if (null != session)
            session.close();

    }

    return returnOutput;
}

所有抛出的异常都在服务层处理。有人能建议哪里没有发布数据源吗?

EN

回答 1

Stack Overflow用户

发布于 2014-10-20 12:46:39

如果您的JDBC驱动程序支持JDBC 4.1,则可以使用试着用资源

代码语言:javascript
复制
try (connection = dataSource.getConnection();
     callableStatement = connection.prepareCall(query)) {
  results = callableStatement.execute();
  // code operations
}

使用try-with-resources语句自动关闭ConnectionResultSetStatement类型资源的能力。

添加到JDBC 4.1中。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26466009

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档