XML 代码:

<!-- 使用构造器注入属性值的位置和参数的类型!以区分重载的构造器! -->
<bean id="car1" class="com.hy.spring.beans.Car">
<constructor-arg value="BaoMa" type="String"></constructor-arg>
<!--如果字面值包含特殊字符可以使用 <![CDATA[]]> 包裹起来 -->
<!--属性值也可以使用value 直接点进行配置 -->
<constructor-arg type="String">
<value> <![CDATA[<China^>]]> </value>
</constructor-arg>
<constructor-arg value="240" type="int"></constructor-arg>
</bean>

Person.java

package com.hy.spring.beans;

public class Person {
private String name;
private int age;
private Car car;

public String getName() {
return name;
}

public void setName(String name) {
this.name = name;
}

public int getAge() {
return age;
}

public void setAge(int age) {
this.age = age;
}

public Car getCar() {
return car;
}

public void setCar(Car car) {
this.car = car;
}

@Override
public String toString() {
return "Person [name=" + name + ", age=" + age + ", car=" + car + "]";
}

}

XML 代码

<!-- 使用构造器注入属性值的位置和参数的类型!以区分重载的构造器! -->
<bean id="car1" class="com.hy.spring.beans.Car">
<constructor-arg value="BaoMa" type="String"></constructor-arg>
<!--如果字面值包含特殊字符可以使用 <![CDATA[]]> 包裹起来 -->
<!--属性值也可以使用value 直接点进行配置 -->
<constructor-arg type="String">
<value> <![CDATA[<China^>]]> </value>
</constructor-arg>
<constructor-arg value="240" type="int"></constructor-arg>
</bean>

<bean id="person" class="com.hy.spring.beans.Person">
<property name="name" value="Tom"></property>
<property name="age" value="27"></property>
<!-- 可以使用 property 的 ref 属性建立bean之间的引用关系-->
<property name="car" ref="car1"></property>
</bean>

XML 配置

<bean id="person" class="com.hy.spring.beans.Person">
<property name="name" value="Tom"></property>
<property name="age" value="27"></property>
<!-- 可以使用 property 的 ref 属性建立bean之间的引用关系-->
<!-- <property name="car" ref="car1"></property> -->
<!-- 内部Bean,不能被外部引用,只能在内部使用 -->
<property name="car">
<bean class="com.hy.spring.beans.Car">
<constructor-arg value="Ford"></constructor-arg>
<constructor-arg value="ChangAn"></constructor-arg>
<constructor-arg value="300000" type="double"></constructor-arg>
</bean>
</property>
</bean>

<bean id="person1" class="com.hy.spring.beans.Person">
<constructor-arg name="name" value="Jack"></constructor-arg>
<constructor-arg name="age" value="35"></constructor-arg>
<constructor-arg name="car">
<bean class="com.hy.spring.beans.Car">
<constructor-arg value="Ford"></constructor-arg>
<constructor-arg value="ChangAn"></constructor-arg>
<constructor-arg value="300000" type="double"></constructor-arg>
</bean>
</constructor-arg>
</bean>

<bean id="person2" class="com.hy.spring.beans.Person">
<constructor-arg name="name" value="Hao"></constructor-arg>
<constructor-arg name="age" value="30"></constructor-arg>
<constructor-arg name="car" ref="car"></constructor-arg>
<!-- 为级联属性赋值。
注意:属性要先初始化后才可以为级联属性赋值,否则会出异常,
和sturct2 不同。 -->
<property name="car.maxSpeed" value="250"></property>
</bean>

Person.java

package com.hy.spring.beans;

public class Person {
private String name;
private int age;
private Car car;

public String getName() {
return name;
}

public void setName(String name) {
this.name = name;
}

public int getAge() {
return age;
}

public void setAge(int age) {
this.age = age;
}

public Car getCar() {
return car;
}

public void setCar(Car car) {
this.car = car;
}

@Override
public String toString() {
return "Person [name=" + name + ", age=" + age + ", car=" + car + "]";
}

public Person(String name, int age, Car car) {
super();
this.name = name;
this.age = age;
this.car = car;
}

public Person (){

}
}

