再论IBatisNet + Castle进行项目的开发

 随着项目的进展,Castle和IBatisNet给我的惊喜更多。Com+很重,不需要分布式的中小项目慎用,NHibernate虽好,NHibernate的2005-9-20发布了最新版本1.0-rc1,缺少高水平的OO设计师,项目组程序员水平参次不齐 ,应用Castle + IBatisnet大家不会再把精力浪费到数据访问,事务处理,主键生成等地方了,可以集中精力进行业务组件的编写。项目的进展很顺利。
    从架构上讲,Castle作为轻量级Ioc容器无疑要位于高位,所以iBatisNet现在只需要致力于完成持久层的sql-object映射工作,其他的事就由Castle来装配好了。
      iBatisNet中的DaoManager作的两大工作:dao事务管理,dao接口与实现的解藕,Castle的事务处理使用了是Castle的扩展 单元,可以配置到方法级,用法类似于Com+,需要对该类设置声明性事务属性以确定其事务性行为。指定哪些类的哪些方法需要事务处理,不管你是dao还是 service,通通可以自由地在这儿指定,根本不会侵入你所写的类,如果是Com+的话,会强迫你去实现Com+的 ServicedComponent。
     IbatisNet的缓存非常不错,我们需要用好它了。在IbatisNet中,cacheModelsEnabled默认是true的,别忘了在写具体 的po.xml时,作缓存有关的配置工作。不过具体用哪一种(MEMORY  LUR  FIFO  OSCACHE)容量设多大,都得根据项目的实际情况来定,我通常首选LUR。正确设定缓存的Flush语句,杜绝缓存中脏数据产生的可能。缓存使用前 提是,系统中对表的读写一定要都通过ibatisNet来进行,也就是封闭的。   
    动态SQL的确是个强点。熟悉后感觉很不错。IBatisNet中所有的DAO方法都只传一个值对象,复杂查询当然也不例外。

自由、创新、研究、探索……

本文出自 “张善友” 博客,请务必保留此出处http://shanyou.blog.51cto.com/363653/75247

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值