新闻正文

找不到文件报错(java.io.FileNotFoundException)问题解决方法(Spring)

来源:CSDN  spring  2007-11-4 23:14:46 网友评论 0 条 字体:[ ] ~我要投稿!
      第一次使用Spring,做第一个Spring示例程序时很多人都会碰到一个问题,就是Spring程序执行时不能正常执行显示预期结果,而是会显示一些出错异常信息,主要就 是java.io.FileNotFoundException这个异常信息。我在做程序测试时也遇到了这个问题,现在把我遇到的问题及解决方法贴出来,希望 能让初学Spring程序设计的人少走点弯路。
        第一种情况:使用Myeclipse工具创建Spring项目时,按照书上的例子写好程序后,执行时出现该异常。这时需要注意到, Myeclipse默认的把applicationContext.xml文件放在项目的src目录下,而一般我们看到的例子在读取这个文件时使用的语句 如下: 代码1 :
ApplicationContext context = new FileSystemXmlApplicationContext("applicationContext.xml");

其实这时这么写就不行了,因为这个语句在查找applicationContext.xml文件时是在项目的根目录下查找,而不会到src目录下查找。这时,应该把语句改为:

代码2:

ApplicationContext context = new FileSystemXmlApplicationContext("src/applicationContext.xml");

即加上src这个目录,就不会出错了。如果不是使用Myeclipse而是使用eclipse自己导入spring包进行开发,就要先看一下在建项 目的时候,是选择把.java文件和.class文件分开放置还是放在同一个目录,如果选择了分开放置则情况和上面的一样(前提条件是 applicationContext.xml文件也是自己建在src目录下);如果选择了把.java文件和.class文件放在同一个目录下,这时就 要看建applicationContext.xml文件时放在哪个目录下了,如果是放在根目录下,就使用代码1的代码就可以了。如果把 applicationContext.xml文件和.java文件放在了同一个目录下,这个时候就要加上程序的包路径了,如我的Java源程序的包名是 org.wzhongyu,我就要用下面的语句来实现:


代码3:(注意:这里不能用org.wzhongyu.applicationContext.xml,因为程序会认为org.wzhongyu.也是文件名的内容)

ApplicationContext context = new FileSystemXmlApplicationContext("org/wzhongyu/applicationContext.xml");

        第二种情况:使用eclipse+springIDE进行开发,而配置文件使用属性配置文件(即.properties文件),出 现异常。这时应该注意,配置文件应该放在CLASSPATH路径下,如果建项目的时候没有选择把.java文件和.class文件分开放置,那么这个. properties文件就应该放在项目的根目录下,这样不会出错。如果建项目的时候,选择了把.java文件和.class文件分别放在src目录和 bin目录下,这时一定要注意把.properties文件放在src根目录下,否则就会出错。但是,我们读取这个配置文件的时候,一定不能加上src这 个目录,用下面的代码:
代码4:

BeanDefinitionRegistry reg = new DefaultListableBeanFactory();
        PropertiesBeanDefinitionReader reader 
= new PropertiesBeanDefinitionReader(reg);
        reader.loadBeanDefinitions(
new ClassPathResource("beans-config.properties"));

这里没有加上src,因为程序执行的CLASSPATH就是在src根目录下,不放在这里就会出错,就是出现java.io.FileNotFoundException这个异常信息。


        上面这些,是我遇到的问题并解决它们的办法,如果您来到这里并遇到一些和我遇到的不一样的情况,也欢迎您贴出来,大家共同学习。



收藏到ViVi   收藏此页到365Key
上一篇:JAVA的网络编程入门教程
下一篇:Struts2的登录验证程序
用户名:新注册) 密码: 匿名评论 [所有评论]
评论内容:不能超过250字,需审核后才会公布,请自觉遵守互联网相关政策法规。
本栏搜索
  • Google
   网站首页 -  网站地图 -  技术学习 -  网站投稿 -  帮助中心
Copyright 2003-2008 www.javah.net All Rights Reserved
2008 如果你喜欢本站 请收藏本站 并推荐给你的朋友一起分享