Tomcat发布应用-JavaWeb应用
JavaWeb工程概述#
JavaWeb
应用是一个全新的应用种类。这类应用程序指供浏览器访问的程序,通常也简称为web应用。
一个web应用由多个静态web资源和动态web资源组成,例如:html、css、js文件,jsp文件、java程序、支持jar包、工程配置文件、图片、音视频等等。
Web应用开发好后,若想供外界访问,需要把web应用所在目录交给Web服务器管理(Tomcat就是Web服务器之一),这个过程称之为虚似目录的映射。
#
myapp--------------应用名称 1.html css/css.css js/demo.js WEB-INF--------如果有web.xml或者.class文件时,该目录必须存在,且严格区分大小写。 --------该目录下的资源,客户端是无法直接访问的。 --------目录中内容如下: classes目录----------------web应用的class文件(加载顺序:我们的class,lib目录中的jar包,tomcat的lib目录中的jar包。优先级依次降低) lib目录--------------------web应用所需的jar包(tomcat的lib目录下jar为所有应用共享) web.xml-------------------web应用的主配置文件
#
第二步
第三步
第四步
#
1)IDEA部署#
第一步
第二步
第三步
#
第二步:把打好的war拷贝到tomcat的webapps目录中
第三步:启动服务时,tomcat会自动解压。
#
虚拟目录的配置,支持两种方式:
第一种是通过在主配置文件中添加标签实现。
第二种是通过写一个独立配置文件实现。
第一种方式:在server.xml
的<Host>
元素中加一个<Context path="" docBase=""/>
元素。 path
:访问资源URI。URI名称可以随便起,但是必须在前面加上一个/ docBase
:资源所在的磁盘物理地址。
第二种方式:是写一个独立的xml
文件,该文件名可以随便起。在文件内写一个<Context/>
元素。 该文件要放在Tomcat目录中的conf\Catalina\localhost\
目录下。
需要注意的是,在使用了独立的配置文件之后,访问资源URI就变成了/+文件的名称。而Context
的path
属性就失效了。
Tomcat配置虚拟主机#
在<Engine>
元素中添加一个<Host name="" appBase="" unparkWARs="" autoDeploy="" />
,其中: name
:指定主机的名称 appBase
:当前主机的应用发布目录 unparkWARs
:启动时是否自动解压war包 autoDeploy
:是否自动发布
配置示例如下:
<Host name="www.itcast.cn" appBase="D:\itcastapps" unpackWARs="true" autoDeploy="true"/> <Host name="www.itheima.com" appBase="D:\itheimaapps" unpackWARs="true" autoDeploy="true"/>
#
配置默认端口
Tomcat服务器主配置文件中配置着访问端口,它在配置文件中写的值是:8080。但是它不是Tomcat的默认端口。我们此处说的默认端口是,当使用默认值的时候,端口号可以省略。Tomcat的默认端口是80。
配置方式如下:
<Connector port="80" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />
配置默认应用
有两种方式配置默认应用。
第一种:把要作为默认应用的应用,名称改为ROOT
。放到webapps
目录中。
配置默认主页
首先要明确的是,配置默认主页是针对应用说的。是应用的默认主页。
在应用的web.xml中配置:
<welcome-file-list> <welcome-file>默认主页</welcome-file> </welcome-file-list>
例如:
<welcome-file-list> <welcome-file>index.html</welcome-file> <welcome-file>index.htm</welcome-file> <welcome-file>index.jsp</welcome-file> </welcome-file-list>
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· .NET10 - 预览版1新功能体验(一)