为啥要说一下这么low的问题,因为我是一个比较low的人,哈哈。本来我技术有限,没事干自己撘个环境找找乐趣,结果被各种基础问题,弄的一脸蒙蔽。算了不多说,直接说问题。

1、首先说一下java编译后的文件,正常来说我们编写的文件一般都是java文件,但实际上eclipse会帮我们编译成.class文件(在project下有个自动编译),没有编译的话,Project->Build Project 来编译当前的项目

2、上面说的都是很简单的事情,但是简单的再延伸,就可能出一点问题了,重申一下,我比较low。在web.xml中会配置一些,需要引入的文件,比如jdbc配置,密码配置。而这些配置文件,需要有web.xml去找到这些文件,然后加载进来。这样,问题就来了,他是怎么找配置文件的。注意,正常项目在运行中是运行的class文件,是编译后的文件,也就是说会在编译后的文件夹下找文件,所以项目的目录结构很容易误导观众。

3、如果你把需要引入的配置文件,放在了web-info下,那么恭喜你,看到这,你不用往下看了,因为你可能不会遇到路径问题,哈哈。

4、我最开始放在web-info下,啥事没有,后来想把文件放在src下面,结果,怎么配置也找不到配置文件,我就郁闷了。哎,只能说还是技术不到家。此时用到上面说的项目运行时去编译后的文件夹下找文件,而最开始配置本来就在web-info下,项目运行时,刚好去web-info下和配置的class文件存放目录下找一系列文件,这就不会出错。但是现在移动配置文件位置了,之前默认的class文件存放位置没有改变,会继续使用,但是web-info下没有了自己配的文件,就会导致一直找不到配置文件。

5、原因都清楚了,就是class文件存储位置,和配置文件位置,没有配置在web-info目录下。

6、在修改前,把配置文件做一个备份(web.xml和所有导入的jar包)

7、右键项目——properties——java build path——Source ,此时就看到编译路径了,这是我修改后的myFirstBlood/WebContent/WEB-INF/classes。(新发现的大陆:在web.xml中使用的classpath就是指代的这个路径,两者是相等关系,就这个也快搞死我了)修改后之前的web.xml和jar包会丢失。需要重新来过一次。然后再去web.xml中配置引入文件的路径就可以了。

8、我说的可能有瑕疵,忘大神指正,勿喷啊。

参考:

spring mvc的web.xml中这个地方的classpath是什么意思?

首先这个是 web.xml方式定义参数传给Servlet。

因此,<param-value></param-value>的解释是接收这个参数的servlet执行的。
dispatchservlet的这个参数是定义配置文件的位置的。

而spring中对资源文件的处理做了抽象化,可以用符合 URI规范的方式声明文件位置,
具体的实现类会解析这个字符串,(可以看spring的Resource相关的文档)
根据里面的声明 来使用合适的方式读取。

1、classpath:开头的意思是说从 classpath中寻找目标文件。

web application的classpath包含 WEB-INF/lib下的所有jar包和WEB-INF/classes目录

2、编译后的class路径。/WEB-INF/classes/

Spring MVC 搭建过程中web.xml配置引入文件的路径问题的更多相关文章

  1. 05.基于IDEA+Spring+Maven搭建测试项目--web.xml配置

    <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" " ...

  2. ssm框架中,项目启动过程以及web.xml配置详解

    原文:https://blog.csdn.net/qq_35571554/article/details/82385838 本篇主要在基于SSM的框架,深入讲解web.xml的配置 web.xml   ...

  3. Spring MVC 的 Java Config ( 非 XML ) 配置方式

    索引: 开源Spring解决方案--lm.solution 参看代码 GitHub: solution/pom.xml web/pom.xml web.xml WebInitializer.java ...

  4. spring mvc 中web.xml配置信息解释

    在项目中总会遇到一些关于加载的优先级问题,近期也同样遇到过类似的,所以自己查找资料总结了下,下面有些是转载其他人的,毕竟人家写的不错,自己也就不重复造轮子了,只是略加点了自己的修饰. 首先可以肯定的是 ...

  5. web应用中web.xml配置详解

    Web.xml常用元素 <web-app> <display-name></display-name>定义了WEB应用的名字 <description> ...

  6. servlet中web.xml配置详解

    Web.xml常用元素 <web-app> 所有部署描述符文件的顶层(根)元素 <display-name></display-name>定义了WEB应用的名字 & ...

  7. Servlet中Web.xml配置详解(二)

    5.2 分配JSP初始化参数给JSP页面提供初始化参数在三个方面不同于给servlet提供初始化参数.1)使用jsp-file而不是servlet-class.因此,WEB-INF/web.xml文件 ...

  8. 07.基于IDEA+Spring+Maven搭建测试项目--logback.xml配置

    <?xml version="1.0" encoding="UTF-8"?> <configuration> <!-- 控制台日志 ...

  9. 06.基于IDEA+Spring+Maven搭建测试项目--dubbo-consumer.xml配置

    <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.sp ...

随机推荐

  1. sqlhelper 数据库帮助操作类

    数据库帮助类 using System; using System.Collections.Generic; using System.Linq; using System.Text; using S ...

  2. java 公开内部类无法实例化 no enclosing instance 解决办法

    因为B类不是A类的静态内部类,所以B累也只能像A类的成员一样通过new A()的实例访问,new(new A()).B(),这显然不是我们想要的方式,于是需要在B类的前边加上static,变成下边这样 ...

  3. python的装饰器,迭代器用法

    装饰器. 装饰器实际就是一个函数 定义:在不改变内部代码和调用方式的基础上增加新的功能 了解装饰器需要了解3个内容: 1.函数即变量 2.高阶函数 1).把一个函数名当作实参传给另一个函数 2).返回 ...

  4. Label,PushButton,ToolButton 实现动态图片按钮,Label显示gif动画

    .h文件 public: explicit event(QWidget *parent = 0); ~event(); QImage image; QLabel *label; QLabel *lab ...

  5. 支持Openflow 1.3的wireshark插件安装教程

    目前为止,我们使用openflow wiki里提供的minient镜像里集成的wireshark只支持openflow1.0,我们通过wireshark上 菜单 help-->about wir ...

  6. maven 测试写入JRE参数

    项目在测试时碰到一个问题,就是JVM加载参数的问题. web项目本身在注入配置信息的时候,读取的是本地的配置文件,但是配置文件的位置是卸载tomcat 里面配置的JAVA_OPTS里面的. 问题出现了 ...

  7. IIC 原理讲解

    IIC具体是什么这里我就不细说了,只收集一些关于IIC的原理. IIC总线优点是节约总线数,稳定,快速, 是目前芯片制造上非常 流行的一种总线,大多数单片机已经片内集成了IIC总线接口,无 需用户自己 ...

  8. 简单谈谈MySQL优化利器-慢查询

    慢查询 首先,无论进行何种优化,开启慢查询都算是前置条件.慢查询机制,将记录过慢的查询语句(事件),从而为DB维护人员提供优化目标. 检查慢查询是否开启 通过show variables like ' ...

  9. ASP.NET-GUID扩展类使用

    在NUGET上有一个GUID的类,安装试用一下它的方法 将string转为guid对象 Guid ad = new Guid("{99009327-15D2-4A69-B015-BEAC11 ...

  10. Qt程序打包成exe可执行文件

    很多Qt爱好者想发布自己的Qt软件,但却发现在其他没有安装Qt SDK的机器上无法运行,这就是本文想要说明的问题.现在网上大部分软件都要发布自己开发的应用程序,都会打包到exe文件中,待安装完exe文 ...