eclipse中的web项目路径和发布好的项目路径
现在企业开发中,我们都会创建一个javaWeb工程,在eclipse中指的是新建一个dynamic web project,创建完工程之后,我们在IDE中大体看到如下的工程目录:
我们主要关心的文件夹有src、WebContent、WEB-INF、test等。
src:存放我们写的java文件,以包来区分相同的文件
WebContent:发布的文件夹
WEB-INF:被设计为安全的文件夹,如果一些内容必须通过后台才能被访问,则存放在此文件夹下
test:用户创建的用户目录,可以来存放具体的前台文件(html、jsp等);另,还可以创建更多的文件夹,存放不同种类的文件
上面是我们在IDE中看到的web工程的结构,那么把web工程发布到tomcat下的文件路径是什么样子的呢,如下:
我们看到发布完的路径为项目名称 ,下边有META-INF、test、WEB-INF三个文件夹,可以清楚的明白,发布完之后是项目名称,然后是WebContent(开发环境下文件夹)下的文件,而WebContent没有显示,那么一定会奇怪,我的class文件呢,别着急,请看下图:
我们的class文件都放在了WEB-INF下的classes文件夹下,把包的路径转化为了文件路径,如com.cn.my转化为com/cn/my。
你会疑惑,如果我在src下有配置文件那么,我的配置文件发布完放在什么地方了,根据上面的解释,src对应着classes文件夹,那么src下的配置文件会放在classes文件夹下。
下面说明在web.xml文件中配置的<context-param>标签,经常会看到如下的配置:
<context-param>
<param-name>log4j-properties-location</param-name>
<param-value>/WEB-INF/log4j.properties</param-value>
</context-param>
这里配置的<param-value>值是指以相对路径来说的,以上图的/WEB-INF/log4j.properties来说,指的是发布完之后的路径,其中“/”指的是根路径,即Log4j(项目名称);根路径下的WEB-INF文件夹下的log4j.properties文件,;那么我们在开发过程中(IDE)中要把这个文件放在哪里呢,从上边的解释我们知道WebContent下的文件在发布完之后会保持原先的结构,那么可以得出在IDE中的位置为:WebContent/WEN-INF/log4j.properties。
很多时候我们会把配置文件放在src下,如果放在src下上边的配置改是怎么样的呢,
一、放在src根路径下,则上面的配置变成如下:
<context-param>
<param-name>log4j-properties-location</param-name>
<param-value>/WEB-INF/classes/log4j.properties</param-value>
</context-param>
二、在src下创建一个文件夹,则配置如下:
<context-param>
<param-name>log4j-properties-location</param-name>
<param-value>/WEB-INF/classes/my/config/log4j.properties</param-value>
</context-param>
在开发中我们还经常看到这样的配置,如下
<param-name>log4j-properties-location</param-name>
<param-value>classpath:log4j.properties</param-value>
</param-name>
classpath指的就是classes文件夹,这里指的是src根路径下的log4j.properties文件,也可以使用classpath:test/my/log4j.properties
有不对之处请指教!
eclipse中的web项目路径和发布好的项目路径的更多相关文章
- 转载Eclipse中Maven WEB工程tomcat项目添加调试
转载地址: http://blog.csdn.net/free4294/article/details/38260581 一.建立一个maven WEB项目 1.file->new->o ...
- 在Eclipse中调试web项目
由于现在的公司用的是Eclipse开发web项目而且不安装MyEclipse插件,没有myclipse插件就不能在Eclipse中配置web服务器,所以也就不好对web项目进行调试.下面的方法就可以让 ...
- Eclipse中的Web项目自动部署到Tomcat的webapp目录下
Eclipse中的Web项目自动部署到Tomcat 原因 很长时间没用Eclipse了,近期由于又要用它做个简单的JSP项目,又要重新学习了,虽然熟悉的很快,但记忆总是很模糊,偶尔犯错,以前很少写 ...
- eclipse中maven web项目部署时缺少classes文件或者resources文件
写这篇博客的原因 问题描述 昨天发现eclipse中maven web项目部署时缺少classes文件或者resources文件 本来以为是很常见的原因, 依次检查"Java Build P ...
- 部署Eclipse中的Web项目到Tomcat服务器运行
用Eclipse开发Web项目时,可以通过Tomcat服务器运行Web项目,此时Web项目被部署在[WorkSpace]\.metadata\.plugins\org.eclipse.wst.serv ...
- 在Eclipse中运行Web项目Jsp网页时提示端口被占用的解决办法:Several ports (8005, 8888, 8009) required by Tomcat v9.0 Server at localhost are already in use.
问题: 在Eclipse中运行Web项目Jsp网页启动Tomcat时提示端口被占用: Several ports (8005, 8080, 8009) required by Tomcat v9.0 ...
- 在Eclipse中修改web项目的名称
在Eclipse中修改web项目的名称 一.误区: 单击要修改名称的项目上右键Refactor->Rename,然后修改成另外一个名称 (光这样是不够的,哪怕你再修改web.xml中的displ ...
- Eclipse中Maven WEB工程tomcat调试
最近没事了玩一下maven,使用maven管理工程中的依赖包非常的方便.建立maven web工程的时候开始不知道怎么用tomcat来调试,总是使用mave的tomcat插件发布了后来调试,觉得非常的 ...
- eclipse中tomcat的add and Remove找不到项目
在我们运行项目前,都需要将项目部署到tomcat上,但是有时我们会遇到这种情况:项目明明存在,但是eclipse中tomcat的add and remove找不到项目,无法部署,那么这个问题该如何解决 ...
- 【Eclipse中使用Git之一】把远程仓库的项目,clone到eclipse里面
[Eclipse中使用Git之一]把远程仓库的项目,clone到eclipse里面 2015-01-29 19:25 15779人阅读 评论(1) 收藏 举报 .embody{ padding:10p ...
随机推荐
- HP原装硒鼓
- Eclipse中如何修改SVN的地址
在SVN服务端的IP更改后,客户端SVN的连接地址可以在Eclipse中进行修改,方法如下: 首先:在Eclipse中选择Windows-> Show View->others 就会出现[ ...
- win7任务栏还原为xp样式
win7的确是非常强大的操作系统,值得一提的是超级任务栏,非常新颖,不过,不是很适应win7的超级任务栏,今天,我们恢复win7超级任务栏还原xp任务栏. 方法/步骤: 1.在win7超级任务栏空白处 ...
- IIS7/IIS7.5 二级域名伪静态设置方法
转载地址:http://www.admin5.com/article/20120107/402582.shtml
- HttpListenerCS客户端监听http
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; usin ...
- C#的回调被C++调用
__stdcall 要加这个 extern "C" __declspec(dllexport) 要用这样的东东 定义 extern "C" __declspec ...
- [LeetCode] “全排列”问题系列(二) - 基于全排列本身的问题,例题: Next Permutation , Permutation Sequence
一.开篇 既上一篇<交换法生成全排列及其应用> 后,这里讲的是基于全排列 (Permutation)本身的一些问题,包括:求下一个全排列(Next Permutation):求指定位置的全 ...
- 微信公众号开发第六课 BAE结合实现迅雷账号随机分享
迅雷离线是个好东西,那么我们能不能实现这样一个功能,回复迅雷,随机返回一个迅雷账户和密码. 首先在t_type类型表中添加 迅雷以及对应用值xunlei,这样返回的case值中对应值xunlei. 建 ...
- 将STM32的标准库编译成lib
转载自:http://www.cnblogs.com/zyqgold/p/3189719.html 以前一直使用STM32的标准库,需要一步步地将代码加进去,将编译选项设置好,然后再编译整个工程. 这 ...
- 浅谈C++的this指针
之所以写这篇文章,主要是为了回答网友 zhancaihua123同学的下面几个问题: father* p=new son;p->disp(...);father是父类,son是子类.disp是一 ...