Java类中加载Spring中的ApplicationContext.xml文件的方式

xiaoxiao2021-02-28  58

Xml代码   <1>、利用ClassPathXmlApplicationContext,可以从classpath中读取XML文件   //读取一个文件    1. ApplicationContext contextnew ClassPathXmlApplicationContext("applicationContext.xml");    UserDAO userDAO= (UserDAO )context.getBean("userDAO");    //读取多个文件    2.ClassPathXmlApplicationContext resourcenew ClassPathXmlApplicationContext(new String[]   {"applicationContextconfig.xml","applicationContext.xml","applicationContext-data.xml"});    BeanFactory factoryresource;   UserDAO userDAO= (UserDAO ) factory.getBean("userDAO ");     <2>、利用ClassPathResource,可以从classpath中读取XML文件   Resource resourcenew ClassPathResource("applicationContext.xml");    BeanFactory bf=new XmlBeanFactory(resource );    UserDAO userDAO= (UserDAO )bf.getBean("userDAO ");    <3>、利用XmlWebApplicationContext读取   XmlWebApplicationContext xmlctx = new XmlWebApplicationContext();    xmlctx.setConfigLocations(new String[] {"/WEB-INF/ applicationContext.xml");    xmlctx.setServletContext(pageContext.getServletContext());    xmlctx.refresh();    UserDAO userDAO= (UserDAO ) xmlctx.getBean("userDAO ");    <4>、利用FileSystemResource读取    Resource resourcenew FileSystemResource("E:/Java/spring/WebRoot/WEB-INF/classes/ applicationContext.xml");    BeanFactory factorynew XmlBeanFactory(resource );    UserDAO userDAO= (UserDAO )factory.getBean("userDAO ");       注意:利用FileSystemResource,则配置文件必须放在project直接目录下,或者写明绝对路径,否则就会抛出找不到文件的异常   <5>、利用FileSystemXmlApplicationContext读取,可以指定XML定义文件的相对路径或者绝对路径来读取定义文件。   1.String[] path={"WebRoot/WEB-INF/applicationContext.xml","WebRoot/WEB-INF/applicationContext_config.xml"};    ApplicationContext context = new FileSystemXmlApplicationContext(path);   2. String path="WebRoot/WEB-INF/applicationContext*.xml";    ApplicationContext context = new FileSystemXmlApplicationContext(path);    3.ApplicationContext ctx = new FileSystemXmlApplicationContext("classpath:地址"); 
转载请注明原文地址: https://www.6miu.com/read-80268.html

最新回复(0)