Spring Framework_学习记录_06

1.集合实例化

  • DrawingApp.java
package org.zcs.spring;

import org.springframework.beans.factory.BeanFactory;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import org.springframework.context.support.FileSystemXmlApplicationContext;
 

public class DrawingApp {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		//BeanFactory factory = new  FileSystemXmlApplicationContext("src/spring.xml");
		//Triangle triangle = new Triangle();
		ApplicationContext context = new ClassPathXmlApplicationContext("spring.xml");
		Triangle triangle = (Triangle)context.getBean("triangle");
		triangle.draw();
	}
}

  • Triangle.java
package org.zcs.spring;

import java.util.List;

public class Triangle {
	private List<Point> list ;
	
	public List<Point> getList() {
		return list;
	}

	public void setList(List<Point> list) {
		this.list = list;
	}

	public void draw () {
		for(Point p : list) {
			System.out.println("This is Point: (" +p.getX()  +"," + (p.getY()) +")");
		}
	}
}

  • spring.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:p="http://www.springframework.org/schema/p"
    xsi:schemaLocation="http://www.springframework.org/schema/beans
        http://www.springframework.org/schema/beans/spring-beans.xsd">
   
   	<bean id = "triangle" class= "org.zcs.spring.Triangle"  name = "triangle-name">
 		  <property name="list">
 		  	<list>
 		  		<ref bean= "zeroPoint"/>
 		  		<ref bean= "twoPoint"/>
 		  		<ref bean= "threePoint"/>
 		  		
 		  	</list>
 		  </property>
 		 
 		
   	</bean>
   	
   	<bean id= "zeroPoint" class = "org.zcs.spring.Point">
   		<property name="x"  value = "0"></property>
   		<property name="y"  value = "0"></property>
   	</bean>
   	<bean id= "twoPoint" class = "org.zcs.spring.Point">
		<property name="x"  value = "20"></property>
		<property name="y"  value = "0"></property>
	</bean>

 	<bean id= "threePoint" class = "org.zcs.spring.Point">
		   <property name="x"  value = "0"></property>
		   <property name="y"  value = "20"></property>
   	</bean>
 
  </beans>

2.bean 的自动装入

  • DrawingApp.java
package org.zcs.spring;

import org.springframework.beans.factory.BeanFactory;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import org.springframework.context.support.FileSystemXmlApplicationContext;
 

public class DrawingApp {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		//BeanFactory factory = new  FileSystemXmlApplicationContext("src/spring.xml");
		//Triangle triangle = new Triangle();
		ApplicationContext context = new ClassPathXmlApplicationContext("spring.xml");
		Triangle triangle = (Triangle)context.getBean("triangle");
		triangle.draw();
	}
}

  • Triangle.java
package org.zcs.spring;

import java.util.List;

public class Triangle {
	 private Point pointA;
	 private Point pointB;
	 private Point pointC;
	 

	public Point getPointA() {
		return pointA;
	}


	public void setPointA(Point pointA) {
		this.pointA = pointA;
	}


	public Point getPointB() {
		return pointB;
	}


	public void setPointB(Point pointB) {
		this.pointB = pointB;
	}


	public Point getPointC() {
		return pointC;
	}


	public void setPointC(Point pointC) {
		this.pointC = pointC;
	}


	public void draw () {
		
			System.out.println("This is PointA: (" +getPointA().getX()  +"," + getPointA().getY() +")");
			System.out.println("This is PointB: (" +getPointB().getX()  +"," + getPointB().getY() +")");
			System.out.println("This is PointC: (" +getPointC().getX()  +"," + getPointC().getY() +")");
	}
}

  • spring.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:p="http://www.springframework.org/schema/p"
    xsi:schemaLocation="http://www.springframework.org/schema/beans
        http://www.springframework.org/schema/beans/spring-beans.xsd">
   
   	<bean id = "triangle" class= "org.zcs.spring.Triangle"  autowire= "byName">
 		  
 		 
 		
   	</bean>
   	
   	<bean id= "pointA" class = "org.zcs.spring.Point">
   		<property name="x"  value = "0"></property>
   		<property name="y"  value = "0"></property>
   	</bean>
   	<bean id= "pointB" class = "org.zcs.spring.Point">
		<property name="x"  value = "20"></property>
		<property name="y"  value = "0"></property>
	</bean>

 	<bean id= "pointC" class = "org.zcs.spring.Point">
		   <property name="x"  value = "0"></property>
		   <property name="y"  value = "20"></property>
   	</bean>
 
   	
  </beans>

3.学习笔记

  • 学习了如何对集合进行注入对象的。
  • 学习了spring是如何进行自动装配的,自动装配可以通过name、type、constructor等等。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值