spring使用注解通过子类注入父类的私有变量
2014-08-07 17:18
429 查看
方法一
通过 super.setBaseDao方法设置父类私有变量父类
public class BaseServiceImpl {private BaseDao baseDao;
public BaseDao getBaseDao() {
return baseDao;
}
public void setBaseDao(BaseDao baseDao) {
this.baseDao = baseDao;
}
public void test(){
System.out.println("TsetService...... ");
baseDao.test();
}
}
子类
@Service("testServiceImpl")public class TestServiceImpl extends BaseServiceImpl{
@Resource(name="testDao")
public void initBaseDao(TestDao testDao) {
super.setBaseDao(testDao);
}
}
方法二
@PostConstruct是Java EE 5引入的注解,Spring允许开发者在受管Bean中使用它。当DI容器实例化当前受管Bean时,@PostConstruct注解的方法会被自动触发,从而完成一些初始化工作父类同上
子类
@Service("testServiceImpl")public class TestServiceImpl extends BaseServiceImpl{
private TestDao testDao;
public TestDao getTestDao() {
return testDao;
}
@Resource(name="testDao")
public void setTestDao(TestDao testDao) {
this.testDao = testDao;
}
@PostConstruct
public void initBaseDao(TestDao testDao) {
super.setBaseDao(testDao);
}
}
方法三
父类被注入对象非私有,子类重写setter方法注入到父类变量父类
public class BaseServiceImpl {protected BaseDao baseDao;
public BaseDao getBaseDao() {
return baseDao;
}
public void setBaseDao(BaseDao baseDao) {
this.baseDao = baseDao;
}
public void test(){
System.out.println("TsetService...... ");
baseDao.test();
}
}
子类
@Service("testServiceImpl")public class TestServiceImpl extends BaseServiceImpl{
@Resource(name="testDao")
public void setBaseDao(BaseDao baseDao) {
this.baseDao = baseDao;
}
}
相关文章推荐
- Spring使用@PostConstruct注解完成子类注入父类私有变量
- Thread子类中,不能使用Spring注解,变量为null
- Spring通过XML配置c3p0连接池和dao层注解注入使用 jdbcTemplate
- Java 中子类是否只继承父类的非私有变量和方法?
- 注解的力量 -----Spring 2.5 JPA hibernate 使用方法的点滴整理(三):通过 @Autowired的使用来消除 set ,get方法。
- spring注解注入泛型子类
- day01-spring2.5.5中使用“依赖注入的注解”
- 使用Spring注解来注入属性
- 注解的力量 -----Spring 2.5 JPA hibernate 使用方法的点滴整理(三):通过 @Autowired的使用来消除 set ,get方法。
- 注解的力量 -----Spring 2.5 JPA hibernate 使用方法的点滴整理(三):通过 @Autowired的使用来消除 set ,get方法。
- Spring 通过注解注入Properties文件
- Spring使用注解的方式注入属性时的xml文件配置
- Java 中子类是否只继承父类的非私有变量和方法?
- 注解的力量 -----Spring 2.5 JPA hibernate 使用方法的点滴整理(三):通过 @Autowired的使用来消除 set ,get方法。
- SSH下使用Spring注解自动注入bean
- 隐藏父类的成员,使得在子类中使用时,无法通过Visual Studio的智能提示看到
- Java 中子类是否只继承父类的非私有变量和方法?
- (4)通过注解方式 注入并使用 其他EJB或者服务
- 通过Spring实现对自定义注解属性进行资源注入
- 使用Spring注解来注入属性