zoukankan      html  css  js  c++  java
  • Spring IoC DI

    先解释下基本概念:

    IOC:控制反转:将对象的创建权,Spring管理.

    DI:依赖注入:Spring创建对象的过程中,把对象依赖的属性注入到类中.

    在面向对象中饭,常见的有以下几类关系。

     1依赖:

     

              public class A{

     

              private B b;

     

              }

     

    继承关系 

     

    3 聚合关系    

        聚集:A类的对象在创建时不会立即创建B类的对象,而是等待一个外界的对象传给它,传给它的这个对象不是A类创建的。

        组合:A中引用了b,并且b是a创建的。

    Spring注入方式有2种,构造器和setter方法。下面举例说明,这里主要说明setter方式。构造器暂不举例

       基本属性,以及对象,list,map,set 注入举例

       

    import java.util.List;
    import java.util.Map;
    import java.util.Set;
    
    public class Car {
    	private String name;
    	private double money;
    	private List<String> list;
    	private Set<String> set;
    	private Map<String, Integer> map;
    
    	public String getName() {
    		return name;
    	}
    
    	public void setName(String name) {
    		this.name = name;
    	}
    
    	public double getMoney() {
    		return money;
    	}
    
    	public void setMoney(double money) {
    		this.money = money;
    	}
    
    	public List<String> getList() {
    		return list;
    	}
    
    	public void setList(List<String> list) {
    		this.list = list;
    	}
    
    	public Set<String> getSet() {
    		return set;
    	}
    
    	public void setSet(Set<String> set) {
    		this.set = set;
    	}
    
    	public Map<String, Integer> getMap() {
    		return map;
    	}
    
    	public void setMap(Map<String, Integer> map) {
    		this.map = map;
    	}
    }
    

     

      相关的xml代码 

        

    	<bean id="Car" class="XXX.com.Car">
    <!-- <property>标签中name就是属性名称,value是普通属性的值,ref:引用其他的对象 -->
    		<property name="name" value="保时捷"/>
    		<property name="money" value="5000000"/>
                   <property name="list">
       			<list>
    				<value>value1</value>
    				<value>value2</value>
    			</list>
    		</property>
    		
    		<!-- 注入set集合 -->
    		<property name="set">
    			<set>
    				<value>value1</value>
    				<value>value2</value>
    			</set>
    		</property>
    		
    		<!-- 注入map集合 -->
    		<property name="map">
    			<map>
    				<entry key="k1" value="1"/>
    				<entry key="k2" value="2"/>
    			</map>
    		</property>
    	</bean>
    

      

     

     

      

        

       

     

     

     

  • 相关阅读:
    第十周(11.18-11.24)----结对编程----感悟
    第十周(11.18-11.24)----分数计算----(2)对两个分数进行加减乘除
    第十周(11.18-11.24)----规格说明书练习----吉林市1日游
    浪潮之巅读后感
    闽江学院软件学院2015级学生职业人物访谈
    第五作业
    第4周~第12周周记
    兴趣问题清单
    学习进度
    价值观作业
  • 原文地址:https://www.cnblogs.com/javabigdata/p/5657213.html
Copyright © 2011-2022 走看看