关于spring bean管理的问题

问题描述

各位大虾:小弟,有一问题请教:spring管理bean,继承是怎么实现的?意思就是:BeanA,BeanBextendsBeanA;BeanA已经注入A,我想在BeanB中也能用A,该怎么实现?在容器里,只要BeanB使用parent属性,就报错!不知道parent属性具体该怎么使用,请各位不吝赐教!如果BeanB注入A,就运行正常,不报错!请问这是怎么回事啊?请各位朋友,附上个示例给小弟看看!

解决方案

解决方案二:
关注,帮顶!
解决方案三:
你用的哪种注入方法?继承注入?
解决方案四:
子类bean的属性parent="父beanID"如果要百分百可以调用父bean的话可以获得子类bean。然后强制转化---》(父类)子类bean如果父类配置模板形式就只能用上面的方式了。
解决方案五:
采用的是注解方式注入,
解决方案六:
可能之前没叙述清楚,现说明如下:我采用的是注解方式注入,若不继承:<beanid='BeanA'class=''/><beanid='BeanB'class=''/>分别注解注入属性,则加载xml正常,运行成功!若BeanBextendsBeanAxml配置:<beanid='BeanB'class=''parent='BeanA'/>此时xml加载出错,运行出错!请问这是什么原因啊?我想BeanB可使用BeanA已经注入的属性,怎么使用呢?
解决方案七:
帮顶!!帮顶!!
解决方案八:
注入B,不要管A,你面对的只有B了!
解决方案九:
个人认为:ApplicationContext(不是BeanFactory)会预实例化所有singleton的bean。因此很重要的一点是:如果你只想把一个(父)bean定义当作模板使用,而它又指定了class属性,那么你就得将'abstract'属性设置为'true'!按照楼主的的继承方式!你必须降BEANA的abstract设为true;

时间: 2024-11-30 02:08:13

关于spring bean管理的问题的相关文章

spring bean管理的问题

问题描述 在同一个项目中,使用两种方式配置bean的管理:配置型和注解我在一个类名是Test1的类上加入注解如下:@Component@Scope(ScopeType.VIEW)publicclassTest1{}而后我又在配置文件中配置:<beanid="test1"class="com.Other1"scope="view"></bean>附加:Other1继承Test1以上情况可以启动,当我在页面上使用#{test1

Spring中管理Bean依赖注入之后和Bean销毁之前的行为

    对于Singleton作用域的Bean,Spring容器将会跟踪它们的生命周期,容器知道何时实例化结束.何时销毁.Spring可以管理Bean在实例化结束之后和Bean销毁之前的行为. Bean依赖关系注入之后的行为:     Spring提供了两种方式在Bean全部属性设置成功后执行特定的行为: 在Spring配置文件中使用init-method属性:这个属性指定某个方法在Bean全部依赖关系设置结束后自动执行.这个方法写在Bean里面.使用这种方法不需要将代码与Spring耦合在一起

Spring Bean基本管理实例详解_java

本文实例讲述了Spring Bean基本管理.分享给大家供大家参考,具体如下: 一.使用setter方式完成依赖注入 下面是Bean和beans-config.xml文件. public class HelloBean { private String helloWord; //...省略getter.setter方法 } <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE beans PUBLIC &

Spring Bean的生命周期管理

本文来自阅读Life Cycle Management of a Spring Bean这篇文章所做的笔记和实验. 按图索骥 bean的生命周期 知识点 1. BeanNameAware接口 Spring Bean存活于容器之中,一般情况下spring bean对context的情况并不了解,如果希望某个bean知道自己在context中的代号:bean name,即可让该bean的类型实现BeanNameAware接口. package org.test.spittr.spi; import

如何使用Spring来管理Struts中的Action

当指定struts.objectFactory为spring时,struts2框架就会把bean转发给spring来创建,装配,注入.但是bean创建完成之后,还是由struts容器来管理其生命周期.配置方式: (1)struts.xml中: xml 代码: < constant name="struts.objectFactory" value="spring" /> (2)struts.properties中: java 代码: struts.obj

tomcat5-类加载机制 Tomcat5 shared目录下加载的Spring如何管理Tomcat中部署的多个项目

问题描述 类加载机制 Tomcat5 shared目录下加载的Spring如何管理Tomcat中部署的多个项目 20C 我们知道Tomcat5.x类加载体系结构如下:不同的类加载器加载不同路径上的类或jar包. Bootstrap | System | Common / Catalina Shared / Webapp1 Webapp2有这样一个场景,在Tomcat5.x下部署了10个项目,每个项目都是用Spring来组织和管理的,可以吧Spring放到Tomcat的Common或Shared目

spring 事务管理让我费解的地方

问题描述 在用springmvc时,用到了spring事务管理<beanid="dataSource"class="org.apache.commons.dbcp.BasicDataSource"destroy-method="close"><propertyname="driverClassName"><value>${jdbc.driver}</value></prop

急!!!!!!!spring日志管理问题

问题描述 急!!!!!!!spring日志管理问题 aop:config /aop:aspect /aop:config advisor类 import org.apache.log4j.Logger; import org.aspectj.lang.JoinPoint; /** @author seeblack2015-12-20 下午3:44:55*/public class Advisor {static Logger log = Logger.getLogger(Advisor.clas

Spring Bean注册方式小结

IOC容器 Spring的核心是一个IOC容器,管理着我们向容器注册的所有bean.下面我们来看下两种向容器注册bean的方式, 通过BeanDefinitionReader读取Spring Bean的配置文件,解析然后注册: 通过ClassPathBeanDefinitionScanner直接扫描带有Spring Bean注解的Java类并注册: Reader BeanDefinitionReader的使用方式如下, import org.springframework.beans.facto