自己动手打造ORM(一)

为什么要重复发明轮子?Hibernate,IBatis等等已经很成熟的框架还不够吗?

我的看法,一是这些ORM框架过于复杂了,虽然很多是号称轻量级的,但面对一大堆配置,一大堆类库,一大堆提出的概念,或许你会想,这就是我要的ORM吗?也许大部分只是需要SQL和对象之间方便的转化。二是ORM框架会强加给你很多东西,比如LazyLoad、缓存、事务,这些是有用,但是未必是你想要的,这对于设计是很不利的。

用我喜欢的一句话说,"Simple is best"。我所希望的ORM只是一个简单的SQL和对象转化的小工具,它的作用仅仅是提高工作效率、减少重复劳动而已,我不希望ORM框架替我设计、做决定。

好了,废话说完,总的意思就是别人的轮子虽好,但不一定适合我们。当别人的东西不好用的时候,自己动手丰衣足食是最好的办法,写一个简单的ORM并不是什么深奥的技术,而且对自己对于OO的理解有很多好处。

我按自己的思路写了一个ORM,在经过几次重构后算是基本完成了。为什么没有完全的完成,是因为每个人对ORM的要求不尽相同,而要满足所有的要求只会是越来越复杂,永远也不可能真正的完成。如果要增加一些复杂的需求的话,要在理解了设计的思路后,按照自己的需要稍加修改。

代码比较多,而且还会经常改动,我在CodePlex上建了个工程MyOrm,可以到CodePlex下载最新的代码。之后会简单介绍几个使用的例子。

 

自己动手打造ORM(二) —元数据

自己动手打造ORM(三) —自定义Attribute

自己动手打造ORM(四) —需求

自己动手打造ORM(五) —实现

代码和示例下载

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值