spring (一) 不同版本加载 bean 的方式

本文详细介绍了Spring框架中通过类路径和文件系统读取配置文件的方式,包括ClassPathXmlApplicationContext、FileSystemXmlApplicationContext、GenericXmlApplicationContext的使用方法及3.x版本的读取方式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

package com.spring.hello;

import org.junit.Test;
import org.springframework.beans.factory.BeanFactory;
import org.springframework.beans.factory.xml.XmlBeanFactory;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import org.springframework.context.support.FileSystemXmlApplicationContext;
import org.springframework.context.support.GenericXmlApplicationContext;
import org.springframework.core.io.ClassPathResource;
import org.springframework.core.io.FileSystemResource;

public class TestSpring {
   /**
    * 4.x版本以后读取spring的配置文件方式
    * 最常用方式
    */
   @Test
   public void testSpringClassPath(){
       ClassPathXmlApplicationContext ca=new ClassPathXmlApplicationContext("applicationContext.xml");
       UserInfo user=(UserInfo)ca.getBean("user");
       System.out.println(user);
   }
   /**
    * 4.x版本以后读取spring的配置文件方式
    * classpath用于访问类路径下的配置文件
    * filesyetem用于访问文件系统下的配置文件
    */
   @Test
   public void testSpringFileSystem(){
       FileSystemXmlApplicationContext ca=new FileSystemXmlApplicationContext("c:/applicationContext.xml");
       UserInfo user=(UserInfo)ca.getBean("user");
       System.out.println(user);
   }
   /**
    * GenericXmlApplicationContext 是通用过的xml加载方式
    * 可以使用 前缀 判断是类路径还是文件系统
    * file:表示文件系统
    * classpath代表类路径
    */
   @Test
   public void testSpringGener(){
       GenericXmlApplicationContext ca=new GenericXmlApplicationContext("file:c:/applicationContext.xml");
       UserInfo user=(UserInfo)ca.getBean("user");
       System.out.println(user);
   }
   /**
    * 3.x版本以后读取spring的配置文件方式
    */
   @Test
   public void testSpring3XClassPath(){
       ClassPathResource cpr=new ClassPathResource("applicationContext.xml");
       BeanFactory bf=new XmlBeanFactory(cpr);
       UserInfo user=(UserInfo)bf.getBean("user");
       System.out.println(user);
   }
   /**
    * 3.x版本以后读取spring的配置文件方式
    */
   @Test
   public void testSpring3XFileSystem(){
       FileSystemResource cpr=new FileSystemResource("c:/applicationContext.xml");
       BeanFactory bf=new XmlBeanFactory(cpr);
       UserInfo user=(UserInfo)bf.getBean("user");
       System.out.println(user);
   }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值