SessionFactory接口:SessionFactory接口负责初始化Hibernate。它充当数据存储源的代理,并负责创建Session对象。这里用到了工厂模式。需要注意的是SessionFactory并不是轻量级的,因为一般情况下,一个项目通常只需要一个SessionFactory就够,当需要操作多个数据库时,可以为每个数据库指定一个SessionFactory。
/**
*@param str
*@param int
*更新String类型的字段
*/
public int updateDm_bm(String str){
int resu=0;
//获取会话工厂
SessionFactory sf=this.getSessionFactory();
//获取SessionFactory的会话
Session session=(Session)this.getSessionFactory().getCurrentSession();
sf.openSession();
//开始
事务
Transaction t=session.beginTransaction();
Query query =session.createQuery(str);
//提交
事务
resu=query.executeUpdate();
// Query.executeUpdate()方法返回的
整型值表明了受此操作影响
return resu;
}
此方法如果传入一条
数据修改语句。就可以直接执行返回成功与否的结果。
而此处的SessionFactory一旦声明,就不必去估计数据库连接的问题,很方便。