AOP@Work: 用AspectJ和Spring进行依赖项插入 - 编程入门网
象的依赖项
发现满足这些依赖项的对象 用对象的依赖项对它进行配置 从下面的各种依赖项插入解决方案可以看出,解决这些职责有多种策略。 使用 Spring 进行依赖项插入 在标准的 Spring 部署中,Spring 容器同时负责创建和配置核心应用程序对 象(称为 bean)。因为容器既创建对象,又扮演代理的角色,所以对 Spring 容 器来说,确定 bean 已经创建而且需要配置是件轻而易举的小事。通过查询应用 程序的元模型,可以确定 bean 的依赖项,元模型通常是在 Spring 的配置文件 中用 XML 表示的。 满足 bean 的依赖项的对象是容器管理的其他 bean。容器充当这些 bean 的 仓库,所以可以用名称查询它们(或者在需要的时候创建)。最后,容器用新 bean 的依赖项对其进行配置。这通常是通过 setter 插入完成的(调用新 bean 的 setter 方法,把依赖项作为参数传递进去),虽然 Spring 支持其他形式的 插入,例如构造函数插入和查询方法插入(请参阅 参考资料 学习关于使用 Spring 进行依赖项插入的更多内容。) 方面的依赖项插入 像其他对象一样,方面可以从通过依赖项插入进行的配置中受益。在许多情 况 下,把方面实现为轻量级控制器 是良好的实践。在这种情况下,方面确定什么 时 候应当执行某些行为,但是会委托给协作器去执行实际的工作。例如,可以用异 常处理策略对象配置异常处理方面。方面会探测出什么时候抛出了异常,并委托 处理器对异常进行处理。清单 1 显示了基本的 RemoteException 处理方面: 清单 1. RemoteException 处理方面
AOP@Work: 用AspectJ和Spring进行依赖项插入(3)时间:2011-09-07 IBM Adrian Colyer现在我要用依赖项插入,用一个特殊的异常处理策略来配置我的方面。对于 这 个方面,我可以用标准的 Spring 方式,但是有一个警告。一般来说,Spring 既 负责创建 bean,也负责配置 bean。但是,AspectJ 方面是由 AspectJ 运行时 创 建的。我需要 Spring 来配置 AspectJ 创建的方面。对于单体方面最常见的形 式 ,例如上面的 RemoteExceptionHandling 方面,AspectJ 定义了一个 aspectOf () 方法,它返回方面的实例。我可以告诉 Spring 使用 aspectOf() 方法作为 工 厂方法,获得方面的实例。清单 2 显示了方面的 Spring 配置: 清单 2. 方面的 Spring 配置
|
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |