zoukankan      html  css  js  c++  java
  • Spring加载context的几种方法

    Spring中的context管理

    Spring中IOC容器的初始化:

    ApplicationContext即是保存bean对象的容器,故容器本身的初始化,就是通过一系列的配置,将ApplicationContext进行初始化。

    而配置ApplicationContext大方向上分为了3中:

    一、使用classpath

    二、使用本地文件系统中某个文件地址

    三、(SpringMVC)web应用中用servlet类或者Listener类来初始化IOC容器

    而具体下来可以分为12种方式:

    1 ClassPathXmlApplicationContext

    利用这个实现类来读取classpath路径下的xml文件

    ApplicationContext context = new ClassPathXmlApplicationContext("applicationContext.xml");  

    UserDao dao = (UserDao)context.getBean("userDao");

    2 String数组形式(已经很少使用了)

    1. ClassPathXmlApplicationContext resource = new ClassPathXmlApplicationContext(new String[]{"applicationContext-ibatis-oracle.xml","applicationContext.xml","applicationContext-data-oracle.xml"}); BeanFactory factory = resource; UserDao userDao = (UserDao) factory.getBean("userDao");   

    3 ClassPathResource

    首先使用ClassPathResource将xml读取为一个Resource,之后用XmlBeanFactory去加在并读取该Resource

    1. Resource cr = new ClassPathResource("applicationContext.xml");   
    2. BeanFactory bf=new XmlBeanFactory(cr);   
    3. UserDao userDao = (UserDao)bf.getBean("userDao"); 

    4 FileSystemResource

    Resource rs = new FileSystemResource("D:/tomcat/webapps/wiscom/WEB-INF/classes/applicationContext.xml");
    BeanFactory factory = new XmlBeanFactory(rs);
    UserDao userDao = (UserDao )factory.getBean("userDao");

    此时的xml要么放在project的直接目录下,要么使用绝对路径

    5 FileSystemXmlApplicationContext

    1. String[] path={"WebRoot/WEB-INF/applicationContext.xml",  
    2. "WebRoot/WEB-INF/applicationContext_task.xml"};   
    3. ApplicationContext context = new FileSystemXmlApplicationContext(path);
  • 相关阅读:
    实现一个简单的Form授权 How to: Implement Simple Forms Authentication
    寄存器寻址方式
    HDU2094 产生冠军
    HDU1060 Leftmost Digit 数论
    HDU1496 Equations [hash]
    HDU1298 T9 字典树 DFS
    HDU1051 Wooden Sticks
    HDU1800 Flying to the Mars
    HDU1285 确定比赛名次 拓扑排序
    HDU1716 排列2 组合数
  • 原文地址:https://www.cnblogs.com/aguai1992/p/9341202.html
Copyright © 2011-2022 走看看