1. 程式人生 > >springbean的詳細配置,裝配物件,集合,map

springbean的詳細配置,裝配物件,集合,map

xml測試文件

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:util="http://www.springframework.org/schema/util"
    xmlns:p="http://www.springframework.org/schema/p"
    xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
        http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-4.0.xsd"
>
<bean id="helloWorld" class="com.dasenlin.test.springmodel.HelloWorld"> <property name="name" value="Spring"></property> </bean> <bean id="car" class="com.dasenlin.test.springmodel.Car"> <constructor-arg value="Audi" index="0"></constructor-arg
>
<constructor-arg value="Shanghai" index="1"></constructor-arg> <constructor-arg type="int"> <value>240</value> </constructor-arg> </bean> <bean id="car2" class="com.dasenlin.test.springmodel.Car"> <constructor-arg
value="BMW" index="0">
</constructor-arg> <constructor-arg index="1"> <value><![CDATA[<Germany>]]></value> </constructor-arg> <constructor-arg value="210000.15" type="double"></constructor-arg> </bean> <bean id="person" class="com.dasenlin.test.springmodel.Person"> <property name="name" value="Tom"></property> <property name="age" value="20"></property> <!-- <property name="car" ref="car2"></property> --> <!-- <property name="car"> <ref bean="car2"/> </property> --> <!-- 內部bin不能被外部引用,只能在內部被使用 --> <!-- <property name="car"> <bean class="com.dasenlin.test.springmodel.Car"> <constructor-arg value="Ford"></constructor-arg> <constructor-arg value="shanxi"></constructor-arg> <constructor-arg value="20000" type="double"></constructor-arg> </bean> </property> --> </bean> <!-- 配置集合屬性 --> <bean id="person3" class="com.dasenlin.test.springmodel.collection.Person"> <property name="name" value="XiaoMa"></property> <property name="age" value="30"></property> <property name="carli"> <list> <ref bean="car4"/> <ref bean="car5"/> <ref bean="car6"/> <bean class="com.dasenlin.test.springmodel.collection.Car"> <constructor-arg value="QQ"></constructor-arg> <constructor-arg value="qirui"></constructor-arg> <constructor-arg value="50000"></constructor-arg> <constructor-arg value="156.12"></constructor-arg> </bean> </list> </property> </bean> <bean id="car4" class="com.dasenlin.test.springmodel.collection.Car"> <constructor-arg value="BMW"></constructor-arg> <constructor-arg value="shanghai"></constructor-arg> <constructor-arg value="210000"></constructor-arg> <constructor-arg value="456.12"></constructor-arg> </bean> <bean id="car5" class="com.dasenlin.test.springmodel.collection.Car"> <constructor-arg value="Benci"></constructor-arg> <constructor-arg value="sichuan"></constructor-arg> <constructor-arg value="410000"></constructor-arg> <constructor-arg value="456.12"></constructor-arg> </bean> <bean id="car6" class="com.dasenlin.test.springmodel.collection.Car"> <constructor-arg value="dazhong"></constructor-arg> <constructor-arg value="shanxi"></constructor-arg> <constructor-arg value="10000"></constructor-arg> <constructor-arg value="256.12"></constructor-arg> </bean> <!-- 配置map屬性值 --> <bean id="newPerson" class="com.dasenlin.test.springmodel.collection.Person"> <property name="name" value="xiaoDong"></property> <property name="age" value="25"></property> <property name="carli"><null/></property> <property name="carMap"> <map> <entry key="AA" value-ref="car4"></entry> <entry key="BB" value-ref="car5"></entry> <entry key="CC" value-ref="car6"></entry> </map> </property> </bean> <!-- 配置單例的集合Bean,以供多個bean進行引用 --> <util:list id="carss"> <ref bean="car4"/> <ref bean="car5"/> </util:list> <bean id="person4" class="com.dasenlin.test.springmodel.collection.Person"> <property name="name" value="Jaxk"></property> <property name="age" value="22"></property> <property name="carli"> <ref bean="carss"/> </property> </bean> <!-- 通過P名稱空間為bean的屬性賦值,需要匯入p名稱空間的schema --> <bean id="person5" class="com.dasenlin.test.springmodel.collection.Person" p:name="Queen" p:age="20" p:carli-ref="carss"></bean> </beans>

實體類

package com.dasenlin.test.springmodel;

public class HelloWorld {
    private String name;

    public String getName2() {
        return name;
    }

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

