本文主要是介绍java中的java.lang.reflect.Type在Spring框架中的用处,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
背景介绍
Type在java中表示类型,包括了
Class:
ParametedType: List
WildType: 如
ArrayType: 如T[]
TypeVariable: 如T
解决一个实际问题
需求:假设我们有一个Repository接口,有2个实现类Repository和Repository2个bean,但是我们只想用到其中的一个bean,如personRepository。
解决:
直接使用@Autowired注入带有泛型的Repository即可
@Service("testService")
public class TestService {// 直接注入带有泛型的Repository对象即可。因为Spring对泛型提供了底层的支持(即就是使用java中的type)@Autowiredprivate Repository<Person> aaaa;
}
Spring对type的支持点举2个例子
Spring中对泛型提供了很好的支持,底层原理就是java的type。
如:
1、在@Autowired的自动注入
2、Listener的事件监听体系中也可以根据泛型类型来监听具体详细的事件。
这篇关于java中的java.lang.reflect.Type在Spring框架中的用处的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!