解决方案 »
- 求高手相助,获取形参应该的实参名称
- Java struts2 国际化 不进入action
- 我的问题是不是有点弱智?请大家赐教下
- Eclipse 3.2启动tomcat 加载两次
- weblogic急。。。
- Spring+hibernate+struts程序为什么运行一段时间后就报"java.lang.OutOfMemoryError: Java heap space"错?
- 这个两个对象该如何判断相同?
- 如何用J2EE开发实时监控系统,非常有挑战性,请各位高手关注!!!
- struts2拦截器不起作用
- java老手来教教我这个新手
- Birt百灵报表集成
- 【求助,在线等】Java连oracle报sid错误
URL fileURL=this.getClass().getResource("/config/application.xml");//jar中的类获得jar包中资源文件的路径
InputStream is=this.getClass().getResourceAsStream("/config/application.xml");//jar中的类读入jar包中的资源文件
麻烦你知道spring ClassPathXmlApplicationContext 怎么加载的再来说好吧
也麻烦你仔细看我说的我是怎么加载的.
Unable to locate Spring NamespaceHandler for XML schema namespace [http://www.springframework.org/schema/context]
xml文件内容有问题,开头几行贴一下吧可能http://www.springframework.org/schema/context相关的内容删掉就可以了
用常用的方法获取配置文件要放在jar外。
在jar里面,一种是用解析jar文件的方式,一种是2L说的那种。
再说要是是web项目,干嘛打成jar包,直接就war包了
ApplicationContext context = new ClassPathXmlApplicationContext("classpath*:config/appContext.xml");
即加载处于classpath下的文件,但是这个加载不直观,因为即使找不到文件,spring也不会报错,只是返回的applicationContext没有内容,这种可以直接读取到
不过我的没有conf这一层目录 我的在根目录下
我也看网上说了,但是我的目录结构看我发的图,maven的结构就这样我没有conf这一层目录的
比如本jar包内有XXX.class
那么使用
ClassLoader classLoader2 = XXX.class.getClassLoader();
//因为可能存在调用工程ClassLoader与当前job运行的ClassLoader不一致而导致类加载失败,所以将运行线程的classLoader设置为当前类ClassLoader路径
Thread.currentThread().setContextClassLoader(classLoader2);
spring和xstream(我用的工程组件)都需要读取ClassLoader,如果线程ClassLoader不与本jar包的加载Loader相同,可能会导致文件找不到,如果你还在为此困惑的话,可以试一试,我由于已经取代了spring读取,所以没有经过后来的尝试,全靠你了!
2.参考27楼打包
ps..如果有hibernate的 hbm.xml参考http://xiaoyaocao.iteye.com/blog/1837133