Fortify Scan问题修复-未释放资源:数据库

时间:2019-01-29 10:17:46

标签: java hibernate fortify hibernate-session

对于下一行,我如何避免这个问题

Query query = getSession().createQuery("my sql query");

Session session = getSession();
SQLQuery query = session.createSQLQuery("");

我的DAO实现中有几个查询,每次执行查询后我都无法关闭会话(如果不这样做,将不会创建连接池瓶颈或内存过度使用?)。
但是我需要解决此问题或提供适当的理由,以使其成为肯定的错误。

请指导

1 个答案:

答案 0 :(得分:0)

有几种选择:

  1. 您可以在FPR报告文件中将这些问题标记为“没有问题”,并将将来的扫描合并到基准审核中。合并后的文件中不会再出现相同的问题。有几种方法可以通过传递原始基准文件(第一次审核检查)来从命令行自动执行合并。
  2. 我认为您也可以在finally块中添加一个close session语句。仅在发生异常时执行。

我认为创建自定义规则在这里行不通,因为没有可用于处理的异味或会话关闭功能。