我所知道的ORM 技术小计

1  Nhibernate  没在实际项目用过
原因:用的比较多,资料也比较好找。
2  Castle ActiveRecord
原因: 不用配置对象的XML文件,这点比Nhibernate爽
3  EntityFramework
原因:微软的东西

4  mybaits.net 没有见过


5 网上发现的 没有见过

http://www.cnblogs.com/humble/archive/2011/12/24/2300650.html

相关学习资料

http://blog.csdn.net/zxc22436/article/details/6875220

 这是书上的 LINQ to Entities、LINQ to SQL、NHibernate、LLBLGen Pro、SubSonic、WilsonORM、或者基本的ADO.NET
DataReaders、DataSets

1   Nhibernate 一家大型房地产集团的项目见到过(朋友的项目)

2  Castle ActiveRecord 

http://terrylee.cnblogs.com/archive/2006/04/03/365762.html 摘抄

如果你用过NHibernate,一定会对在NHibernate中编写.hbm.xml文件印象深刻,我也是。而在Castle ActiveRecord中,我们不用再为编写繁冗复杂的映射文件而头疼,ActiveRecordCastle中提供的一个数据访问框架,它在底层封装了NHibernate的操作,使用特性来代替映射文件,它提供的简洁的O/R映射会让你惊叹原来实现持久化数据层是那么简单

从数据访问框架到IOC容器,再到WEB框架,基本包括了整个开发过程中的所有东西,看来得好好学习研究一下了,并且打算把自己学习过程的一些东西记录下来。先从ActiveRecord开始吧,ActiveRecord提供的简洁的O/R映射给我留下了很深的印象

构建配置信息

现在我们要告诉ActiveRecord相关的数据库、数据驱动等信息,最简单的就是使用配置文件

<? xml version="1.0" encoding="utf-8"  ?>
< configuration >
     < configSections >
         < section  name ="activerecord"  type ="Castle.ActiveRecord.Framework.Config.ActiveRecordSectionHandler, Castle.ActiveRecord"   />
     </ configSections >
     < activerecord >
         < config >
             < add  key ="hibernate.connection.driver_class"  value ="NHibernate.Driver.SqlClientDriver"   />
             < add  key ="hibernate.dialect"  value ="NHibernate.Dialect.MsSql2000Dialect"   />
             < add  key ="hibernate.connection.provider"  value ="NHibernate.Connection.DriverConnectionProvider"   />
             < add  key ="hibernate.connection.connection_string"  value ="UID=sa;Password=sa;Initial Catalog=ARDemo;Data Source=."   />
         </ config >
     </ activerecord >
</ configuration >


用过NHibernate的朋友一定会对这段配置代码很熟悉,没错,因为ActiveRecord在底层封装了NHibernate,所以这里的配置跟使用NHibernate时的配置一样,同样是指定了数据源驱动,连接字符串等信息。如果使用了配置文件在代码中只要这样去初始化就可以了


IConfigurationSource source = System.Configuration.ConfigurationSettings.GetConfig("activerecord")  as IConfigurationSource;
ActiveRecordStarter.Initialize( source,  typeof(User) );


Castle ActiveRecord这个在东风日产的很多项目用到 用的IOC搞的开放效率高快稳定维护简单上手快 但性能很差

3  EntityFramework

上手简单 如果用linq to sql没个三五年以上的工作经验搞这个非常吃力 

招商银行目前的一个b2b的主推项目 用的是这个 性能非常差

4 mybaits.net

目前资历有些朋友有些没见到过。



posted @ 2013-09-02 11:33  cao919  阅读(53)  评论(0编辑  收藏  举报