`

Spring 加载 application.xml 出错FileNotFoundException

 
阅读更多

http://zhidao.baidu.com/question/121681133.html

 

初学Spring在用Resource rs=new ClassPathResource("applicationContext.xml");时老是遇到这个错误。后来发现用
ApplicationContext ctx=new  FileSystemXmlApplicationContext("WebContent/WEB-INF/applicationContext.xml");可以解决这个问题。
仔细研究了下:
之所以我用ClassPathResource中找不到applicationContext.xml是因为我的这个xml文件在建工程的时候默认放在了WebContent/WEB-INF/下面,但是用ClassPathResource是在当前目录也就是我这个java文件所在的目下进行寻找。因此把这个xml文件移动到我的src目录下面就ok了。
同理如果是用ApplicationContext ctx=new  ClassPathXmlApplicationContext()也是这样是从当前路径寻找,xml文件应在当前目录下。
但是如果用FileSystemXmlApplicationContext呢,它是根据指定的路径来进行寻找,所以要把路径写完整。现在xml路径在src文件夹下。那就要写:ApplicationContext ctx=new  FileSystemXmlApplicationContext("src/applicationContext.xml");
这是比较直接简单的写法,后来又查了查发现对于FileSystemXmlApplicationContext也可以采用:
1.加上classpath:前缀(这个时候xml要放在当前目录也就是src下)
ApplicationContext ctx=new  FileSystemXmlApplicationContext("classpath:applicationContext.xml");
2.加上file:把路径写全(用这个方法xml可以放任意地方)
ApplicationContext ctx=new  ClassPathXmlApplicationContext("ApplicationContext ctx=new  ClassPathXmlApplicationContext("file:F:/workspace/SpringExercis/src/applicationContext.xml");
综上,最简单的方法还是老老实实把xml放在src下方便。

分享到:
评论

相关推荐

    Spring入门十大问题

    ### Spring入门十大问题详解 #### 一、Spring框架简介与学习资源 **知识点:** ... - 确认`application-xxx.xml`中的`propertyname`属性是否正确对应于Bean类中的属性名称。 - 注意区分大小写及拼写错误。

    ssh(structs,spring,hibernate)框架中的上传下载

    WEB-INF下的applicationContext.xml为Spring的配置文件,struts-config.xml为Struts的配置文件,file-upload.jsp为文件上传页面,file-list.jsp为文件列表页面。  本文后面的章节将从数据持久层->业务层->Web层的...

    jackson-core-asl-1.9.13+jackson-mapper-asl-1.9.13jar包.

    在开发基于Spring MVC的Web应用时,我们常常会遇到数据传输的问题,特别是在处理RESTful API时,使用`@ResponseBody`注解将Java对象转换为JSON格式返回给客户端。然而,有时候这种转换过程中可能会出现错误,比如...

    springboot实现文件上传下载.zip

    在`pom.xml`文件中添加Spring Web和MultipartFile处理的支持: ```xml <groupId>org.springframework.boot <artifactId>spring-boot-starter-web <groupId>org.springframework.boot <artifactId>spring...

    tomcat加载jar异常问题的分析与解决

    如果使用了Spring Boot的内嵌Tomcat,确保在application.properties或application.yml中没有错误地覆盖了Spring Boot对Tomcat的默认配置。 6. 对于更复杂的情况,可能需要深入Tomcat的源码来分析其加载JAR包的内部...

    springboot上传下载文件

    在Spring Boot应用中,你需要在`pom.xml`或`build.gradle`中引入`spring-boot-starter-web`依赖,确保Spring MVC可用。同时,为了处理文件上传,还需要引入Apache Commons IO库: ```xml <groupId>org.spring...

    集成Minio实现文件的分布式对象存储.zip

    接着,我们需要在SpringBoot的配置文件`application.yml`或`application.properties`中设置Minio服务器的连接信息,例如: ```yaml minio: url: http://minio-server-url:9000 accessKey: your-access-key ...

    SpringMVC-Upload.zip_springmvc upload_基于SpringMVC的下载功能的实现

    .contentType(MediaType.APPLICATION_OCTET_STREAM) .body(file); } } ``` 在这个例子中,我们假设文件存储在项目类路径下的`files`目录。 ### 总结 SpringMVC提供了一套完整且灵活的API,用于处理文件上传和...

    ssm框架SpringMVC上传下载

    在`spring-mvc.xml`配置文件中,我们需要开启Multipart resolver,通常使用`CommonsMultipartResolver`,并设置最大上传文件大小和临时存储路径。 ```xml <bean id="multipartResolver" class="org.springframework...

    springboot+thymeleaf 文件上传下载功能实现

    在Spring Boot项目中,结合Thymeleaf模板引擎,我们可以轻松地实现文件的上传和下载功能。Spring Boot的强大会简化这些操作,而Thymeleaf则提供了方便的前端交互。下面将详细介绍如何实现这两个功能。 一、环境准备...

    struts做的文件的上传与下载

    此外,可以考虑使用Spring MVC或其他现代框架替换Struts,以获得更好的性能和更丰富的功能支持。 总的来说,Struts实现文件上传与下载需要处理文件读写、HTTP响应设置、安全控制等多个环节,理解这些知识点有助于...

    java文件上传下载

    在Java Web开发中,Spring MVC框架提供了一种高效且灵活的方式来处理文件的上传与下载。本文将深入探讨如何在Spring MVC环境中实现文件上传和下载功能,以满足标题和描述中的需求。 首先,让我们理解文件上传的基本...

    springmvc多文件上传和下载

    在Spring MVC框架中,文件上传和下载是常见的功能需求,特别是在构建Web应用程序时。下面将详细阐述Spring MVC如何实现多文件上传以及文件下载的处理。 ### 多文件上传 1. **配置MultipartResolver**: 首先,我们...

    如何基于JAVA读取yml配置文件指定key内容

    Map,String> result = YmlUtils.getYmlByFileName("classpath:application-test.yml", "spring", "name"); ``` 在上面的代码中,我们使用getYmlByFileName方法来读取yml文件中的spring.name配置,该方法将返回一个...

    高级软件工程师面试题

    - 已检查异常: 通常是程序运行过程中发生的异常,如文件找不到异常(FileNotFoundException)、SQL异常(SQLException)等。这类异常需要在方法声明中声明抛出。 #### 十二、Singleton模式 1. **Singleton模式**: ...

Global site tag (gtag.js) - Google Analytics