2.spring集合属性

1.list 

Person.java

public class Person {
    private String name;
    private int age;
    private List<car> cars;  //setter...}

applicationContext.xml

<!-- list -->
<bean id="person3" class="com.MrChengs2.Collection.Person">
    <property name="name" value="Mike"></property>
    <property name="age" value="24"></property>
    <property name="cars">
        <list>       <!-- 1中的Person类 -->
            <bean class="com.MrChengs1.HelloSpring.car" p:brand="XinXin" p:corp="AnHui"           p:maxSpeech="100" p:price="12345"></bean>
            <ref bean="car"/>
            <ref bean="car1"/>
        </list>
    </property>
</bean>

测试:

           Person p = (Person) ctx.getBean("person3");
           System.out.println(p);
Person [name=Mike, age=24, cars=[car [brand=XinXin, corp=AnHui, price=12345.0, maxSpeech=100], car [brand=LeiNuo, corp=shanghai, price=0.0, maxSpeech=120], car [brand=AoDI, corp=<shanghai>, price=0.0, maxSpeech=245]]]

2.Map

<Map>:标签里面嵌套<entry>,在<entry>中进行设置

PersonMap.java

public class PersonMap {
    private String name;
    private int age;
    private Map<String,car> cars;  //setter...}

applicationContext.xml

<bean id="Person4" class="com.MrChengs2.Collection.PersonMap">
    <property name="name" value="Rose"></property>
    <property name="age" value="77"></property>
    <property name="cars">
        <map >
            <entry key="AA" value-ref="car"></entry>
            <entry key="BB" value-ref="car1"></entry>
        </map>
    </property>
</bean>

测试:

          PersonMap p1 = (PersonMap) ctx.getBean("Person4");
          System.out.println(p1);
PersonMap [name=Rose, age=77, cars={AA=car [brand=LeiNuo, corp=shanghai, price=0.0, maxSpeech=120], BB=car [brand=AoDI, corp=<shanghai>, price=0.0, maxSpeech=245]}]

3.Properties

DatasourceProperties.java

public class DatasourceProperties {
    private Properties properties;  //setter...}

applicationContext.xml

<bean id="properties" class="com.MrChengs2.Collection.DatasourceProperties">
    <property name="properties">
        <props>
            <prop key="user">root</prop>
            <prop key="password">1234</prop>
            <prop key="jdbcUrl">jdbc:mysql://</prop>
            <prop key="driverClass">com.mysql.jdbc.Driver</prop>
        </props>
    </property>
</bean>

测试:

          DataSource dataSource = (DataSource) ctx.getBean("properties");
          System.out.println(dataSource);

4.配置独立集合的Bean

appliactionContext.xml

<!-- 配置独立的集合Bean
    此时需要在NameSpace导入util命名空间
    此时引用cars就等于直接引用在这里面的整体内容
 -->
<util:list id="cars">
    <ref bean="car"/>
    <ref bean="car1" />
</util:list>

<bean id="Persons" class="com.MrChengs2.Collection.Person">
  <property name="name" value="zhangshan"></property>
  <property name="age" value="25"></property>
  <property name="cars" ref="cars"></property>
</bean>

测试:

