spring02-Ioc基本使用(xml配置:ref、list传值...)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_38262266/article/details/86666467
//pojo--Product基本类
//Shop有参构造方法
//User--List可用基本类用作集合元素
//bean--id--class--scope(prototype/singleton)
//property--value
//property--ref
//constructor-arg
//new Product()----->spring 管理bean
public class Product {
	
	String pname;
	int num;
	
	public String getPname() {
		return pname;
	}
	public void setPname(String pname) {
		System.out.println(pname);
		this.pname = pname;
	}
	public int getNum() {
		return num;
	}
	public void setNum(int num) {
		System.out.println(num);
		this.num = num;
	}
}
package spring02;

public class Shop {
	
	String shopname;
	int productTypeNum;
	
	public Shop(String shopname,int num) {
		// TODO Auto-generated constructor stub
		System.out.println(shopname);
		System.out.println(num);
		this.shopname=shopname;
		this.productTypeNum=num;
	}

}
package spring02;

import java.util.List;

public class User {
	
   String username;
   List<String> productls;
   List<Product> pls;
   
public List<Product> getPls() {
	return pls;
}

public void setPls(List<Product> pls) {
	System.out.println("data2"+pls.get(0).pname);
	System.out.println("data2"+pls.get(1).pname);
	System.out.println("data2"+pls.get(2).pname);
	this.pls = pls;
}

public List<String> getProductls() {
	return productls;
}

public void setProductls(List<String> productls) {
	System.out.println("data1   "+productls.get(0));
	this.productls = productls;
}

public User() {
	// TODO Auto-generated constructor stub
	   System.out.println("user....");
}

public String getUsername() {
	return username;
}

public void setUsername(String username) {
	this.username = username;
}
   
}
package spring02;

import org.springframework.context.support.ClassPathXmlApplicationContext;

public class Test {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
	ClassPathXmlApplicationContext cfg=new ClassPathXmlApplicationContext("applicationContext.xml");
	Shop shop=(Shop)cfg.getBean("shop");
	Shop shop2=(Shop)cfg.getBean("shop");
	
	if(shop==shop2)
		System.out.println("yes");
	}
}
<?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:context="http://www.springframework.org/schema/context"
       xmlns:aop="http://www.springframework.org/schema/aop"
       xsi:schemaLocation="http://www.springframework.org/schema/beans 
           http://www.springframework.org/schema/beans/spring-beans-3.1.xsd
           http://www.springframework.org/schema/context
           http://www.springframework.org/schema/context/spring-context-3.1.xsd
           http://www.springframework.org/schema/aop
           http://www.springframework.org/schema/aop/spring-aop-3.1.xsd">
	
	<bean  id="product" class="spring02.Product">
    <property name="pname" value="acer"></property>
    <property name="num" value="12" ></property>
  	</bean>
  
   	<bean  id="product2" class="spring02.Product">
            <property name="pname" value="acer2"></property>
   	    <property name="num" value="12" ></property>
   	<!--  <property name="user" ref="user" ></property> -->
  	</bean>
  
  
   	<bean  id="product3" class="spring02.Product">
    <property name="pname" value="acer3"></property>
   	<property name="num" value="12" ></property>
  	<!--   <property name="user" ref="user" ></property> -->
  	</bean>
  
   	<bean  id="user" class="spring02.User">
    <property name="username" value="joi"></property>
    <property name="productls">
    
    <list> 
      <value>lenvo</value>
      <value>acer</value>
      <value>xiaomi</value>
      <value>huawei</value>
    </list>
    </property>
   
    <property name="pls">
      <list>  
       <ref bean="product"/>
        <ref bean="product2"/>
          <ref bean="product3"/>
      </list>
    </property>
  </bean>
  
  <bean  id="shop" class="spring02.Shop" scope="prototype">
   <constructor-arg index="0" value="ali"></constructor-arg>
  <constructor-arg index="1" value="23"></constructor-arg>
  </bean>
     
</beans>

猜你喜欢

转载自blog.csdn.net/qq_38262266/article/details/86666467