关于IDEA中添加静态资源(html,jpg等)后找不到资源(404 not found),以及WEB-INF目录介绍
关于静态资源的加载
在IDEA中的java web application(或者maven项目)添加新的静态资源时(如html,jpg,gif等),常常会遇到静态资源无法加载的情况。这样的情况我们一般都会想到首先通过热部署或者重启tomcat服务器来加载资源。
但是,有些时候,无论我们的tomcat是否热部署或者不管怎么重启tomcat都无法访问这些资源(提示404找不到),然后就百思不得其解。这种时候可以尝试一下重启整个IDEA,重启之后或许就能够找到这些静态资源。
这可能是由于out目录(idea中的Excluded输出目录,默认为橘红色)中没有加载到这些资源,将需要加载的静态资源手动复制到对应的目录下就行了。这样就可以避免我们在添加静态资源时反复重启IDEA了。

当然上述内容是建立在静态资源没有放在不合适位置的前提下。
一般情况下,这些静态资源往往放置于与WEB-INF同一级的webapp或者WebRoot文件夹(或其子目录)>下,而不能放在WEB-INF目录中。
说到这里,咱就顺便介绍一下web项目中的WEB-INF目录
web项目中的WEB-INF目录
WEB-INF是Java web的安全目录,其中一般包含:
- /WEB-INF/web.xml : web应用的配置文件,描述servlet和其他应用组件配置及命名规则,相信大家如果配置过servlet对它一定不陌生。
- /WEB-INF/classes/ :该目录包含站点的class文件,包括 servlet class 和非servlet class。
- /WEB-INF/lib/ : 存放web application所需要的各种jar包,一般需要在IDEA的Project Structure的Modules中将这个目录添加到依赖。这个目录一般放置仅在这个web应用中用到的jar文件,例如数据库驱动jar文件(我们链接postgis数据库时就需要用到)。
- 由于WEB-INF目录是不对外开放的,外部没办法直接访问到(即不能通过URL访问)。只能通过映射来访问,比如映射为一个action或者servlet通过服务器端跳转来访问到具体的页面。这样,在WEB-INF目录中就可以存放一些不对外开放的页面,限制用户的访问,提高安全性。
关于IDEA中添加静态资源(html,jpg等)后找不到资源(404 not found),以及WEB-INF目录介绍的更多相关文章
- Qt中添加静态库.lb,.a和动态库.dll,.so,头文件和.cpp文件
添加步骤 1.-Qt Creator中,"项目"------"添加库"2.把静态库和动态库文件放到项目文件夹中3.在.pro文件中会添加如下代码: - 添加动态 ...
- Django 项目中添加静态文件夹
在 mysite 文件夹下添加一个 statics 文件夹用来存放 js 文件 在 index.html 文件中添加 <!DOCTYPE html> <html lang=" ...
- 一、SAP中添加一个模块到收藏夹后,显示事务代码
一.在SAP中,如果添加一个模块到收藏夹,默认是看不到事务代码的,如图: 二.我们在附件->设置中勾选显示技术名称 三.保存之后,就会显示出事务代码,如图所示: 不忘初心,如果您认为这篇文章有价 ...
- vue打包后找不到资源路径问题
问题描述: 使用webpack打包vue项目后,前后端联调无法找到资源 解决方案: 一. 改为相对路径,去除axios中地址的第一个“/” onProxyReq: function (proxyReq ...
- 类中添加log4j日志
在编写代码的时候需要随时查看工作日志,查看工作日志的好处就是随时能检查出错误.所以我一般就需要在编写代码的前期添加工作日志,以便更好的查看相关错误输出. 以一个springmvc小demo为例子 主 ...
- SharePoint Framework 向web部件中添加外部库
博客地址:http://blog.csdn.net/FoxDave 在进行开发的时候,你很可能会想要引用一些公开的JavaScript库到你的项目中,本文将会介绍如何打包和共享这些库. 打包脚本 默认 ...
- vmware中nat模式中使用静态ip后无法上网的问题
在/etc/network/interfaces中添加静态ip auto eth0iface eth0 inet staticaddress 192.168.31.133netmask 255.255 ...
- android 开发中 添加库文件 和so 文件的存放位置和添加依赖
so文件一般存储在 main 当中 jniLibs 当中 然后在build.gradle中添加 sourceSets { main { jniLibs.srcDirs = ['src/main/j ...
- 关于在Silverlight中添加图片的问题
在Silverlight中添加图片,目前支持的Image格式有jpg和png两种,如何在目录中添加,有些什么技巧呢? <StackPanel Background="White&quo ...
随机推荐
- Drools 规则引擎应用 看这一篇就够了
1 .场景 1.1需求 商城系统消费赠送积分 100元以下, 不加分 100元-500元 加100分 500元-1000元 加500分 1000元 以上 加1000分 ...... 1.2传统做法 1 ...
- 如果一个 linux 新手想要知道当前系统支持的所有命令的列表,他需要怎么做?
使用命令 compgen -c,可以打印出所有支持的命令列表. [root@localhost ~]$ compgen -cl.lllswhichifthen elseelifficaseesacfo ...
- npm安装包出现UNMET DEPENDENCY报错
出现这个内容应该是包损坏,导致npm无法正常解析,通过 npm ls 命令也可以看到UNMET DEPENDENCY在依赖包上出现,在输出的信息最后有一个错误信息 npm view pkg versi ...
- IOC——Spring的bean的管理(注解方式)
注解(简单解释) 1.代码里面特殊标记,使用注解可以完成一定的功能 2.注解写法 @注解名称(属性名称=属性值) 3.注解使用在类上面,方法上面和属性上面 注意:注解方式不能完全替代配置文件方式 Sp ...
- Python turtle 模块可以编写游戏,是真的吗?
1. 前言 turtle (小海龟) 是 Python 内置的一个绘图模块,其实它不仅可以用来绘图,还可以制作简单的小游戏,甚至可以当成简易的 GUI 模块,编写简单的 GUI 程序. 本文使用 tu ...
- 插值方法 - Newton多项式(非等距节点)
不多话.Nowton插值多项式(非等距节点)代码: 1 # -*- coding: utf-8 -*- 2 """ 3 Created on Wed Mar 25 15: ...
- MTK平台电路设计01
一.资料 获取途径MTK官网.一牛网 二.
- Blog Ideas
Blog Ideas How-to Post Case Studies Product + Service Updates Product Reviews Content Survey Current ...
- CSS 文本控制
one more time one more chance. 一歩重头学前端, css入门. 学习一些 CSS 文本控制的属性,防止做傻事.请大家对照下面列表检验下: 会的.不会的.似懂非懂的.笔者是 ...
- 关于disabled的事,你用对了吗?
大家都知道disabled属性用来禁用表单里的元素.如果让你来禁用一个表单元素,你会怎么做么,下面提供几种写法,各位看官请看 html: <button type='button'>tes ...