spring注入有继承关系的类 | 您所在的位置:网站首页 › java注解可以继承吗 › spring注入有继承关系的类 |
1.通过配置文件 Java代码![]()
2.通过注解(只需要在子类上加注解,父类上不用加会自动注入) package com.jeremy.spring.genericityDI; public class BaseRepository{ }BaseService: ![]() ![]() 2新建一个泛型类: User: package com.jeremy.spring.genericityDI; public class User { }3新建BaseRepository和BaseService的子类 UserRepository: ![]() ![]() UserService: ![]() ![]() 4:在Spring的配置文件中配置自动装配带有注解的Bean: ![]() ![]() 5测试代码和结果 测试代码: @Test public void test() { ApplicationContext actx=new ClassPathXmlApplicationContext("Bean-genericity-di.xml"); UserService userService=(UserService) actx.getBean("userService"); userService.add(); }测试结果: add.............. com.jeremy.spring.genericityDI.UserRepository@16546ef从结果看,虽然子类没有建立依赖关系,但userRepository实例还是被实例化了,就证明了父类的依赖关系,子类是可以继承的 其实这里也可以说明,就算父类不是被IOC容器管理,但是建立关系时添加了@Autowired注解,父类的关系会被继承下来 1.通过配置文件 Java代码![]()
2.通过注解(只需要在子类上加注解,父类上不用加会自动注入) package com.jeremy.spring.genericityDI; public class BaseRepository{ }BaseService: ![]() ![]() 2新建一个泛型类: User: package com.jeremy.spring.genericityDI; public class User { }3新建BaseRepository和BaseService的子类 UserRepository: ![]() ![]() UserService: ![]() ![]() 4:在Spring的配置文件中配置自动装配带有注解的Bean: ![]() ![]() 5测试代码和结果 测试代码: @Test public void test() { ApplicationContext actx=new ClassPathXmlApplicationContext("Bean-genericity-di.xml"); UserService userService=(UserService) actx.getBean("userService"); userService.add(); }测试结果: add.............. com.jeremy.spring.genericityDI.UserRepository@16546ef从结果看,虽然子类没有建立依赖关系,但userRepository实例还是被实例化了,就证明了父类的依赖关系,子类是可以继承的 其实这里也可以说明,就算父类不是被IOC容器管理,但是建立关系时添加了@Autowired注解,父类的关系会被继承下来 |
CopyRight 2018-2019 实验室设备网 版权所有 |