1. 寫好一個要被呼叫的檔案:LogProvider
  2. 寫好他在xml檔案中的註冊:beans.config.xml
  3. 寫一個呼叫他的檔案:Test3



package util;

 

public class LogProvider {

public void log(String s){

    System.out.println(s);

}

}




<?xml version="1.0" encoding="UTF-8"?>

<beans xmlns="http://www.springframework.org/schema/beans"

    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

    xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">

 

 

    <bean id="logProvider" class="util.LogProvider"></bean>

    <!-- ↑這就是一個Bean物件,被呼叫時就會new出一個util.LogProvider的物件 -->

</beans>




package org.iiiedu.samuel.ProjSpringDemo;

 

import org.springframework.beans.factory.support.DefaultListableBeanFactory;

import org.springframework.beans.factory.xml.XmlBeanDefinitionReader;

import org.springframework.context.ApplicationContext;

import org.springframework.context.support.ClassPathXmlApplicationContext;

import org.springframework.core.io.ClassPathResource;

import org.springframework.core.io.Resource;

 

import util.LogProvider;

 

public class Test3 {

    public static void main(String[] args) {

       ApplicationContext context = new ClassPathXmlApplicationContext("beans.config.xml");

       //↑Spring4.X之後用ClassPathXmlApplicationContext讀取Spring組態設定檔

       LogProvider logger = (LogProvider)  context.getBean("logProvider");

       //IDSpring要求一個Bean

       logger.log("Step 1 ApplicationContext");

       //logger是已經被Spring new好的物件,可以拿來用了

      

    //-----------------------------------------------------------------------------------

       //上面三行與下面六行作用相等,下面方式已遭放棄

       DefaultListableBeanFactory factory = new DefaultListableBeanFactory();

       XmlBeanDefinitionReader reader = new XmlBeanDefinitionReader(factory);

       Resource resource = new ClassPathResource("beans.config.xml");//組態設定檔的名字

       reader.loadBeanDefinitions(resource);

       LogProvider bean = (LogProvider)  factory.getBean("logProvider");

       //IDSpring要求一個Bean

       bean.log("Step 1 BeanFactory");

      

    }

 

}

 

arrow
arrow
    全站熱搜

    乙方 發表在 痞客邦 留言(0) 人氣()