请问下:hibernate访问数据库,是在什么时候建立连接的?
我的代码里面有多个下面这样的数据库操作。
为了使用连接池,我想把建立连接那部分代码抽取出来,只在程序开始时运行一次。
请问,与数据库的连接是在运行下面那句代码时建立的?
public static void main(String[] args){
try {
SessionFactory sessionFactory;
//读入hibernate.properties中的配置信息
Configuration config = new Configuration();
//读入Customer.hbm.xml中的映射信息
config.addClass(InterestRate.class);
//一个sessionFactory对应一个数据库
sessionFactory = config.buildSessionFactory();
Session session = sessionFactory.openSession();
Transaction tx = null;
tx = session.beginTransaction();
List rates = session.createQuery("from InterestRate").list();
for (Iterator it = rates.iterator(); it.hasNext();) {
printCustomer((InterestRate) it.next());
}
tx.commit();
session.close();
} catch (Exception e) {
e.printStackTrace();
}
}