一、一级缓存机制与快照
一级缓存和快照是在Session创建后查询到数据时产生,销毁时消失,缓存为了不频繁为了同一请求频繁访问数据库,减少数据库查询次数,快照是为了保持数据库中书库与当前使用数据保持同步
二、对象的状态
分三种:临时状态、持久化状态、托管状态
- 临时状态:实体对象创建但是还没有使用
- 持久化状态:对象保存到数据库中后,就时save、update之类的执行之后
- 托管状态:保存完后,不再使用,丢给课回收机制
三、5种查询方式
1.OID查询
- a.get
通过类和OID进行查询--eg:session.get(User.class,10)
查找id为10的数据段,在执行该方法后就开始查找 - b.load
与get用法一样,不过在使用返回对象时才会去查询--eg:system.out.println(user.getid())
2.SQL语句查询:
- a.SQLQuery(一般不怎么用)
- b.用session中的dowork方法获取connect对象,和原生没区别了
3.HQL语句查询
- 与sql类似,把表中的字段换成了实体类类中属性,把表名换成了类名,通过调用<span session.creatquery(String hbl)。调用list()方法开始查询
4.QBC查询
- 直接传递一个类的值,eg--session.createCriteria(User.class),通过返回的Criteria限制查询条件。调用list()方法开始查询
网友评论