持久化与持久层
1、持久化
数据持久化
- 持久化就是将程序的数据在持久状态和瞬时状态转化的过程
- 内存:断电即失
- 数据库(jdbc),io文件持久化
- 生活:罐头
为什么需要持久化?
- 有一些对象,不能让它丢失
- 内存太贵
理解:
- 1.在一定周期内保持不变就是持久化,持久化是针对时间来说的。
- 2.数据库中的数据就是持久化了的数据,只要你不去删除或修改。
- 3.比如在IE浏览器中一次Session会话中Session对象变量也是不变的,是Session容器中持久化。
- 4.对象持久化的方式有很多种,根据周期不同有,page,Session,Application。
- 5.对象序列化机制需要将对象的状态保存到文件中,而后能够通过读入对象状态来重新构造对象,恢复程序状态,
- 6.对象序列化的过程是对象持久化的方法之一,把对象保存到文件中。
2、持久层
dao层 server层 controller层
-
- 将内存中的数据保存到关系型数据库的过程称为持久化。
-
- 持久化层的构成
事务(ACID)
- A:atomicity原子性。一个事务是一个不可分割的工作单位,事务中包括的操作要么都做,要么都不做。
- C: consistency一致性。事务必须是使数据库从一个一致状态变到另一个一致性状态。
- I: isolation隔离性。一个失误的执行不能被其他事务干扰。即一个事务内部的操作及使用的数据对并发的其他事务是隔离的,并发执行的各个事务之间不能互相干扰。
- D: durability持久性。持久性也称永久性,指一个事务一旦提交,它对数据库中的数据的改变就应该是永久性的。
数据的安全性(遵守约束规则)
完整性
数据完整性指数据的精准性和可靠性。它是防止数据库中存在不符合语义规定的数据和防止因错误信息的输入输出造成无效操作或错误信息而提出的。数据完整性分为四类:实体完整性、域完整性、参照完整性、用户自定义完整性。 - 对象关系映射(O/R Mapping)的规则
实体类映射表,实体类的属性映射表的字段。
实体类对象映射表的记录。
实体对象的关联关系映射表的关联关系。
三大范式
1NF:属性不能分割
2NF:在1NF的基础上,所有属性都依赖于主键属性(主键约束)
3NF:在2NF的基础上,将不依赖于主键的属性分离并设置关键约束(外键约束)
本文来自博客园,作者:Cn_FallTime,转载请注明原文链接:https://www.cnblogs.com/CnFallTime/p/16023178.html