如何在java代码中创建applicationcontext.xml中的bean

有一个java web project项目,我的applicationcontext.xml文件放在了WEB-INF/下面。
现在我建了一个测试类Test.java,我想用它测试一下spring的配置是否正确,那么我如何在Test测试类中的main方法中写代码呢?
string path="";
ApplicationContext ac = new classPathXMLApplicationContext(path);
这个path该怎么写呢?
我写:
/WEB-INF/applicationcontext.xml不对
WEB-INF/applicationcontext.xml也不对
/WebRoot/WEB-INF/applicationcontext.xml还不对
咋写呢?
applicationContext.xml放在src目录下是没有问题的,也测试成功了。
但就是放在WEB-INF下后,在Test测试类中我该如何写这个路径呢?
--------------------
经过一番百度和楼下朋友的解答,问题基本解决
http://hi.baidu.com/0428_hai/blog/item/e784addd42fe4e2e5882dd19.html

这样吧,你首先在WEB-INF目录下的web.xml 添加下面的一个节点。例如我的配置名称是beans.xml
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:beans.xml</param-value>
</context-param>
按照你的名称修改,然后在JUnit测试的时后新建对象这样写就可以了
ApplicationContext ctx = new ClassPathXmlApplicationContext("beans.xml");
希望可以帮到你追问

关键是我在运行Test测试类时,根本就没有部署我的Web工程,有没有启动tomcat,这时候web.xml没加载啊,配置web.xml有用吗?

追答

这样啊,可以的,我的J2EE都跑通了,如果不行你可以把applicationcontext.xml放到你的SRC根目录下面,系统会自动查找加载的

追问

applicationContext.xml放到src里是没有问题的,我也测试成功了。
关键是现在它在WEB-INF下,我不知道如何写这个路径,怎么测试都不成功

追答

试下用这个类加载看看
String path="WEB-INF/applicationContext.xml";
ApplicationContext context = new FileSystemXmlApplicationContext(path);

追问

依旧不可以的。你可以测试测试。
Exception in thread "main" org.springframework.beans.factory.BeanDefinitionStoreException: IOException parsing XML document from file [F:\Java_Workspaces\javaWebPro\WEB-INF\applicationContext.xml]; nested exception is java.io.FileNotFoundException: WEB-INF\applicationContext.xml (系统找不到指定的路径。)

追答

String path="WebRoot/WEB-INF/applicationContext.xml";
试一下,多点测试

温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-08-13
[applicationContext.xml]: Invocation of init method failed; nested 还是配置中就有的你自己再修改下吧 缺少spring相关jar包
第2个回答  2012-04-14
哥们 你现在的技术应该很牛逼了吧 ,我刚入这行 ,看了你们说的办法,解决了,这样写就ok了 file:WebRoot/WEB-INF/applicationContext.xml
第3个回答  2018-06-21
applicationcontext.xml文件默认是放在WEB-INF/里面的,如果要放在src里,
要在web.xml加上下面代码:

<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:applicationContext.xml</param-value>
</context-param>

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网