`

简单的ORM类

    博客分类:
  • c#
阅读更多

我们做程序开发的,最烦的就是写实体类,写数据持久化(ORM)的那些语句 

比如下面这个实例 
C# code 

//1.我们先写实体类 
//新闻实体类 
public class News 

   public int Id{get;set;} 
   public string Title{get;set;} 

//2.数据操作类 
//新闻数据操作类 
public class NewsDAL 

   public void Add() 
   { 
      //写sql语句 
      //写参数,执行sql 
   } 

//3.业务逻辑类 
//新闻数据操作类 
public class NewsBLL 

   public void AddNews() 
   { 
   } 

//4.然后在UI层绑定一个实体,调用NewsBLL.AddNews()方法 



尽管可能有某些工具帮我们生成实体 或者 DAL类,但是该工具不灵活,某些特殊的要求还是无法快速的实现。 

本人一直在思考实现这些的快速的方法,比如说用xml配置文件来表示实体与数据库的映射关系,然后后果往往是舍得其反,反而加重了程序员的负担,他还要来学习你这个配置文件是怎样定义的,扩展性也不好,比如说要同时插入两个实体等等,插入的时候用逻辑业务等 

我也用了一段时间nhibernate,发现这个框架太大,往往我们写的程序还没这个框架的体积大,而且nhibernate提供的功能过于庞大,不好上手等,参照nhibernate的特性,晚上突发奇想,模仿nhibernate写了一个orm的辅助类,分享一下,希望得到大家的意见和建议 

本类的功能分3个方面: 
1.定义实体的特性(如对应的表名 主键名 属性对应的列名) 
2.实体和数据库对象的相互转换 
3.简单实体的 CRUD操作 

 

 

本文转载自:http://www.iteye.com/topic/1116489

分享到:
评论

相关推荐

    自己写的orm辅助类

    自己写的orm辅助类 .定义实体的特性(如对应的表名 主键名 属性对应的列名 实体和数据库对象的相互转换 简单实体的 CRUD操作 QQ交流群60168829 欢迎C# ASP.NET 和SQL新手 老手 高手加入 谢谢

    轻型的ORM类Dapper

    Dapper是一个轻型的ORM类。代码就一个SqlMapper.cs文件,主要是IDbConnection的扩展方法,编译后就40K的一个很小的dll,Dapper支持主流数据库 Mysql,SqlLite,Mssql2000,Mssql2005,Oracle等一系列的数据库 支持多表...

    自己写的ORM辅助类

    本类的功能分3个方面: 1.定义实体的特性(如对应的表名 主键名 属性对应的列名) 2.实体和数据库对象的相互转换 3.简单实体的 CRUD操作

    Elasticsearch​的ORM工具orm4es.zip

    orm4es是一个Elastic... 例如:java -jar orm4es-0.0.1-SNAPSHOT.jar -H 192.168.1.100 -p 9300 -n Product -i product就可生成product.java类,你还可以对生成的类再次进行编辑。 标签:orm4es

    SqliteORM,一个很好的Sqlite ORM框架

    Sqlite ORM 是一个简单的C#类,对Sqlite的操作进行了封装,主要功能包括:表定义、生成,访问,更新等,其中,支持,多表的连接操作,语法类似Linq语法,使用非常方便,附加了使用说明文档。 例如,添加记录操作为...

    Simple-ORM, 一个简单的PHP类来访问你的MySQL记录.zip

    Simple-ORM, 一个简单的PHP类来访问你的MySQL记录 简单 ORM简单ORM是面向 PHP & ( 使用 MySQLi )的对象关系映射。 它提供了创建。检索。更新&删除记录的简单方法。这并不适合大型项目,因为它有额外的数据库交互比...

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

    自己定义的类似ORM的MySQL数据库增伤改查的框架,直接配置session就能使用,简单的增删改查不用再写sql,方便、灵活。

    AndroidORM解决方案RapidORM.zip

    持久类可以用它提供的模版生成,但是一旦使用了它的模版,持久类、DAO就不能随意去修改,扩展性不是很好。如果不使用它的模版,代码写起来就很繁琐。所以结合了两者重新写了一个 ORM:RapidORM 标签:...

    简单的java ORM映射-------旧的

    额.... 这个资源已经旧了 因为这个资源里面没有详细的文档 而且有些bug没有修正 这个组件的更新版本请大家移步到以下地址下载: http://download.csdn.net/source/2048329 还有这个资源的分数我设置为0

    一个简单的JavaORM框架寂寞消遣之作可供学习参考只有几百行代码。

    一个简单的Java ORM框架,如果你是新手,对MVC框架的实现感兴趣的话,可以看看,一共也就几个类非常简单。

    DFrame后台框架、ORM、C# ORM

    2:命名空间内部已集成简单的SQLHelper操作类。并对继承DFrame.Model.DBModel抽象类的实体提供lambda语句查询方法(目前只支持MSSQLServer数据库)。 lambda查询支持的方法有: 1: long Count() 2: List<TResult> To...

    基于MySQL-python封装的mysql ORM操作类+源代码+文档说明

    基于MySQL-python封装的mysql ORM操作类 > 1、配置数据库连接:在config.py里配置数据库连接 > 2、简单使用方法:参见test.py内容 > -------- 该资源内项目源码是个人的毕设,代码都测试ok,都是运行成功后才上传...

    Protheon ORM:适用于PHP应用程序的灵活简单的ORM库-开源

    ORM类提供了一个优雅,易于阅读且完整SQL解决方案,如下所示:$ res = $ customer-> fields(“ id,name”)-> first(4); foreach($ res as $ row)..... ProtheonORM是Protheon CMS软件包的开放源代码组件,...

    MySQL数据库在idea中的增删改查,JDBC简化,JDBC工具类封装,orm模式,数据库三层架构,JDBC事务

    本项目为一个简单的JDBC项目,包括:MySQL数据库在idea中的增删改查,JDBC简化,JDBC工具类封装,orm模式,数据库三层架构,JDBC事务 新建一个ProductManager的项目,实现利用ORM思想和三层架构以下功能: t_product...

    Simple-ORM:基于Java的应用程序的简单ORM(用于学习目的)

    简单的ORM描述这个项目是用Java开发的,目的是允许对象关系映射而无需复杂的事务处理和高级配置,它是出于教育目的而构建的。 使ORM的工作(尤其是初学者)更容易理解。安装通过maven,只需克隆并通过mvn clean ...

    极简智能的AndroidOrm框架MiniOrm-For-Android.zip

    MiniOrm-for-android 是一款简单,只能,灵活的android ORM框架,完全基于对象进行操作。主要帮助android程序员的快速开发。通过反射将查询的数据智能的转换成 Entity 。省去开发人员手动解析的时间。 功能特点...

    EzeOrm:一套简易java orm框架。暂只支持mysql

    EzeOrm 是一个使用java 编写的简易ORM(Object Relational Mapping 对象关系映射)框架。 关于ORM框架的简介请参考 。帮助程序员更加简单的将自己的java 程序与数据库相连接。 数据库支持 暂只支持 Mysql 项目状态 ...

    redux-orm:一个小型,简单且不可变的ORM,用于管理Redux存储中的关系数据

    Redux-ORM 安装 ...您可以使用从Model扩展的ES6类语法声明Model 。 您需要在Model上声明所有非关系字段,并且建议声明所有数据字段,因为在实例化Model时库不必重新定义getter和setter。 Redux-ORM除

    ORM框架-VB/C#.Net实体代码生成工具(EntitysCodeGenerate)【ECG 4.3】

    VB/C#.Net实体代码生成工具(EntitysCodeGenerate)【ECG】是一款专门为VB/C#.Net数据库程序员开发量身定做的(ORM框架)代码生成工具,所生成的代码基于面向对象、分层架构、ORM,使用改进的抽象工厂设计模式及反射机制...

    支持多数据库的ORM框架ef-orm.zip

    简单直接的API 框架的API设计直接面向数据库操作,不绕弯子,开发者只需要数据库基本知识,不必学习大量新的操作概念即可使用API完成各种DDL/DML操作。 最大限度利用编译器减少编码错误的可能性 API设计和元数据...

Global site tag (gtag.js) - Google Analytics