怎么在applicationContext.xml文件中加载其它bean.xml文件或者引用bean.xml文件中的bean id

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了怎么在applicationContext.xml文件中加载其它bean.xml文件或者引用bean.xml文件中的bean id相关的知识,希望对你有一定的参考价值。

applicationContext.xml 在定义parent的时候有错误 p:接口的时not found daoContext.xml

一、利用ClassPathXmlApplicationContext,可以从classpath中读取XML文件
//读取一个文件
1. ApplicationContext context = new ClassPathXmlApplicationContext("applicationContext.xml");
UserDao userDao = (UserDao)context.getBean("userDao");
//读取多个文件
2.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");
二、利用ClassPathResource,可以从classpath中读取XML文件
Resource cr = new ClassPathResource("applicationContext.xml");
BeanFactory bf=new XmlBeanFactory(cr);
UserDao userDao = (UserDao)bf.getBean("userDao");
三、利用XmlWebApplicationContext读取
XmlWebApplicationContext ctx = new XmlWebApplicationContext();
ctx.setConfigLocations(new String[] "/WEB-INF/ applicationContext.xml");
ctx.setServletContext(pageContext.getServletContext());
ctx.refresh();
UserDao userDao = (UserDao ) ctx.getBean("userDao ");
四、利用FileSystemResource读取

Resource rs = new FileSystemResource("D:/tomcat/webapps/test/WEB-INF/classes/ applicationContext.xml");
BeanFactory factory = new XmlBeanFactory(rs);
UserDao userDao = (UserDao )factory.getBean("userDao");
注意:利用FileSystemResource,则配置文件必须放在project直接目录下,或者写明绝对路径,否则就会抛出找不到文件的异常
五、利用FileSystemXmlApplicationContext读取,可以指定XML定义文件的相对路径或者绝对路径来读取定义文件。
1.String[] path="WebRoot/WEB-INF/applicationContext.xml","WebRoot/WEB-INF/applicationContext_task.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:地址");
参考技术A 如果你的配置文件中有 parent 这个属性,那么你的类当做就必须得相应的父类的能把错误信息发上来吗?

java普通类怎么调用service曾的累

如果你用spring的话,你就可以在类中初始化spring配置文件applicationContext.xml:
ApplicationContext applicationContext = new ClassPathXmlApplicationContext(applicationContext.xml");
然后拿到service类:
logonService = (LogonService) this.applicationContext.getBean("logonService");
调用类中的方法:
logonService.userLogin(userName);
即可
参考技术A 不符合MVC的模式。 参考技术B 你是指hibernate吗?追问

是的我刚开始就这样写可是一直报错!找不到applicationcontext.xml

追答

那个事spring的 把代码给我看看 或者 错误信息给我看看

追问

org.springframework.beans.factory.BeanDefinitionStoreException: IOException parsing XML document from class path resource [applicationContext.xml]; nested exception is java.io.FileNotFoundException: class path resource [applicationContext.xml] cannot be opened because it does not exist
Caused by: java.io.FileNotFoundException: class path resource [applicationContext.xml] cannot

本回答被提问者采纳
参考技术C 没有框架直接调用。
有框架没有依赖的话也直接调用。
有框架有依赖的时候使用框架API调用。。。。。。追问

可以具体一点吗有框架有依赖怎么调用,

以上是关于怎么在applicationContext.xml文件中加载其它bean.xml文件或者引用bean.xml文件中的bean id的主要内容,如果未能解决你的问题,请参考以下文章

在SSH框架中,只有applicationContext.xml,没有hibernate.cfg.xml,怎么用代码自动生成数据库中的表?

SSH2框架中 applicationContext.xml怎么配置?

applicationcontext.xml和spring-servlet.xml怎么配置

怎么读取Spring 的配置文件applicationContext.xml-CSDN论坛

applicationContext.xml 存放到工程下resources文件 而不是放在src 或webroot的话要怎么配置 web.xml文件

Spring源码解析-applicationContext.xml加载和bean的注册