十六、Hibernate中的两大配置文件
*.hbm.xml:主键生成策略,映射关系,一对多,的关系。
Hibernate.cfg.xml:方言(用哪个),连接信息,包含*.hbm.xml内容,映射 文件,也可以配事务。
十七、Hibernate事务处理
开启事务 session.beginTransaction();
执行相关的操作,如果成功则session.getTransaction().commit();
执行操作失败则 session.getTransaction.rollback();
十八、Hibernate的三种状态以及状态的转换
Transient(临时)
new 一个初始化对象后,并没有在里保存数据,处于临时状态;
Persistent(持久化)
当执行save()方法,调用session.close()方法之前,内存中的对象与有对应关系处于持久化状态;
Detached(托管/游离)
当执行session.close()之后,处于托管状态;
状态的转换
处于托管状态下,调用update()方法后,转换为持久化状态;
在持久化状态下,执行delete()方法后,转换为临时状态;
在未初始化对象之前,调用get(),load(),find(),iterate()之后,直接进入持久化 状态。
十九、分页步骤
①前台封装一个显示分页的组件
②查询总条数
③后台封装分页工具类,计算开始位置、结束位置、总页数
④后台写支持分页的sql语句
⑤前台包含分页组件,实现分页效果
注意:
查询总条数的where和查询列表信息的where条件要保证一致。
二十、hibernate缓存概述
hibernate分为一级缓存即session缓存也叫事务级别的缓存以及
二级缓存sessionFactory即应用级别的缓存,还有查询缓存即三级缓存.
一级缓存的生命周期和session的生命周期保持一致,
hibernate默认就启用了一级缓存,
不能将其关闭,可以通过session.clear()和session.evict(object)来管理一级缓存。其中get,load,iterate都会使用一级缓存,一级缓存缓存的是对象。
二级缓存的生命周期和sessionFactory的生命周期保持一致,可以跨session,被多个session共享,hibernate3默认开启二级缓存,也可以手动开启并指定缓存插件如ehcache,oscache
等。二级缓存也只能缓存对象。
三级缓存也叫查询缓存,查询缓存是针对普通属性结果集的缓存,
对实体对象的结果集只缓存id。对query.list()起作用,query.iterate不起作用,也就是query.iterate不使用查询缓存
二十一、Ssh的概述:
ssh是web开发中常见的一种框架
s-struts
s-spring
h-hibernate
其中struts在框架中充当控制器,实现MVC,主要用来处理用户的请求,和跳转页面。使项目结构清晰,开发者只需要关注业务逻辑的实现即可。jsp中注释代码
spring在ssh充当粘合剂,粘合struts-sping-hibernate,主要用来进行事物的控制,
hibernate-充当持久层,主要用它来与交互,提高开发效率,减轻程序员sql控制要求,而且hibernate通过反射机制,有灵活的映射性,还支持各种关系,,一对多,多对多。
在进行ssh整合的时候,我们应该注意:
1. Action继承于ActionSupport
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-65658-5.html
同我们一样
也是事实
赚中国人的钱拿去给美国人花
这充分说明我国強大的国防能力