使用Session进行CRUD操作.ppt

使用Session进行CRUD操作.ppt

ID:52510105

大小:376.00 KB

页数:16页

时间:2020-04-09

使用Session进行CRUD操作.ppt_第1页
使用Session进行CRUD操作.ppt_第2页
使用Session进行CRUD操作.ppt_第3页
使用Session进行CRUD操作.ppt_第4页
使用Session进行CRUD操作.ppt_第5页
资源描述:

《使用Session进行CRUD操作.ppt》由会员上传分享,免费在线阅读,更多相关内容在PPT专区-天天文库

1、使用Session进行CRUD使用Hibernate的步骤7、关闭Session6、提交事务5、持久化操作save/update/delete/get4、开始一个事务3、打开Session1、Configuration2、创建SessionFactory执行过程ConfigurationSessionFactorySessionTransaction创建创建开始savedeleteupdategettx.commit()session.close()执行Hibernate.cfg.xmlHouse.cfg.xmlUser.hbm.xml结束创建

2、和销毁都相当耗费资源,通常一个系统内一个数据库只创建一个类似于JDBC中的Connection添删改等持久化操作ConfigurationConfiguration类的主要作用就是从配置文件hibernate.cfg.xml读取配置信息,如数据库的信息、定位映射文件的位置()用法:Configurationcg=newConfiguration().config();SessionFactorySessionFactory的设计使用了工厂模式,用户程序可以从工程类S

3、essionFactory中取得Session的实例。设计者的意图是让它能在整个应用中共享。典型的说,一个项目通常访问一个数据库,只需要一个SessionFactory。用法,通过Configuration实例构建SessionFactory:SessionFactorysf=cg.buildSessionFactory();SessionFactory的创建和销毁都较耗费系统资源SessionSession是持久层操作的基础,相当于JDBC中的Connection。使用Session对象可以进行数据的CRUD操作。Session对象由工厂类S

4、essionFactory创建:Sessionsession=sf.openSession();Session可以看作是持久化对象的缓冲区,Hibernate能检测到Session对象中的持久化对象的改变,并刷新到数据库。代码优化编写HibernateUtil类,将一些初始化工作(读配置信息、创建SessionFactory、获取Session等)包装起来,在做持久化操作前调用工具类的获取Session对象方法即可。注意处理异常。在finally{}块中关闭Session。使用Session进行CRUD操作添加(保存)数据:Session的sa

5、ve(object)方法。该方法可以将对象的属性放到PreparedStatement中,然后执行insert语句。简单查询:Session的get()或load()方法,根据给定的OID从数据库中加载一个持久化对象。删除数据:Session的delete(object)方法。该方法可以从数据库中删除一个对象对应的数据。修改数据:Session的update(object)方法。当对一个对象执行update()操作时,如果数据库中不存在这个对象对应的记录,则将抛出异常。在控制台显示执行的SQL语句:

6、">true对象的状态瞬时状态:数据库中无记录,与session也无关,比如刚new出来。持久状态:数据库中有对应记录,与session相关。此状态下,对象的变化Hibernate可以检测到。比如:在save()之后更新了user的属性,然后才commit(),save()之后所做的修改也能更新到数据库中。脱管状态:数据库中有对应记录,但与session无关。比如session已关闭,此时user的改变不会影响到数据库。对象状态userusersession瞬时持久user脱管save()commit()session.c

7、lose()

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。