Session在hibernate中表示连接。下面介绍他的常用方法。
在使用前先把最重要的说了。打开API,发现在session中基本所有的方法(包括获得session的方法)都会抛出异常HibernateException,HibernateException异常为一个运行时异常,所以我们在程序中不处理编译也不会报错。但是因为我们在结尾处要一定要关闭session,所以必须把他们放在try里
1.HibernateSessionFactory.getSession()
获得session
2.close()方法
用于关闭session,在关闭前先判断一下他是不是为空,必须放在finally中
if(session!=null)
session.close();
3.createQuery()方法
用于创建Query
4.get(Class clazz,Serializable id)方法
注意get方法只能根据主键值查询,返回的是对象,也就是说他只能查询一条记录
TUser user=(TUser)session.get(TUser.class,3001);
5.load(Class clazz,Serializable id)方法
使用频率较低,他与get是由区别的
6.update(Object object)
更新操作,如果对象中有几个实例变量没有设置值,他会更新为默认值,所以推荐更新使用HQL的方式
7.delete(Object object)
删除操作,可以只设置主键值
8.save(Object object)
向数据库中插入数据
9.beginTransaction()
启动事务,用于update,delete,insert
10.saveOrUpdate(Object object)
在不确定应该插入还是更新的情况下使用它
11.getNamedQuery(String queryName)
用于命名查询,在配置文件中定义好然后再这里调用