          Person p2 = (Person) ctx.getBean("Persons");
           System.out.println(p2);
Person [name=zhangshan, age=25, cars=[car [brand=LeiNuo, corp=shanghai, price=0.0, maxSpeech=120], car [brand=AoDI, corp=<shanghai>, price=0.0, maxSpeech=245]]]

原文地址:https://www.cnblogs.com/Mrchengs/p/10085550.html

时间: 2024-07-31 19:05:39

2.spring集合属性的相关文章

spring学习之集合属性注入

spring中对象之间的相互依赖关系是通过applicationContext.xml来管理的,因此集合属性注入的重点也放在applicationContext.xml的配置之中. 下面是一个完整的各种集合属性注入的例子 目录结构: 实体类 public class Students { private String sid; private String sname; private int age; public Students() { super(); } public Students

[原创]java WEB学习笔记98:Spring学习---Spring Bean配置及相关细节:如何在配置bean,Spring容器(BeanFactory,ApplicationContext),如何获取bean,属性赋值(属性注入,构造器注入),配置bean细节(字面值,包含特殊字符,引用bean,null值,集合属性list map propert),util 和p 命名空间

本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱好者,互联网技术发烧友 微博:伊直都在0221 QQ:951226918 -----------------------------------------------------------------------------------------------------------------

Spring简单属性注入和集合属性注入

属性注入是Spring中较为重要的一项功能.下面就讲讲简单属性注入和集合属性注入的具体操作. 步骤: ①首先不管是简单属性注入还是集合属性注入,都要使用到property标签 ②然后如果是简单属性注入的话直接给property标签的value值赋值即可,其中的value的类型我们可以不指定,框架会自        动识别,当然我们也可以指定,指定的形式如:java.lang.String (要写完成的类型).其也有两种方式: 第一种方式:<property name="类中属性名"

使用SMM框架开发企业级应用-----Spring集合注入和域属性自动注入byName和byType

Spring集合的注入 步骤一:导入依赖 步骤二:创建实体类 步骤三:创建大配置文件 步骤四:测试 域属性自动注入 byName与byType 步骤一:创建两个实体类 public class Student { private Integer stuid; private String stuName; private Teacher teacher; public Teacher getTeacher() { return teacher; } public void setTeacher(

Spring集合 (List,Set,Map,Properties) 实例

下面例子向您展示Spring如何注入值到集合类型(List, Set, Map, and Properties). 支持4个主要的集合类型: List – <list/> Set – <set/> Map – <map/> Properties – <props/> Spring beans 一个Customer对象,有四个集合属性. package com.yiibai.common; import java.util.List; import java.

Spring4学习笔记2-配置集合属性

1 可使用<list> <map> <set>等来配置集合属性 2 List <!-- 配置List属性 --> <bean id="person3" class="com.kejian.spring.bean.collectionbean.PersonForList"> <property name="name" value="Peter"></p

7、单向一对多的关联关系(1的一方有n的一方的集合属性,n的一方却没有1的一方的引用)

单向一对多的关联关系 关联特点:1的一方有n的一方的集合属性,n的一方却没有1的一方的引用 比如:Customer对Order是一对多的关联关系,则Customer中有Order的集合属性,而Order中却没有对Customer的引用.这样可以通过客户检索到其所有的订单信息,却不能够由订单得到其所属的客户. 映射单向一对多的关联关系有两个要点: 1.利用@OneToMany注解进行单向一对多的映射: 2.利用@JoinColumn来映射外键列的名称: 注意的点: 1.@OneToMany的默认检

6、JPA_映射单向多对一的关联关系(n的一方有1的引用,1的一方没有n的集合属性)

单向多对一的关联关系 具体体现:n的一方有1的引用,1的一方没有n的集合属性 举个例子:订单Order和顾客Customer是一个单向多对一的关联关系.Order是n的一方,有对Customer的引用:而Customer作为1的一方却没有Order的集合属性. 主要是对n的一方使用@ManyToOne和@JoinColumn注解.而1的一方不需要做任何修改.具体的映射方法: 1.采用@ManyToOne注解映射多对一的关联关系,默认情况下采用“左外连接”的方式进行加载.可以通过配置@ManyTo

spring 配置属性细节

苹果的WWDC ,除了发布了os x 10.10 和IOS8 外,还推出了Swift.详细点击这里 代码总体风格有点像Java,也有点像javascript. 下面给出一些代码段(来自苹果官方手册): println("Hello, world") "var myVariable = 42 myVariable = 50 let myConstant = 42" 摘录来自: Apple Inc. "The Swift Programming Languag