ORM引擎是WebAPI引擎生成系统的其中一个子模块,本章主要介绍ORM引擎的数据实体部分的设计。
数据实体
数据实体是指映射到数据库中某一个数据表的对象,对象的属性映射数据表的对应的字段,对象的属性数目与数据表字段数目一致。(如果对象包含2个以上数据表的字段映射时叫数据查询,这个部分以后再进行介绍)。
数据实体是执行插入、更新、删除、单表查询数据库操作的基本数据单位。
Xml映射文件格式(数据实体部分)
ORM引擎架构
XmlMappingEntity,XmlMappingEntityProperty类分别解析Xml映射文件,把Xml数据转成对象。
SqlDataAccesObject类负责处理某一数据库(MS SQL Server)的访问操作。
DAL(DataAccessLayer)静态类,只有该类是对外公开的,管理多个数据库的访问。
DAL(DataAccessLayer)功能的设计
公共部分
- LoadDbConfigurations:加载数据库配置,支持多数据库。
- GetConnectionKeys:获取数据库配置列表,用于客户端选择,进行数据库撤换。
- CheckDb:判断数据库是否存在。
- CreateDb:创建数据库。
- DeleteDb:删除数据库。
- RenameDb:重命名数据库。
- BackupDb:备份数据库。
- RestoreDb:还原数据库。
数据实体部分
- LoadMapping:加载数据实体的Xml映射文件。
- Create:创建数据实体,属性赋默认值,未插入到数据库的新对象。
- Insert:数据实体插入操作,如果包含自动递增字段,执行插入操作后,自动修改数据实体的对应的映射属性。
- Update:数据实体更新操作,支持只修改某几个数据字段。
- Delete:数据实体删除操作。
- DeleteAll:通过传入查询条件,删除所有相关的数据
- Accumulation:数据字段累加操作,例如:金额累加,执行类似Update {Table} Set [Due] = [Due] + @Range Where …的sql脚本,该操作在多用户并发修改金额时很有用。
- Find:查找单个数据实体,必须传入主键条件。
- Exist:判断数据实体是否存在。
- Count:通过传入查询条件,统计数据实体的数量。
- GetList:通过出入查询条件,获取数据实体列表(单表查询)。
分享到:
相关推荐
python利用元类和描述器实现ORM模型(csdn)————程序
基于Java,封装了hbase的底层api,提供了基于注解的ORM支持,只需定义实体类对象
《疯狂Workflow讲义——基于Activiti的工作流应用开发》还讲解了如何在实际企业应用中使用Activiti,并与其他流行的开源框架进行整合,包括企业应用开发所必需的Web Service、企业服务总线、规则引擎、IoC框架和ORM...
Grove——.NET中的ORM实现 Grove——.NET中的ORM实现
基于PHP7.1 +和PDO实现的ORM,支持多数据库,2.0版本主要特性包括: 基于PDO和PHP强类型实现 支持原生查询和查询构造器 自动参数绑定和预查询 简洁易用的查询功能 强大灵活的模型用法 支持预加载关联查询和延迟关联...
高级Hibernate4开发技术:ORM思想,hibernate介绍,hibernate.cfg.xml配置,hbm.xml映射文件详解,主键生成策略使用,PO对象状态及状态的转换分析、一级缓存,Hibernate数据检索技术,Hibernate高级映射技术,...
高级Hibernate4开发技术:ORM思想,hibernate介绍,hibernate.cfg.xml配置,hbm.xml映射文件详解,主键生成策略使用,PO对象状态及状态的转换分析、一级缓存,Hibernate数据检索技术,Hibernate高级映射技术,...
摘要:VB/C#.Net实体代码生成工具(EntitysCodeGenerate)【ECG】是一款专门为.Net数据库程序开发量身定做的(ORM框架)代码生成工具,所生成的程序代码基于面向对象、分层架构、ORM及反射+工厂设计模式等。支持.Net1.1...
《疯狂Workflow讲义——基于Activiti的工作流应用开发》还讲解了如何在实际企业应用中使用Activiti,并与其他流行的开源框架进行整合,包括企业应用开发所必需的Web Service、企业服务总线、规则引擎、IoC框架和ORM...
本资源提供了一套基于Java的Elasticsearch搜索引擎ORM框架的设计源码,包含769个文件,其中包括321个JavaScript脚本文件,182个Markdown文档,以及157个Java源代码文件。此外,还包括44个HTML页面文件,33个PNG图片...
java xml orm 工具 XMLUtil java XML orm toolkit
自己动手做框架——ORM,MVC,IOC框架及整合视频教程 源码
Myeclipse自动生成Hibernate配置文件及实体类映射ORM配置文件--hibernate方式
VB/C#.Net实体代码生成工具(EntitysCodeGenerate)【ECG】是一款专门为VB/C#.Net数据库程序员开发量身定做的(ORM框架)代码生成工具,所生成的代码基于面向对象、分层架构设计、ORM并参考微软Petshop中的经典思想,...
NetUML.DataEngine 数据引擎支持多数据库,数据访问引擎采用配置方式,类似ibatis.net底层原理,支持多数据库连接方式。将来可支持数据库读写分离,读写分离配置采用MVC路由机制。
1.包含源程序,数据库脚本。代码和数据库脚本都有详细注释。 2.课题设计仅供参考学习使用,可以在此基础上进行扩展完善 开发环境: Eclipse ,MYSQL,JDK1.7,Tomcat 7 涉及技术点: MVC模式、SpringMvc、Mybatis、...
主要介绍了django框架使用orm实现批量更新数据的方法,结合实例形式简单分析了Django基于orm操作数据库更新数据的相关实现技巧,需要的朋友可以参考下
实现Hibernate框架中一对一,一对多,多对多关系的单向和双向配置总结!
不用写任何代码,就可以对表完成增删改查;...支持MySQL、Oracle数据库,简单配置完成切换; 基于Spring Boot + Mybatis实现的通用增删改查服务API; 该模块提供了通用的数据库DDL操作接口和通用的业务数据表CRUD操作。
.Grove—— .Net下的ORM框架