最近再看hibernate里面session的概念以及使用,它的两种获取方式和使用基本都明白了,但是现在有个问题,是关于session关闭的,请看下面代码片段
[code="java"]
Configuration config = new AnnotationConfiguration().configure();
SessionFactory sessionFactory = config.buildSessionFactory();
for(int i=0;i<500;i++){
Session session = sessionFactory.openSession();
session.createCriteria(SysConfig.class).list();
//session.close();
}
[/code]
这里我开了500个session,每个都做了一次数据库的查询,而且都没有执行关闭,为何不报数据库的连接异常,我把连接数提升到5000照样正常执行,请问数据库连接可能自己释放吗?
又 如果这个方法操作结束后,session对象被JVM回收了,连接会不会自动被释放呢?