AgileEAS.NET之ORM访问器
/// <summary> /// 定义ORM访问器接口。 /// </summary> public interface IOrmAccessor : IOrmEnvironment { /// <summary> /// 保存数据实体。 /// </summary> /// <param name="entity">数据实体。</param> void Save(IEntity entity); /// <summary> /// 保存数据表。 /// </summary> /// <param name="table">表。</param> void Save(ITable table); /// <summary> /// 保存数据表。 /// </summary> /// <param name="table">表。</param> /// <param name="force">是否强制同步到数据库。</param> void Save(ITable table,bool force); /// <summary> /// 保存数据表。 /// </summary> /// <param name="table">表。</param> /// <param name="force">是否强制同步到数据库。</param> /// <param name="transaction">数据同步过程中是否使用事务。</param> void Save(ITable table, bool force, bool transaction); /// <summary> /// 保存数据架构。 /// </summary> /// <param name="schema">架构。</param> void Save(ISchema schema); /// <summary> /// 保存数据架构。 /// </summary> /// <param name="schema">架构。</param> /// <param name="force">是否强制同步到数据库。</param> void Save(ISchema schema, bool force); /// <summary> /// 保存数据架构。 /// </summary> /// <param name="schema">架构。</param> /// <param name="force">是否强制同步到数据库。</param> /// <param name="transaction">数据同步过程中是否使用事务。</param> void Save(ISchema schema, bool force, bool transaction); /// <summary> /// 插入数据实体。 /// </summary> /// <param name="entity">实体。</param> void Insert(IEntity entity); /// <summary> /// 修改数据实体。 /// </summary> /// <param name="entity">实体。</param> void Update(IEntity entity); /// <summary> /// 删除数据实体。 /// </summary> /// <param name="entity">实体。</param> void Delete(IEntity entity); /// <summary> /// 删除数据表。 /// </summary> /// <param name="table">数据表。</param> /// <remarks> /// 本方法相当于数据批量删除,一次性删除多条记录。 /// </remarks> /// <remarks>删除的记录数。</remarks> int Delete(ITable table); /// <summary> /// 根据条件删除数据表中记录。 /// </summary> /// <param name="table">数据表。</param> /// <param name="condition">数据过滤条件。</param> /// <remarks>删除的记录数。</remarks> int Delete(ITable table, Condition condition); /// <summary> /// 删除数据架构。 /// </summary> /// <param name="schema">架构。</param> /// <remarks> /// 本方法相当于数据批量删除,一次删除多表多条记录。 /// </remarks> void Delete(ISchema schema); /// <summary> /// 刷新数据实体。 /// </summary> /// <param name="entity">实体。</param> /// <returns>数据库中存在指定的数据体则返回true。</returns> bool Refresh(IEntity entity); /// <summary> /// 查询数据实体。 /// </summary> /// <param name="entity">实体。</param> /// <returns>数据库中存在指定的数据体则返回true。</returns> bool Query(IEntity entity); /// <summary> /// 判读实体是否存在于数据库。 /// </summary> /// <param name="entity">实体。</param> bool ExistsInDb(IEntity entity); /// <summary> /// 表查询。 /// </summary> /// <param name="table">表。</param> void Query(ITable table); /// <summary> /// 表查询。 /// </summary> /// <param name="table">表。</param> /// <param name="top">Top查询。</param> void Query(ITable table,int top); /// <summary> /// 表查询。 /// </summary> /// <param name="table">表。</param> /// <param name="condition">数据查询条件。</param> void Query(ITable table, Condition condition); /// <summary> /// 表查询。 /// </summary> /// <param name="table">表。</param> /// <param name="condition">数据查询条件。</param> /// <param name="top">Top查询。</param> void Query(ITable table, Condition condition, int top); /// <summary> /// 查询数据表。 /// </summary> /// <param name="table">表。</param> DataTable GetDataTable(ITable table); /// <summary> /// 查询数据表。 /// </summary> /// <param name="table">表。</param> /// <param name="top">Top查询。</param> DataTable GetDataTable(ITable table, int top); /// <summary> /// 查询数据表。 /// </summary> /// <param name="table">表。</param> /// <param name="condition">数据查询条件。</param> DataTable GetDataTable(ITable table, Condition condition); /// <summary> /// 查询数据表。 /// </summary> /// <param name="table">表。</param> /// <param name="condition">数据查询条件。</param> /// <param name="top">Top查询。</param> DataTable GetDataTable(ITable table, Condition condition, int top); } }
/// <summary> /// 缓存访问器接口。 /// </summary> /// <remarks> /// 为ORM对象提供缓存查询能力。 /// </remarks> public interface ICacheAccessor : IOrmEnvironment { /// <summary> /// 缓存刷新实体。 /// </summary> /// <param name="entity">实体。</param> void CacheRefresh(IEntity entity); /// <summary> /// 表缓存查询。 /// </summary> /// <param name="table">表。</param> void CacheQuery(ITable table); /// <summary> /// 表缓存查询。 /// </summary> /// <param name="table">表。</param> /// <param name="top">Top查询。</param> void CacheQuery(ITable table, int top); /// <summary> /// 表缓存查询。 /// </summary> /// <param name="table">表。</param> /// <param name="condition">数据查询条件。</param> void CacheQuery(ITable table, Condition condition); /// <summary> /// 表缓存查询。 /// </summary> /// <param name="table">表。</param> /// <param name="condition">数据查询条件。</param> /// <param name="top">Top查询。</param> void CacheQuery(ITable table, Condition condition, int top); /// <summary> /// 缓存查询数据表。 /// </summary> /// <param name="table">表。</param> DataTable GetCacheDataTable(ITable table); /// <summary> /// 缓存查询数据表。 /// </summary> /// <param name="table">表。</param> /// <param name="top">Top查询。</param> DataTable GetCacheDataTable(ITable table, int top); /// <summary> /// 缓存查询数据表。 /// </summary> /// <param name="table">表。</param> /// <param name="condition">数据查询条件。</param> DataTable GetCacheDataTable(ITable table, Condition condition); /// <summary> /// 缓存查询数据表。 /// </summary> /// <param name="table">表。</param> /// <param name="condition">数据查询条件。</param> /// <param name="top">Top查询。</param> DataTable GetCacheDataTable(ITable table, Condition condition, int top); }
<object name="MasterDbConnection" assembly="EAS.Data" type="EAS.Data.Access.OleDbConnection" LifestyleType="Singleton"> <property name="ConnectionString" type="string" value="..." /> </object> <object name="OrmAccessor" assembly="EAS.Data" type="EAS.Data.ORM.OrmAccessor" LifestyleType="Singleton"> <property name="DbConnection" type="object" value="MasterDbConnection" /> </object> <object name="CacheAccessor" assembly="EAS.Data" type="EAS.Data.ORM.CacheAccessor" LifestyleType="Singleton"> </object>
<object name="MasterDataAccessor" assembly="EAS.Distributed.WebServiceClient" type="EAS.Distributed.WebServiceClient.DataAccessor" LifestyleType="Singleton"> <constructor-arg index="0" type="string" value="http://vm2003/Distributed/DataAccessService.asmx" /> </object> <object name="MasterRMIAccessor" assembly="EAS.Distributed.WebServiceClient" type="EAS.Distributed.WebServiceClient.RMIAccessor" LifestyleType="Singleton"> <constructor-arg index="0" type="string" value="http://vm2003/Distributed/RMIService.asmx" /> </object> <object name="OrmTranser" assembly="EAS.Distributed.WebServiceClient" type="EAS.Distributed.WebServiceClient.OrmAccessor" LifestyleType="Singleton"> <property name="DataAccessor" type="object" value="MasterDataAccessor" /> <property name="RMIAccessor" type="object" value="MasterRMIAccessor" /> </object>

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
Linux守护进程--依然是进程
在linux中,服务是一种特殊的进程,可以说它和用户无关,它的作用不是完成用户任务,而是进行一些管理类的操作或者通用的服务类操作,实际上linux的服务就是一个进程,也仅仅是一个进程。 在linux中,服务叫做守护进程,和windows一样,它也执行和具体用户任务无关的支撑性质的任务,可是不同于windows服务复杂的架构,linux守护进程却是一个普通的进程,除此之外它的巧妙在于它是如何成为服务的。在linux中,运行着很多的服务器程序,实际上linux很大意义上就是服务器操作系统。在linux中,终端的意义更大一些,它可以等同于一个shell,负责着一个会话,linux的进程体系架构之一fork/exec机制可以导出shell的重要性,shell就好像一个原点,任何迷路的羔羊都不会走得太远。终端是用户来登录的,它控制着该用户的行为,实际上它可以被看作是该用户的代理。在linux中,和用户终端没有关系的支撑类进程就是守护进程,于是守护进程成了一类相对特殊的进程,只是相对特殊,在业务意义上的特殊,就进程本身而言,它没有什么 特殊的。linux的进程体系架构之二进程组/会话期使得守护进程...
- 下一篇
linux的lsm--简单高效并且周到(机制和策略)
lsm是linux可加载的安全模块,它非常简单,这个机制又一次体现了linux内核的高度可定制特性,它的效率很高,不会带来很大的开销,这一切归功于内核考虑的周到以及内核架构的高级 如果你了解linux的netfilter,你是否会十分崇拜它的设计者呢,反正我真的很惊叹,深深地挖掘一下内核会发现有一个类似的东西更加全面的做了和netfilter相似的事情,这就是lsm,关于lsm具体的事情比如接口,编程规范本文不谈,本文还是谈它的架构思想。 本文转自 dog250 51CTO博客,原文链接:http://blog.51cto.com/dog250/1273427
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- CentOS7安装Docker,走上虚拟化容器引擎之路
- Docker安装Oracle12C,快速搭建Oracle学习环境
- SpringBoot2全家桶,快速入门学习开发网站教程
- CentOS7设置SWAP分区,小内存服务器的救世主
- CentOS7,CentOS8安装Elasticsearch6.8.6
- Hadoop3单机部署,实现最简伪集群
- SpringBoot2更换Tomcat为Jetty,小型站点的福音
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- SpringBoot2配置默认Tomcat设置,开启更多高级功能