微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

依赖注入及AOP简述八——混合请求模式

2.3.混合请求模式

上一节讲到了FQCN(全类名)请求模式会带来依赖定义的柔软性较差的问题,因此字符串和全类名混合的模式又应运而生了。比如刚才的Spring中的API方式声明注入点的例子就可以改为使用下面的API:

// Spring的字符串+全类名注入的API

beanfactory injector = new FileSystemApplicationContext("depositConfiguration.xml")

this.bank = (Bank) injector.getBean("bank",Bank.class);

// 请求名为"bank"且类为Bank的依赖


而在Guice中则提供了更为安全、可维护性更高的基于注解模式的混合请求模式,此时标识符不再仅仅是一个字符串,而是一个自定义的Java5注解。例如上一节中举的Setter注入点的例子,可以用下面的方式来实现混合请求依赖:

public class Depositor {

private Bank bank;

// ……

@Inject // bank的Setter注入点

public void setBank(@BankICBC Bank bank) {

// 请求标识符为"@BankICBC"注解并且类为Bank的依赖

// "@BankICBC"注解是一个被绑定到BankICBC.class的自定义注解

this.bank = bank;

}

// ……

}

原文地址:https://www.jb51.cc/javaschema/287127.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