解剖实体框架(2)--实体框架的基本功能

一般的实体框架都包括以下一些功能:

1、与物理存储交互

原因很简单,数据不能总在内存里,最终还是要存起来,所以,实体框架的一个基本功能就是要解决与物理存储之间的交互问题。这里的物理存储主要包括文件和数据库系统,以文件作为实体的物理存储方式,虽然不是很普遍,但也有用武之地,一些很小的应用系统,表不多,数据之间的关系不是很复杂的情况下,也可以直接采用文件进行存储,没必要为这种很小的应用还附带上一个数据库。就是采用了数据库,有些配置信息也可以放在文件中。

以数据库作为实体的物理存储方式,是目前应用系统普遍采用的一种方式,因此一般的实体框架都需要支持与数据库进行交互的功能:

A)支持多种数据库,至少要支持几种主流的数据库系统(屏蔽数据库差异);

B)支持对数据库的基本操作(定义,新增,修改,删除,查询等)

C)支持数据库事务

D)支持缓存与数据库之间的数据同步(这条不是必须,但好的框架至少要预留对这种需求的扩展).

2、对实体的管理

对实体的管理以下一些功能是基本的:

A)对实体的新增,修改,删除和查询并将这些操作最终反映到数据库;

B)SQL语句支持(有些事情无法完全针对实体完成的时候,还是要预留这种功能)

C)事务支持(最终要反映到数据库事务上来,好的还会支持跨数据事务)

D)实体缓存服务(包括是否需要缓存,缓存机制,失效策略等),如果更进一步,还应该支持数据缓存加载条件设置(这种功能其实很简单,但目前的很多框架都没有这种功能)

E) 支持缓存还必须提供缓存与数据库的数据同步机制;

F)如果支持缓存,也必须提供并发冲突检测和处理机制;

有些功能还提供一些更强大的功能:

A)实体高级查询,比如关联查询,子查询等。例如ESQL跟SQL就很相似。

B)实体操作的批处理。

C)实体操作类的单例、多例模式支持

上面列的基本都是实体框架应该提供的一些基本功能,还有一些实体有效性检查之类的功能,可以集成在这里,也可以不集成在这里,但一些规则性的东西还是需要提供,比如以元属性方式提供校验规则等。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值