    public void hello(){
        System.out.println("hello:"+name);
    } 
}
package com.dasenlin.test.springmodel;
/**
 *構造方法注入 
 */
public class Car {
    private String brand;
    private String company;
    private int price;
    private double maxSpeed;

    public Car(String brand, String company, int price) {
        super();
        this.brand = brand;
        this.company = company;
        this.price = price;
    }
    public Car(String brand, String company, double maxSpeed) {
        super();
        this.brand = brand;
        this.company = company;
        this.maxSpeed = maxSpeed;
    }

    public double getMaxSpeed() {
        return maxSpeed;
    }
    public void setMaxSpeed(double maxSpeed) {
        this.maxSpeed = maxSpeed;
    }
    @Override
    public String toString() {
        return "Car [brand=" + brand + ", company=" + company + ", price=" + price + ", maxSpeed=" + maxSpeed + "]";
    }

}
package com.dasenlin.test.springmodel;

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

    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public Integer getAge() {
        return age;
    }
    public void setAge(Integer 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 + "]";
    }

}
package com.dasenlin.test.springmodel;

import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;

public class Main {

    public static void main(String[] args) {
        //HelloWorld hellworld = new HelloWorld();
        //hellworld.setName("xiaomei");
        ApplicationContext ctx = new ClassPathXmlApplicationContext("applicationContext.xml");
        HelloWorld helloworld = ctx.getBean(HelloWorld.class);
        helloworld.hello();
        Car car=(Car) ctx.getBean("car");
        Car car2=(Car) ctx.getBean("car2");
        Person person = (Person) ctx.getBean("person");
        System.out.println(car.toString());
        System.out.println(car2.toString());
        System.out.println(person.toString());
    }

}

第二部分,集合實體

package com.dasenlin.test.springmodel.collection;

public class Car {
    private String brand;
    private String company;
    private Double price;
    private Double speedMax;

    public Car(String brand, String company, Double price, Double speedMax) {
        super();
        this.brand = brand;
        this.company = company;
        this.price = price;
        this.speedMax = speedMax;
    }

    @Override
    public String toString() {
        return "Car [brand=" + brand + ", company=" + company + ", price=" + price + ", speedMax=" + speedMax + "]";
    }

}
package com.dasenlin.test.springmodel.collection;

import java.util.List;
import java.util.Map;

public class Person {
    private String name;
    private Integer age;
    private List<Car> carli;
    private Map<String,Car>carMap;
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public Integer getAge() {
        return age;
    }
    public void setAge(Integer age) {
        this.age = age;
    }
    public List<Car> getCarli() {
        return carli;
    }
    public void setCarli(List<Car> carli) {
        this.carli = carli;
    }

    public Map<String, Car> getCarMap() {
        return carMap;
    }

    public void setCarMap(Map<String, Car> carMap) {
        this.carMap = carMap;
    }
    @Override
    public String toString() {
        return "Person [name=" + name + ", age=" + age + ", carli=" + carli + ", carMap=" + carMap + "]";
    }

}
package com.dasenlin.test.springmodel.collection;

import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;

public class Test {

    public static void main(String[] args) {
        ApplicationContext ctx = new ClassPathXmlApplicationContext("applicationContext.xml");
        Person p =(Person) ctx.getBean("person3");
        System.out.println(p);
        Person newp = (Person) ctx.getBean("newPerson");
        System.out.println(newp);
        Person p4 = (Person) ctx.getBean("person4");
        System.out.println(p4);
        Person p5 = (Person)ctx.getBean("person5");
        System.out.println(p5);
    }

}

相關推薦

springbean詳細配置裝配物件集合map

xml測試文件 <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org

Android仿ios底部彈框支援傳入list集合任意配置個數

