spring中Bean的注入参数详解

字面值
    一般指可用字符串表示的值,这些值可以通过<value>元素标签进行注入。在默认情况下,基本数据类型及其封装类、String等类型都可以采取字面值注入的方式,Spring容器在内部为字面值提供了编辑器,它可以将以字符串表示的字面值转换为内部变量的相应类型。
    配置信息:
    <bean id="car" class="com.luxl.domain.Car">
        <property name="maxSpeed">
            <value>200</value>
        </property>
        <property name="brand">
            <value><![CDATA[红旗&CA72]]></value>
        </property>
    </bean>
    注:由于brand属性值包含一个XML的特殊符号,因此特意在属性值外添加一个XML特殊处理标签<![CDATA[]]>,作用是让XML解析器将标签中的字符串当作普通的文本对待,防止某些字符串对XML格式造成破坏。

引用其他Bean
    Spring IoC容器中定义的Bean可以相互作用。IoC容器则充当媒介。
    引用方式:<ref bean="car"></ref>
    <ref>元素可以通过以下3个属性引用容器中的其他Bean。
    1)bean:可以引用同一容器或父容器的Bean;
    2)local:只能引用同一配置文件中定义的Bean,可以自动检查合法性。
    3)parent:引用父容器中的Bean,如<ref parent="car">的配置说明car的Bean是父容器中的Bean。

集合类型属性
    (1)List:配置信息:
    <property name="favorites">
        <list>
            <value>abc</value>
            <value>def</value>
            <value>ghi</value>
        </list>
    </property>
    (2)Map:配置信息:
    <property name="jobs">
        <map>
            <entry>
                <key><value>AM</value></key>
                <value>回见客户</value>
            </entry>
            <entry>
                ...
            </entry>
        </map>
    </property>
    (3)Property:配置信息:
    <property name="mails">
        <props>
            <prop key="jobMail">www.baidu.com</prop>
            ....
        </props>
    </property>

自动装配
    <beans>元素标签中的default-autowire属性可以配置全局自动匹配,默认值是no,表示不启用自动装配,其他几个可选配置值分别是byName、byType、constructor和autodetect。在<beans>中定义的自动装配策略可以被<bean>的自动装配策略覆盖。

spring中Bean的注入参数详解

时间: 2024-10-31 13:50:53

spring中Bean的注入参数详解的相关文章

Spring基础学习(二)&mdash;注入参数详解

     在Spring配置文件中,用户不但可以将String.int等字面值注入Bean中,还可以将集合.Map等类型注入Bean中,此外还可以注入配置文件中其他定义的Bean. 一.字面值      (1)可用字符串表示的值,可以通过<value>元素标签或value属性进行注入.      (2)基本数据类型及其封装类.Stting类型都可以采用字面值注入的方式.      (3)若字面值包含特殊字符,可以使用<![CDATA[]]>把字面值包裹起来. <bean id

Spring中bean的作用域scope详解

摘自<Spring 解密>scope用来声明IOC容器中的对象应该处的限定场景或者说该对象的存活空间,即在IOC容器在 对象进入相应的scope之前,生成并装配这些对象,在该对象不再处于这些scope的限定之后,容器通常会销毁这些对象.打个比方吧!我们都是处在社会 (容器)中,如果把中学教师作为一个类定义,那么当容器初始化这些类之后,中学教师只能局限在中学这个场景中,中学,就可以看做中学教师的scope. Spring容器最初提供了两种bean的scope类型:singleton和 proto

spring中Bean的注入类型

1.属性注入    即通过setXxx()方法注入Bean的属性值或依赖对象,由于属性注入方式具有可选择性和灵活性高的优点,因此属性注入是实际应用中最常采用的注入方式.    属性注入要求Bean提供一个默认的构造参数,并为需要注入的属性提供对应的Setter方法.Spring先调用Bean的默认构造参数实例化Bean对象,然后通过反射的方式调用Setter方法注入属性值.    需要指出的是:Spring只会检查Bean中是否有对应的Setter方法,至于Bean中是否有对应的属性变量则不做要

Spring中@Component注解,@Controller注解详解(网摘)

在使用Spring的过程中,为了避免大量使用Bean注入的Xml配置文件,我们会采用Spring提供的自动扫描注入的方式, 只需要添加几行自动注入的的配置,便可以完成Service层,Controller层等等的注入配置. 使用过程中,在Service层中的实现类头上加@Compopnet注解,在Controller类头加@Controller注解,便完成了配置. 例如 在Controller中当我们调用某个Service时就不需要Set方法了,直接通过@Autowried 注解对Service

jQuery中$.ajax$()方法的参数详解及示例代码

url: 要求为String类型的参数,(默认为当前页地址)发送请求的地址. type: 要求为String类型的参数,请求方式(post或get)默认为get.注意其他http请求方法,例如put和 delete也可以使用,但仅部分浏览器支持. timeout: 要求为Number类型的参数,设置请求超时时间(毫秒).此设置将覆盖$.ajaxSetup()方法的全局设 置. async:要求为Boolean类型的参数,默认设置为true,所有请求均为异步请求. 如果需要发送同步请求,请将此选项

android中的Pending.getActivity()参数详解

PendingIntent有一个getActivity方法,第一个参数是上下文,第二个参数 requestCode,第三个参数是 Intent,用来存储信息,第四个参数是对参数的操作标识,常用的就是FLAG_CANCEL_CURRENT和FLAG_UPDATE_CURRENT.当使用FLAG_UPDATE_CURRENT时:PendingIntent.getActivity(context, 0, notificationIntent,PendingIntent.FLAG_CANCEL_CURR

Spring事务Transaction配置的五种注入方式详解

Spring事务Transaction配置的五种注入方式详解 前段时间对Spring的事务配置做了比较深入的研究,在此之间对Spring的事务配置虽说也配置过,但是一直没有一个清楚的认识.通过这次的学习发觉Spring的事务配置只要把思路理清,还是比较好掌握的. ??? 总结如下: ??? Spring配置文件中关于事务配置总是由三个组成部分,分别是DataSource.TransactionManager和代理机制这三部分,无论哪种配置方式,一般变化的只是代理机制这部分. ???DataSou

Spring Bean的生命周期详解

Spring Bean的生命周期详解 Spring IoC容器的本质目的就是为了管理Bean,对于Bean而言,在容器中存在其生命周期,它的初始化和销毁也需要一个过程,下面主要对其生命周期进行一个详解的解释.生命周期主要是为了了解Spring IoC容器初始化和销毁Bean的过程,通过下图即可以掌握Spring IoC容器初始化与销毁Bean的过程. 通过上图,我们首先可以看到生命周期的步骤. 1)如果Bean实现了接口 BeanNameAware 的 setBeanName 方法,那么它就会调

JQuery中$.ajax()方法参数详解

url: 要求为String类型的参数,(默认为当前页地址)发送请求的地址. type: 要求为String类型的参数,请求方式(post或get)默认为get.注意其他http请求方法,例如put和 delete也可以使用,但仅部分浏览器支持. timeout: 要求为Number类型的参数,设置请求超时时间(毫秒).此设置将覆盖$.ajaxSetup()方法的全局设 置. async:要求为Boolean类型的参数,默认设置为true,所有请求均为异步请求. 如果需要发送同步请求,请将此选项