AOP@Work: 使用方面的下几个步骤-学习建议之后 - 编程入门网
如在面向对象编程中一样:使更抽象的类 型依赖于接口抽象而不是依赖于实现。在上例中,为实现这一点,可以将 Playable 接口移动到单独的模块中,这样 MeteringPolicy 模块可以依赖于该 接 口,而不用依赖于实现 Playable(它织入到)的任何类。
AOP@Work: 使用方面的下几个步骤-学习建议之后(9)时间:2011-09-07 IBM Ron Bodkin现实项目的方面 我已经简单介绍了将方面有效集成到工作过程中的工具和技术。现在我们来 看 看方面在哪些地方可以真正发挥作用,并促使犹豫不决的团队成员接受它们。使 用方面解决日常问题,比如安全性强制执行、性能监控、高速缓存耗时计算和错 误处理等,是将其集成到项目中的好方法,这样的话,方面可以添加许多功能, 但仍然不会干扰正常的开发。下面的示例省略了一些详细信息,但保留了集成问 题,集成问题是在现实项目中使用方面第二个阶段的特征。 安全性强制执行 方面是强制执行安全规则(比如基于角色的访问控制)的好方法。相关示例 是 强制执行下列要求:用户在使用应用程序时必须具有有效的许可证。检查有效许 可证需要在执行许多操作时不断地强制执行。在许多地方检查有效许可证使得破 坏许可证方案更加困难。这还支持更细粒度的许可证机制,比如为不同的许可证 授予不同的权利。方面非常适合应对这种问题,如清单 3 所示: 清单 3. 用于许可证强制执行的方面
该方面负责在启动时获取许可证、在许多位置检查有效许可证以及发放许可 证 。在本例中,当在系统中执行范围内的任何私有方法时就会强制执行许可证检查 。该范围包括 Apache 中的一个第三方开放源码库,从而使得在提供的应用程序 中集成强制执行更加容易。您可能在疑惑如何初始化许可证管理器。该方面设计 为通过依赖性注入来配置,如 Adrian Colyer 的 “用 AspectJ 和 Spring 进 行 依赖项插入” 所述。当然,该方面还可以只查询许可证管理器的配置,或者甚 至 直接构造一个配置。 AOP@Work: 使用方面的下几个步骤-学习建议之后(10)时间:2011-09-07 IBM Ron Bodkin错误处理 方面在改进应用程序响应错误条件的可靠性和一致性上实在太有用了。示例 包 括转换异常类型、处理公共点(比如 Web 应用程序控制器)上的异常、在异常 第 一次发生时进行记录、创建错误汇总报告,以及隔离辅助子系统中的错误使其不 影响核心系统。(我在本系列的上一篇文章中描述了最后两个示例;请参阅 参 考 资料。) 接下来的步骤展示如何为 Web 应用程序创建简单但全面的端到端异常处理策 略。我将从业务模型抛出的异常转换为未检查的 ModelException 的实例。 ModelException 保存有关执行对象和参数的附加上下文信息,而不仅是堆栈跟 踪 。我将 |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |