永发信息网

hibernate 对象的持久化是什么意思

答案:1  悬赏:0  手机版
解决时间 2021-04-06 13:49
hibernate 对象的持久化是什么意思
最佳答案
持久化(Persistence),即把数据(如内存中的对象)保存到可永久保存的存储设备中(如磁盘)。持久化的主要应用是将内存中的对象存储在关系型的数据库中,当然也可以存储在磁盘文件中、XML数据文件中等等。

关键就是内存的数据会丢失,所以我们要把它保存在存储设备中,以便下次需要的时候可以再把数据取出来

其实说白点 就是把数据存到硬盘上不会丢失的地方。

1.应用程序层次结构演变
这里本来应该有张描述应用程序结构演变的图,可是CSDN在这里上传不了,所以没有传上来.
纵观几十年的计算机应用软件的演变过程,应用程序逐渐由单层体系结构发展为多层体系结构。最初应用软件只是在大型机上的单层应用程序,大都采用文件系统存
储数据。20世纪70年代,随着数据库的普及,原来的单层结构发展为双层结构。在双层结构中,实现了数据存放与应用程序的分离。但是,负责用户界面交互的
代码与业务逻辑混杂在一起,一个小的系统尚可以维护但是对于企业级的应用,长期的维护就是一件十分困难的事情。因此,三层的体系结构应运而生。在三层结构
中,把原来的应用程序层分成了视图层和业务逻辑层、数据库层维持不变。随着软件行业的蓬勃发展,人们感觉这样频繁的操作数据库和大量的底层代码的重复书写
极大的浪费了程序人员的心血,Hibernate,Spring,等框架的应运而生了。

在Hibernate中又将原来原业务逻辑层分成了业务逻辑层和持久层。(现在主流的分层结构依然是三层结构).
2.什么是持久化? 为什么要持久化?

1.什么是持久化?
本人找了好多文章都没有找到满意的答案,最后是从孙卫琴写的《精通Hibernate:Java对象持久化技术详解》中,看到如下的解释,感觉还是比较完整的。摘抄如下:

狭义的理解:
“持久化”仅仅指把域对象永久保存到数据库中;广义的理解,“持久化”包括和数据库相关的各种操作。


保存:把域对象永久保存到数据库。


更新:更新数据库中域对象的状态。


删除:从数据库中删除一个域对象。


加载:根据特定的OID,把一个域对象从数据库加载到内存。


查询:根据特定的查询条件,把符合查询条件的一个或多个域对象从数据库加载内在存中。

2.为什么要持久化?
持久化技术封装了数据访问细节,为大部分业务逻辑提供面向对象的API。


通过持久化技术可以减少访问数据库数据次数,增加应用程序执行速度;

● 代码重用性高,能够完成大部分数据库操作;


松散耦合,使持久化不依赖于底层数据库和上层业务逻辑实现,更换数据库时只需修改配置文件而不用修改代码。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
你我相隔那么远,那年那天可相见,可会改变?
什么是比差法?
单选题从世界城市化进程和特点来看,我国的城
AMD860k 和 AMD870k哪个好?
爱度一级冷榨亚麻籽油用英语怎么说
以字母E开头的名人有哪些?
卓越非凡的意思,有没有卓越非凡这个词语,怎么
狼子野心(7分)有富室偶得二小狼,与家犬杂
幼儿园里为什么要探究自主性游戏
白马俗指白马王子,并非指马什么成语
john goes to school (on foot)括号提问
跟剧歌词找歌名
不思议迷宫冰霜女王怎么样 冰霜女王冈布奥技
陕北的山祁玉江①陕北真是一个神奇而美妙的地
不可意思的意思是什么,"驱除鞑虏,恢复中华,建
推荐资讯
键盘乱码怎么解决
天龙八部89级最高可以学几级工艺和缝纫,可以
山西到广州火车票多少,现在从沈阳到山西的火
1.小刚和小强从A,B两地同时出发,小刚骑自行
三菱GT2000车架号在哪位置要审车找不到车架号
唐诗出塞中的将怎么读,为什么唐诗三百首里面
单选题17世纪,英国走上了对外扩张的道路,下
筛网在cad中 怎么表达出来
STIGA哪款乒乓球纯木底板好用?
李商隐含有荷红的诗词,《红楼梦》中关于李商
如下面左图,导体a向右运动时可以产生感应电
荆州市出入境管理 护照丢了怎样补办(湖北 荆
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?