龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > 软件开发 > JAVA开发 >

AOP和Spring事务处理[组图]

时间:2009-12-23 15:42来源:未知 作者:admin 点击:
分享到:
原文地址: http://www.matrix.org.cn/resource/article/43/43738_Spring_AOP.Html !-- frame contents -- !-- /frame contents -- 一.为什么要用框架和模式 1.为什么要用模式 ? 因为模式是一种指导,在一个良好的指导

  原文地址:
  http://www.matrix.org.cn/resource/article/43/43738_Spring_AOP.Html

<!-- frame contents -->
<!-- /frame contents -->

  一.为什么要用框架和模式
  
  1.为什么要用模式
  
  因为模式是一种指导,在一个良好的指导下,有助于你完成任务,有助于你作出一个优良的设计方案,达到事半功倍的效果。而且会得到解决问题的最佳办法。
  
  2.为什么要用框架?
  
  因为软件系统发展到今天已经很复杂了,非凡是服务器端软件,设计到的知识,内容,问题太多。在某些方面使用别人成熟的框架,就相当于让别人帮你完成一些基础工作,你只需要集中精力完成系统的业务逻辑设计。而且框架一般是成熟,稳健的,他可以处理系统很多细节问题,比如,事物处理,安全性,数据流控制等问题。还有框架一般都经过很多人使用,所以结构很好,所以扩展性也很好,而且它是不断升级的,你可以直接享受别人升级代码带来的好处。
  总之:就是让开发更简单,让我们成功
  
  二. AOP
  

  1. AOP是什么?
  AOP是OOP的延续,是ASPect Oriented Programming的缩写,意思是面向方面编程。AOP实际是GoF设计模式的延续,设计模式孜孜不倦追求的是调用者和被调用者之间的解耦,AOP可以说也是这种目标的一种实现。
  
  2. 切面意义何在?
  
  就可以在这层切面上进行统一的集中式权限治理。而业务逻辑组件则无需关心权限方面的问题。也就是说,通过切面,我们可以将系统中各个不同层次上的问题隔离开来,实现统一集约式处理。各切面只需集中于自己领域内的逻辑实现。这一方面使得开发逻辑更加清楚,专业化分工更加易于进行;另一方面,由于切面的隔离,降低了耦合性,我们就可以在不同的应用中将各个切面组合使用,从而使得代码可重用性大大增强。
  

  3. AOP应用范围
  
  Authentication 权限
  Caching 缓存
  Context passing 内容传递
  Error handling 错误处理
  Lazy loading 懒加载
  Debugging  调试
   <!-- frame contents -->

<!-- /frame contents -->   logging, tracing, profiling and monitoring 记录跟踪 优化 校准
  Performance optimization 性能优化
  Persistence  持久化
  Resource pooling 资源池
  Synchronization 同步
  Transactions 事务
  
  
  三.Spring事务处理
  
  1.Spring事务治理能给我们带来什么?
  

  对于传统的基于特定事务资源的事务处理而言(如基于JDBC 的数据库访问),Spring并不会对其产生什么影响,我们照样可以成功编写并运行这样的代码。同时,Spring还提供了一些辅助类可供我们选择使用,这些辅助类简化了传统的数据库操作流程,在一定程度上节省了工作量,提高了编码效率。
  
  对于依靠容器的参数化事务治理而言,Spring则表现出了极大的价值。Spring本身也是一个容器,只是相对EJB容器而言,Spring显得更为轻便小巧。我们无需付出其他方面的代价,即可通过Spring实现基于容器的事务治理(本质上来讲,Spring的事务治理是基于动态AOP)。
  
  
精彩图集

赞助商链接