一个(类)Bean可能包含多种属性,这些属性怎么配置???  见下:

用People  Dog Cat Tiger  Panda五个类来学习一些常用的=_=

重点在XML

    <!--基本类型注入-->
<bean id="tiger" class="party.infoo.entity.Tiger">
<property name="name" value="Tiger_AA"/>
<property name="age" value="3"/>
</bean>
<bean id="cat" class="party.infoo.entity.Cat">
<property name="name" value="Cat_AA"/>
<property name="age" value="2"/>
</bean>
<bean id="dog" class="party.infoo.entity.Dog">
<property name="name" value="Dod_AA"/>
<property name="age" value="5"/>
</bean>
<bean id="panda" class="party.infoo.entity.Panda">
<property name="name" value="Panda_A"/>
<property name="age" value="3"/>
</bean>
<!--参数注入方法介绍-->
<bean id="people" class="party.infoo.entity.People">
<!--基本类型注入-->
<property name="name" value="People_AA"/> <!--bean注入-->
<property name="dog" ref="dog"/> <!--级联属性注入《要求已经new过的》-->
<property name="cat.name" value="Cat_BB"/> <!--内部bean注入-->
<property name="tiger">
<bean class="party.infoo.entity.Tiger">
<property name="name" value="Tiger_BB"/>
<property name="age" value="10"/>
</bean>
</property> <!--null值注入-->
<property name="panda">
<null></null>
</property> <!--list-->
<property name="books">
<list>
<value>JAVA</value>
<value>ENGLISH</value>
</list>
</property>
<!--set-->
<property name="hobbies">
<set>
<value>唱歌</value>
<value>玩游戏</value>
</set>
</property>
<!--map-->
<property name="works">
<map>
<entry>
<key><value>星期四</value></key>
<value>上班</value>
</entry>
<entry>
<key><value>星期五</value></key>
<value>放假</value>
</entry>
</map>
</property>
<!--proeperty-->
<property name="address">
<props>
<prop key="addres1">AAAAAAAAAA</prop>
<prop key="addres2">BBBBBBBBBB</prop>
</props>
</property>
</bean>
package party.infoo.entity;

import java.util.*;

/**
* Created by infoo on 2017/2/18.
*/
public class People {
private String name;
private Dog dog;
private Cat cat=new Cat();
private Tiger tiger;
private Panda panda;
private List<String> books=new ArrayList<String>();
private Set<String> hobbies=new HashSet<String>();
private Map<String,String> works=new HashMap<String,String>();
private Properties address=new Properties(); public String getName() {
return name;
} public void setName(String name) {
this.name = name;
} public Dog getDog() {
return dog;
} public void setDog(Dog dog) {
this.dog = dog;
} public Cat getCat() {
return cat;
} public void setCat(Cat cat) {
this.cat = cat;
} public Tiger getTiger() {
return tiger;
} public void setTiger(Tiger tiger) {
this.tiger = tiger;
} public Panda getPanda() {
return panda;
} public void setPanda(Panda panda) {
this.panda = panda;
} public List<String> getBooks() {
return books;
} public void setBooks(List<String> books) {
this.books = books;
} public Set<String> getHobbies() {
return hobbies;
} public void setHobbies(Set<String> hobbies) {
this.hobbies = hobbies;
} public Map<String, String> getWorks() {
return works;
} public void setWorks(Map<String, String> works) {
this.works = works;
} public Properties getAddress() {
return address;
} public void setAddress(Properties address) {
this.address = address;
} @Override
public String toString() {
return "People{" +
"name='" + name + '\'' +
", dog=" + dog +
", cat=" + cat +
", tiger=" + tiger +
", panda=" + panda +
", books=" + books +
", hobbies=" + hobbies +
", works=" + works +
", address=" + address +
'}';
}
}
package party.infoo.entity;

/**
* Created by infoo on 2017/2/18.
*/
public class Tiger {
private String name;
private int age; 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;
} @Override
public String toString() {
return "Tiger{" +
"name='" + name + '\'' +
", age=" + age +
'}';
}
}
package party.infoo.entity;

/**
* Created by infoo on 2017/2/18.
*/
public class Panda {
private String name;
private int age; 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;
} @Override
public String toString() {
return "Panda{" +
"name='" + name + '\'' +
", age=" + age +
'}';
}
}
package party.infoo.entity;

/**
* Created by infoo on 2017/2/18.
*/
public class Dog {
private String name;
private int age; 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;
} @Override
public String toString() {
return "Dog{" +
"name='" + name + '\'' +
", age=" + age +
'}';
}
}
package party.infoo.entity;

/**
* Created by infoo on 2017/2/18.
*/
public class Cat {
private String name;
private int age; 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;
} @Override
public String toString() {
return "Cat{" +
"name='" + name + '\'' +
", age=" + age +
'}';
}
}

