web项目部署结构

本文介绍了Java Web项目在Tomcat中的部署结构,强调了WEB-INF目录的重要性及其内容,包括web.xml文件和类文件的存放。同时,详细阐述了三种发布Web项目的方式:直接放入webapps目录、通过修改server.xml配置Context以及使用外部XML文件定义Context。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

---------------------------- web项目部署结构----------------------------

1. Web项目

1 Web项目部署后目录结构

tomcat\webapps目录是用来存放Java项目的,每个文件夹都是一个项目。默认这个目录下已经有了四个项目,都是tomcat自带的。其中ROOT就是我们测试Tomcat时访问的Tomcat主项目。

我们要创建自己的项目,需要遵循JavaEE目录结构规范,下面是hello项目的目录结构

                       Hello   (必须出现的)

                            |------存放web资源。(jsp, xml, HTML  CSS  JS图片...)

                            |------  WEB-INF     (必须出现的)

                                   |------ web.xml   (必须出现的)

                                   |------classes            Java类的编译路径(Servlet、自定义类 )

                                   |------lib                   需要引入的第三方的jar包.

 

hello是项目目录,项目目录下必须有一个名为WEB-INF的目录(必须大写),在WEB-INF目录下必须有一个web.xml文件。

WEB-INF目录是受保护目录,这下面的东西用户是不能直接访问的,但动态页面是可以访问的。通常WEB-INF下还会存在lib和classes,lib下存放项目所需的jar文件,classes目录下存在项目所需的class文件!

如果直接访问WEB-INF就会找不到路径,


web.xml文件中只需要给出XML文档声明,以及根元素。当然,根元素中包含很多与名称空间相关属性,背下来是有难度的,不过我们可以去webapps下的其他项目中去“借”。

2 发布项目三种方式

Ø  第一种:就是把项目放到webapps目录下,即localhost主机名对应的项目空间目录中。

访问http://localhost/hello/hello.html

Ø  第二种:可以把项目放到任何目录,然后通过添加<Context>元素(Context开头是大写)来指定项目的真实位置。在<Host>元素中添加<Context>元素,然后指定<Context>元素的pathdocBase属性,其中path指定的是项目虚拟路径,可以随意给出,例如abc。docBase指定你的项目的真实存放的路径。

例如,项目的真实目录在F:\hello。你找到server.xml中的<Host>元素,给其添加子元素<Context>,内容如下:

 

注意,一旦给出了docBase属性的值后,访问localhost的abc项目时,就不会再去webapps目录下去查找项目,而是通过docBase的值来锁定项目位置,即F:\hello1。

注意,访问项目的URL:http://localhost/abc/index.jsp,而不是http://localhost/hello1/index.jsp,你可能会说,我们的项目目录名叫hello1,但因为指定了<Context>元素的path属性,那么访问项目时就不会再使用项目目录名来作为访问路径了。

Ø  第三种方式与第二种比较相似,第三种是使用外部文件来添加<Context>元素。这需要在conf目录下找到catalina\localhost目录,然后在这个目录下创建一个XML文件,这个名称就是虚拟路径名。例如创建的XML文件名为def.xml,然后在def.xml文件中添加如下内容

<ContextdocBase="F:\hello1"/>                              

注意,这里没有给出path属性,因为已经不用给出了,path的值由XML文件的名称决定。也就是说path的值为def。访问URL为:http://localhost/def/index.jsp。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值