不說廢話,一看程式碼誰都懂。   public class BottomDialog { private Context context; private Dialog dialog; private TextView txt_title; p

Json中遍歷物件或者集合簡單的實現

後臺 從資料庫獲取的物件,或者集合,一一儲存在map中 function infoView(id,state){            $.ajax({ type: 'POS

android本地、sd卡儲存物件集合以及讀取該物件

<!-- 在SDCard中建立與刪除檔案的許可權 --> <uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" />

Jsp頁面傳Json資料到服務端物件集合進行資料處理

需求:1、將頁面資料帶到服務端並轉成物件,2、將頁面的集合資料帶到服務端轉List 實現:用ajax請求傳遞資料,資料格式為json JS方法: testJsonMethod = function(

物件List集合物件的某一屬性排序

物件List集合排序 核心程式碼塊 Collections.sort(eList , new Comparator<E>() { public int co

Android Intent引數傳遞包括物件複雜集合等多方式傳遞

用Intent傳遞資料的時候,如果傳遞的是基本型別,不用說很容易,單個的就是單個的傳,多個就用bundle傳遞,如果傳遞的是物件或者是集合,簡單的某個集合還是可以直接傳的,但是大多數的是不可以傳的。在傳遞物件的時候有兩種方式,一種是實現Parcelable或者Seriali

C/C++|Qt工作筆記-4種方法判斷當前物件(類)名或標識(繼承發typeid法物件className()法Q_CLASSINFO法)

回想起3個月前,剛剛參加工作也做過類似的筆記,但只有2種方法,估計剛畢業沒有什麼墨水,經過3個月時間又多了2種方法: 這些方法都可用於RTTI 第一個方法是繼承發(C++中很推薦用這個,感覺用這個結構會很清晰): 執行截圖如下: 原始碼如下: #

順序容器----順序容器操作vector物件如何增長額外的string操作容器介面卡

  一、順序容器操作 1、向順序容器新增元素   向順序容器(array除外)新增元素的操作: 操作 說明 c.push_back(t) 在c的尾部建立一個值為t的元素。返回void c.emplace_

java中氣泡排序根據物件的屬性物件

主程式排序: public class TestDmo { public static void main(String[] args) { List list=getData();

慕課網----大話PHP設計模式 四(介面卡模式資料物件對映模式觀察者模式)

12.介面卡模式 可以將截然不同的函式介面封裝成統一的API 實際應用舉例,php的資料庫操作有mysql,mysqli,pdo 3種,可以用介面卡模式統一成一致。類似的場景還有cache介面卡,將memcache,redis,file,apc等不同的快取函

javascript day05 外部物件document物件(DOM模型)查詢節點的方式

目錄 1.外部物件     1.BOM 和 DOM         BOM:Browser Object Model             瀏覽器物件模型             將瀏覽器比喻成一個物件-window(

42.C#--集合的使用創建一個集合裏面添加一些數字求平均值與和以及最大值最小值

一個 void n) write 賦值 += 最大 tel count static void Main(string[] args){//42.集合的使用,創建一個集合,裏面添加一些數字,求平均值與和,以及最大值,最小值//創建一個集合ArrayList list = n

echart異步刷新圖表詳細配置註釋

doc fun als 否則 初始化 ott 組件 異步 order 效果預覽: 直接上代碼:(用之前務必要引入echart.js插件) <body> <!-- 數據選擇 --> <ul class="tab_me

nagios 服務端與客戶端監控安裝與詳細配置配置文件詳解

this sql 引入 apache2 cpu load fine 宕機 pri require nagios 安裝與部署—————— 1、安裝前準備(1)創建nagios用戶和用戶組 [root@localhost ~]#groupadd nagios

Linux搭建 iSCSI 共享存儲 個人理解詳細配置 centos7

iscsi;網絡存儲 官方解釋: iSCSI( Internet Small Computer System Interface 互聯網小型計算機系統接口)是由IBM 下屬的兩大研發機構一一加利福尼亞AImaden和以色列Haifa研究中心共同開發的,是一個

如何根據物件的屬性集合(list / set)中的物件進行排序

    一:針對list      通過java.util.Collections的sort方法,有2個引數,第一個引數是list物件,第二個引數是new Comparator<物件類>(){}方法,這個方法

redis 系列9 物件型別(字串雜湊列表集合有序集合)與資料結構關係

原文: redis 系列9 物件型別(字串,雜湊,列表,集合,有序集合)與資料結構關係 一.概述   在前面章節中,主要了解了 Redis用到的主要資料結構,包括:簡單動態字串、連結串列(雙端連結串列)、字典、跳躍表、 整數集合、壓縮列表(後面再瞭解)。Redis沒有直接使用這些資料結構來實現鍵

Spring依賴注入(構造引數注入、集合陣列屬性注入、XML自動注入 全註解配置

依賴注入 構造引數注入        --> 常用的是方案一和方案二         MyBean類  YouBean類 <?xml version="1.0" encodin

List集合練習題 完成getAllDog 方法從一個Animal集合中挑選出所有的Dog物件並把這些物件 放在一個Dog 集合中返回。

package cn.sc.test; import java.util.ArrayList; import java.util.List; public class TestAnimal { public static void main(String[] args) { List