介绍几种ORM框架

【前言】
    在进行IToo项目的时候就知道了一点EF的东西,后来在学习ssh商城的时候接触了hibernate,虽然其实一种在.NET环境下,另外一种在java环境下,但是基本原理都是差不多!都是一种ORM框架!
【内容】
    ORM(object relation mapping) 对象关系映射关系 ,面向对象的对象模型和关系型数据之间的相互转换。基于关系型数据库的数据存储,实现一个虚拟的面向对象的数据访问接口。理想状态下,基于一个这样一个面向对象的接口,持久化一个oo对象应该不需要了解任何关系型数据库存储的数据实现细节。


  

【ORM框架形式】
1.EF(Entity framework)实体框架:ado.net一组支持开发面向数据的软件应用程序的技术。微软的一个ORM框架

   其实在上图中我们可以看出来使用了ORM的框架,使用的是强制类型,不容易出现错误,直接实现了由表实体到表的操作,而没有使用的ORM框架,我们需要数据库访问驱动层,Ado.NET操作数据,是一种弱类型的操作,非常容易出现错误。其实ORM框架的底层代码也是ADO.NET,只不过这些代码是封装好了的,直接可以被用户使用,非常方便!
2.linq to sql
     其实在ORM框架除了EF映射,还有linq to sql,注意到这一块是因为在vs中创建EF映射的下面还有一个叫做linq to sql,其实这也是一种ORM的框架,只是适用于一些轻型的,小的ORM适用;感兴趣的可以尝试一下!相关访问博文:http://www.cnblogs.com/yukaizhao/archive/2010/05/13/linq_to_sql_1.html
  
3.CYQ.Data 自动化编程框架
   这个框架其实也是在EF的原理基础之上通过改编形成的一种ORM框架,详情请看:
http://www.cnblogs.com/cyq1162/p/5634414.html
4. NHibernate 
   NHibernate是一个面向.NET环境的对象/关系数据库映射工具。对象/关系数据库映射(object/relational mapping,ORM)这个术语表示一种技术,用来把对象模型表示的对象映射到基于SQL的关系模型数据结构中去。所以NHibernate与Entity
 Framework是很相近的。
   其实在敲ssh商城的时候我就一直遇到一个名词:数据持久化,当时一直不太明白到底是什么意思,后来在学习这一块基础的时候发现:数据持久化(PO)就是将内存中的数据模型转换为存储模型,以及将存储模型转换为内存中的数据模型的统称.数据模型可以是任何数据结构或对象模型,存储模型可以是关系模型、XML、二进制流等。cmp和Hibernate只是对象模型到关系模型之间转换的不同实现。
 

猜你喜欢

转载自blog.csdn.net/xulong5000/article/details/90752615