`

自定义ORM系列(三)工具雏形及基本用法

 
阅读更多

引言

  本篇给大家介绍我这个工具的雏形结构,以及基本的用法,还请大家多提意见。

  初看起来,这个有点像NHibernate。说到这里,肯定有人要拍砖了。其实,我也知道。我这个不入流的东西,和NHibernate相比差远了。我开发这个东西的原因主要有两个:

  1)NHibernate太复杂了,学习了两个星期,觉得它太强大了。但是强大是用复杂做代价的,里面要学习的东西太多了,不敢轻易引入项目,因为很多原理不清楚,报错也不明确,所以不敢轻易在项目中使用。

  2)自己想练练手,顺便通过这个过程,也好深入继续深入学习一下NHibernate。因为在写这个工具的过程中,我会看NHibernate的源码,然后看他的源码调用关系,调用逻辑,在自己的工具中模仿它,通过模仿来学习提高。

正文

  开始正文吧。写上一幅我目前的工具类图。

  

  基本的调用关系,有点像NHibernate。

  给大家先贴一段使用的示例代码。

Custom ORM Code Demo
//初始化Session
ISessionsession=newConfiguration().Configure().BuildSessionFactory().OpenSession();
Orderorder
=newOrder();
Guidid
=order.OrderID=Guid.NewGuid();
order.ProductName
="seed1221002"+DateTime.Now.ToLongTimeString();
//添加
session.Save(order);
session.SubmitChange();
//获取
order=newOrder();
order
=session.Get(newGuid("6744C2AB-C780-4DAD-9089-DF166747640F"));
//事务操作
using(ITransactiontran=session.BeginTransaction())
{
try
{
session.Save(order);
order.ProductName
="seed1221003"+DateTime.Now.ToLongTimeString();
session.Update(order);
tran.Commit();
}
catch(Exceptionex)
{
tran.Rollback();
}
}

  内部具体的数据库操作,目前使用的是Enterprise Library V5.0,感觉使用企业库比较方便。后面的话,如果发现不合适,可以直接用原生的ADO.NET代替就可以了。

  代码:/Files/virusswb/BTFramework.rar

  结合我的 自定义ORM系列(一)利用attribute实现简单的reader=>entity和reader=>List<entity>映射自定义ORM系列(二)发现属性是否修改,有选择的持久化以及 胡乱说一下我对于 BO VO PO DTO 的理解中的思想,就可以实现一个完整的基于attribute的ORM小工具,以及有选择的持久化。还可能会极大的减轻系统的维护量。在后面我会将完整版的工具上传,我还会继续完善其他的功能,以及进行一些测试。

后话

  如果有哪位有心人,愿意看在下的代码,不嫌弃在下代码乱的话,可以帮我理理思路。因为,我觉得目前的代码结构不是很好,我不知道我这个在实际中使用的话,会遇到什么问题,在哪些地方还需要提高,还需要注意什么,或者说代码的结构那里需要调整?希望有缘人可以指点一二,当然了,胡乱说几句也可以,先谢过了。

  当然了,这个ORM工具我也会继续的完善,希望在下一个项目中可以实践一下。

分享到:
评论

相关推荐

    K-ORM 自定义ORM工具

    《K-ORM自定义ORM工具详解》 ORM(Object-Relational Mapping)是现代软件开发中的一种重要技术,它将数据库中的数据与...深入研究其内部实现和使用方法,可以帮助我们更好地理解和运用ORM技术,提升我们的编程技能。

    反射+注解自定义ORM

    在自定义ORM中,反射主要用于在运行时动态获取类的信息(如类名、字段、方法等),以及动态调用方法,创建对象等,这使得我们能够在不知道具体类的情况下操作类的成员。 2. **注解(Annotation)**: 注解是Java...

    Java自定义的类似ORM的数据库操作框架

    Java自定义的类似ORM的数据库操作框架是一种高效且灵活的数据访问解决方案,旨在简化数据库的交互过程,类似于流行的ORM(对象关系映射)框架,如Hibernate和MyBatis。ORM框架的核心理念是将数据库操作转化为面向...

    自定义Orm框架的实现

    首先,我们要理解ORM的基本原理。ORM的核心思想是将数据库中的表映射为Java对象,将表中的记录映射为对象的实例,这样就可以通过操作对象来间接操作数据库。在Hibernate中,这一映射关系通常通过XML配置文件或者注解...

    C#代码生成器源码-基于自定义ORM框架

    本文将详细探讨一款基于C#的代码生成器,其核心是利用自定义的ORM(对象关系映射)框架,与SQLServer数据库紧密结合,用于生成常规的三层架构代码和配置文件。通过深入理解这一工具,开发者可以更好地理解和应用这一...

    完整版Java web开发教程PPT课件 Java开发进阶教程 第17章 自定义orm框架(共11页).pptx

    通过这个完整的Java Web开发教程,开发者不仅能够学习到JavaScript、DOM操作、Servlet、JSP等基础知识,还能掌握如Spring、Spring MVC等高级框架的使用,以及自定义ORM框架的设计,从而具备构建复杂企业级Web应用的...

    mxDaoManager.zip 自定义ORM框架

    ORM(Object-Relational Mapping,对象关系映射)框架是一种编程技术,用于将关系数据库的数据映射到对象上,使得开发者可以使用面向对象的方式来操作数据库,而无需关心底层SQL语句的编写。`MXDaoManager` 是一个...

    SqlSugar ORM工具箱2.2.7z

    SqlSugar是一个在中国广泛使用的对象关系映射(ORM)框架,它极大地简化了.NET开发者与数据库交互的工作。ORM工具箱如SqlSugar,通过提供高级抽象,允许程序员以面向对象的方式处理数据库操作,而无需直接编写SQL...

    c#自定义orm链接sqlite数据库增删改查

    在C#编程中,ORM(对象关系映射)框架是一种常用的技术,它允许开发者使用面向对象的方式来操作数据库,而无需关心底层SQL语句的编写。本项目“c#自定义ORM链接SQLite数据库增删改查”是基于Dapper库进行扩展,通过...

    eform自定义表单

    **eform自定义表单**是北京方程软件推出的一款开源工作流解决方案,它专为程序员在工程开发中简化表单设计流程而设计。这款工具的出现,极大地提升了开发效率,减少了开发表单时的繁琐步骤,使得程序员可以更加专注...

    针对自己的框架 写的 orm自动工具

    在本主题中,我们讨论的是一个自定义的 ORM 工具,它专为作者自己的框架设计,旨在提高开发效率和代码的可维护性。 【描述】:虽然描述为空,但根据“博文链接:https://mojianpo.iteye.com/blog/1179698”可以推测...

    一款orm.net工具

    而`chm`文件则可能是一个帮助文档,包含工具的使用指南、API参考、示例代码等内容,帮助用户更好地理解和使用这款ORM工具。 学习和掌握ORM工具是现代.NET开发中的重要技能之一,它能提升开发效率,降低维护成本,...

    ORM框架ORM框架ORM框架ORM框架

    ORM(Object-Relational Mapping,对象关系映射)框架是一种软件技术,用于将关系数据库的数据映射到对象上,使得开发者可以使用面向对象的方式来处理数据库操作,而无需直接编写SQL语句。ORM框架的主要目标是简化...

    ORM的简单介绍及相应ORM工具Hibernate的使用规则

    对象关系映射的概念,及相应Hibernate的使用规范,同时通过实例展示到底什么是对象关系映射。

    C# ORM程序及实体生成工具

    在实际开发中,使用这样的C# ORM程序及实体生成工具,开发者可以快速构建数据库驱动的应用,专注于业务逻辑的实现,而不是繁琐的数据库操作代码。ORM框架通过抽象数据库操作,提高了代码的可读性和可维护性,同时...

    实现自己的ORM系列源码 - MiniORM

    这是我Blog(http://blog.csdn.net/RonoTian)中的系列文章《实现自己的ORM》系列的配套资源,如果你需要详细的了解MiniORM的相关实现,那请自己查看我Blog中相关文章。

    ORM自定义框架

    同时,良好的文档和社区支持将有助于用户更好地理解和使用这个自定义ORM框架。 通过理解并实现" MyOrm ",开发者不仅能深入理解ORM的工作原理,还能掌握如何构建自己的持久化框架,这对于提升数据库操作的效率和...

    ORM_数据持久层_生成工具

    这种工具通常与ORM框架一起使用,帮助开发者管理数据库的生命周期。 "jwork.xml"文件可能包含了ORM工具的配置信息,比如数据库连接字符串、实体类的定义以及映射规则等。开发者可以根据这个配置文件定制ORM工具的...

Global site tag (gtag.js) - Google Analytics