Spring 参数注入的更多相关文章

  1. spring mvc 复杂参数注入

    过了这么久,又重新把博客拾起来了 来上海工作也已经有将近两周的时间了, 今天在整理项目的时候,遇到了一个关于参数注入的问题 背景: 我的开发前台用的是extjs4,在对后台spring mvc提交表单 ...

  2. spring 多线程 注入 服务层 问题

    在用多线程的时候,里面要用到Spring注入服务层,或者是逻辑层的时候,一般是注入不进去的.具体原因应该是线程启动时没有用到Spring实例不池.所以注入的变量值都为null. 详细:http://h ...

  3. Spring 依赖注入方式详解

    平常的Java开发中,程序员在某个类中需要依赖其它类的方法. 通常是new一个依赖类再调用类实例的方法,这种开发存在的问题是new的类实例不好统一管理. Spring提出了依赖注入的思想,即依赖类不由 ...

  4. Spring的注入问题

    作下笔记,Spring的注入问题[多个实例问题] 解决方案如下: package student.life.support.platform.service.impl; import javax.an ...

  5. Spring依赖注入(IOC)那些事

    小菜使用Spring有几个月了,但是对于它的内部原理,却是一头雾水,这次借着工作中遇到的一个小问题,来总结一下Spring. Spring依赖注入的思想,就是把对象交由Spring容器管理,使用者只需 ...

  6. Spring依赖注入三种方式详解

    在讲解Spring依赖注入之前的准备工作: 下载包含Spring的工具jar包的压缩包 解压缩下载下来的Spring压缩包文件 解压缩之后我们会看到libs文件夹下有许多jar包,而我们只需要其中的c ...

  7. Spring依赖注入 --- 简单使用说明

    Spring依赖注入 --- 简单使用说明 本文将对spring依赖注入的使用做简单的说明,enjoy your time! 1.使用Spring提供的依赖注入 对spring依赖注入的实现方法感兴趣 ...

  8. Java Web系列:Spring依赖注入基础

    一.Spring简介 1.Spring简化Java开发 Spring Framework是一个应用框架,框架一般是半成品,我们在框架的基础上可以不用每个项目自己实现架构.基础设施和常用功能性组件,而是 ...

  9. 为什么多线程、junit 中无法使用spring 依赖注入?

    为什么多线程.junit 中无法使用spring 依赖注入? 这个问题,其实体现了,我们对spring已依赖太深,以至于不想自己写实例了. 那么到底是为什么在多线程和junit单元测试中不能使用依赖注 ...

随机推荐

  1. 将PDF转化为wrod

    public static void CreateWord(string HtmlPath, string WordSavePath) { string inputName = HtmlPath; / ...

  2. SpringCloud组件的停更和替换说明

    SpringCloud的Hoxton版本,和之前的版本相比,用新的组件替换掉了原来大部分的组件,老的组件现在处于 停更不停用 的状况. 详情见下图(× 的表示之前的组件,现在停更了的:√ 的表示新的替 ...

  3. Python3笔记027 - 6.2 参数传递

    第6章 函数 6.2 参数传递 在理解形参和实参的基础上,理解位置参数.关键字参数.可变参数这三种情形,以及这三种的混合情形. 6.2.1 形式参数和实际参数 形式参数:在定义函数时,函数名后面括号中 ...

  4. SQL字符串拼接FOR XML PATH

    在工作中难免会遇到数据库中数据要进行拼接的问题,字符串拼接可以是用SQL的拼接也可以使用C#的拼接,本次说的是使用SQL进行拼接. 首先插入测试语句: --测试语句,准备创建表的语句:如下 CREAT ...

  5. python 生成器(五):生成器实例(一)创建数据处理管道

    问题 你想以数据管道(类似Unix管道)的方式迭代处理数据. 比如,你有个大量的数据需要处理,但是不能将它们一次性放入内存中. 解决方案 生成器函数是一个实现管道机制的好办法. 为了演示,假定你要处理 ...

  6. bzoj3891[Usaco2014 Dec]Piggy Back*

    bzoj3891[Usaco2014 Dec]Piggy Back 题意: 给定一个N个点M条边的无向图,其中Bessie在1号点,Elsie在2号点,它们的目的地为N号点.Bessie每经过一条边需 ...

  7. bilibili自定义调整视频播放速度

    自定义调整视频播放速度 在b站的播放页面,按下f12,打开控制台 在控制台中复制下面代码,想几倍速就把2.5改成你想要的播放速度 document.querySelector('video').pla ...

  8. 详解 CmProcess 跨进程通信的实现

    CmProcess 是 Android 一个跨进程通信框架,整体代码比较简单,总共 20 多个类,能够很好的便于我们去了解跨进程实现的原理. 个人猜测 CmProcess 也是借鉴了 VirtualA ...

  9. 动手实现一个较为简单的MQTT服务端和客户端

    项目地址:https://github.com/hnlyf168/DotNet.Framework 昨天晚上大致测试了下 ,490个客户端(一个收一个发)  平均估计每个每秒60个包  使用mqtt协 ...

  10. 高效C++:继承和实现

    如何正确的使用继承和实现是本章说明的重点. 确定public继承的关系是is-a public继承等同于is-a 对public继承,所有base的特性,在derived上都适用 避免遮掩继承而来的名 ...