Spring_属性配置细节的更多相关文章

  1. Spring_配置Bean & 属性配置细节

    1.Spring容器 在 Spring IOC 容器读取 Bean 配置创建 Bean 实例之前, 必须对它进行实例化. 只有在容器实例化后, 才可以从 IOC 容器里获取 Bean 实例并使用.Sp ...

  2. 4. selectKey语句属性配置细节

    selectKey语句属性配置细节:

  3. Spring 学习笔记 4. 尚硅谷_佟刚_Spring_属性配置细节

    1,字面值 •字面值:可用字符串表示的值,可以通过 <value> 元素标签或 value 属性进行注入. •基本数据类型及其封装类.String 等类型都可以采取字面值注入的方式 •若字 ...

  4. 03-spring学习-属性配置细节

    配置bean的一些细节 字面值 如果包含特殊符号,直接写会报错.可以用这个<![CDATA[]]>包裹起来. 比如这里的配置属性里面的value值包含<>等特殊符号,直接写会报 ...

  5. spring 属性配置细节

    1.使用构造器注入属性值可以指定参数的位置和参数的类型!以区分重载的构造器.例如:<constructor-arg value="" type="java.lang ...

  6. Spring(八):Spring配置Bean(一)BeanFactory&ApplicationContext概述、依赖注入的方式、注入属性值细节

    在Spring的IOC容器里配置Bean 配置Bean形式:基于xml文件方式.基于注解的方式 在xml文件中通过bean节点配置bean: <?xml version="1.0&qu ...

  7. Spring容器的属性配置详解的六个专题

    在spring IOC容器的配置文件applicationContext.xml里,有一些配置细节值得一提.我们将一些问题归结为以下几个专题.   专题一:字面值问题 配置的bean节点中的值,我们提 ...

  8. ExtJs控件属性配置详细

    序言:    1.本文摘自网络,看控件命名像是4.0以前的版本,但控件属性配置仍然可以借鉴(不足之处,以后项目用到时再续完善). Ext.form.TimeField: 配置项:            ...

  9. VS项目属性配置实验过程

    (原创,转载注明出处:http://www.cnblogs.com/binxindoudou/p/4017975.html ) 一.实验背景 cocos2d-x已经发展的相对完善了,从项目的创建.编译 ...

随机推荐

  1. uWSGI配置(转 )

    原文地址:http://www.cnblogs.com/zhouej/archive/2012/03/25/2379646.html 下面的内容包含了大部分uWSGI的配置选项,这些配置选项的列举没有 ...

  2. 《程序员级别鉴定书》 ----中级.NET开发者

    面向接口.面向对象和面向方面编程区别 面向接口编程 是面向对象编程体系中的思想精髓之一 (博客园文章链接面向接口编程详解(一)——思想基础) 面向接口编程 接口是一组规则集合 面向对象编程 对具有相同 ...

  3. Angular ui-route的用法

    ui-router和同属AngularJS框架一部分的ng-route一样强大. ui-router提供了让我们可以做路由嵌套和视图命名的特性,嵌套路由功能主要是依赖$stateProvider服务, ...

  4. PAT 甲级 1003Emergency(Dijkstra最短路)

    1003. Emergency (25) 时间限制 400 ms 内存限制 65536 kB 代码长度限制 16000 B 判题程序 Standard 作者 CHEN, Yue As an emerg ...

  5. 第二课作业——redis常用命令

    第二课时作业 静哥 by 2016.2.23~2016.2.22   [作业描述] 1.key string list hash结构中,每个至少完成5个命令,包含插入 修改 删除 查询,list 和h ...

  6. Making training mini-batches

    Here is where we'll make our mini-batches for training. Remember that we want our batches to be mult ...

  7. 三种系统监控工具对比:top vs Htop vs Glances

    首先启用 EPEL Repository: yum -y install epel-release 启用 EPEL Repository 後, 可以用 yum 直接安裝 Htop: yum -y in ...

  8. 转!!java中File的delete()方法删除文件失败的原因

    一般来说 java file.delete失败 有以下几个原因 1.看看是否被别的进程引用,手工删除试试(删除不了就是被别的进程占用)2.file是文件夹 并且不为空,有别的文件夹或文件, 3.极有可 ...

  9. Selenium定位不到指定元素原因之iframe(unable to locate element)

    浏览过程中,图片中的内容可能太小,无法看清,可以>右键>在新标签中打开 Outline 项目原因,需要用selenium实现模拟登陆.模拟上传文件,自然就需要模拟点击[上传]按钮: 模拟点 ...

  10. 报错:PermissionError: [WinError 5] Access is denied: 'C:\\Program Files\\Anaconda3\\Lib\\site-packages\\pywebhdfs'

    Outline 在本(Windows系统)地往 “PAI”(hdfs)上上传数据时,需要安装pywebhdfs包,然后就报错了: 报错信息: PermissionError: [WinError 5] ...