- Tomcat
- 1. 概念
- 2. Tomcat安装
- 3. 启动/停止
- 4. 部署工程
- 5. IDEA整合Tomcat服务器
- 6. IDEA创建动态WEB工程
- 7. 将在IDEA创建的WEB部署
-
JavaWeb
是基于请求响应来开发的。请求?是指客户端给服务器发送数据,
Request
响应?是指服务器给客户端回传数据,
Response
关系?它们是成对出现的
-
Web资源的分类?
按照技术和呈现的效果不同,分为静态和动态两种。
静态资源:
html
页面,css
样式,js
代码,text
文本,mp4
视频,jpg
图片…动态资源:
jsp
页面,servlet
程序… -
常用的Web服务器?
Tomcat
⭐:由Apache组织提供的,开源免费,提供对jsp和servlet的支持,是一种轻量级的JavaWeb容器(服务器)Jboss
:遵循JavaEE规范,开源免费,纯Java的EJB服务器,支持所有的JavaEE规范GlassFish
:是Oracle公司的,强健的商业服务器,达到产品级重量(收费,应用不多)Resin
:是CAUCHO公司的,也流行,也对提供对jsp和servlet的良好支持,性能比较优良,Java语言开发(收费,应用较多)WebLogic
:是Oracle公司的,收费中应用最广泛的Web服务器,支持JavaEE,还在不断完善,适合大型项目(收费,用的不多,适合大公司) -
Tomcat
服务器和Servlet
版本的对应关系Tomcat Servlet/JSP JavaEE 运行环境 … 7.0 3.0/2.2 6.0 JDK6.0 8.0 3.1/2.3 7.0 JDK7.0 一般企业都是用 7.0/8.0 版本
Servlet程序2.5版本是现在市面使用最多的版本(xml配置)。到了3.0之后,就是注解版本的Servlet使用了
2. Tomcat安装
官网找到对应版本下载解压就行,官网:Apache Tomcat® - Welcome!
目录结构:
-
bin
目录:存放tomcat服务器的可执行程序 -
conf
目录:存放tomcat服务器的配置文件 -
lib
目录:存放tomcat服务器jar包,对JavaEE规范的实现类 -
logs
目录:存放tomcat服务器运行时输出的日记信息 -
temp
目录:存放tomcat服务器运行时产生的临时数据 -
webapps
目录:存放部署的web工程。一个目录一个工程 -
work
目录:是tomcat服务器工作时的目录,用来存放tomcat运行时jsp翻译为Servlet的源码和Session动画的目录
3. 启动/停止
启动Tomcat服务器?
-
找到
tomcat/bin/startup.bat
双击打开 -
打开命令行,
cd
到Tomcat的bin
目录下,敲catalina run
-
测试是否启动成功? 在浏览器中输入
http://localhost:8080
出现🐱就说明启动成功启动不成功可能是
JAVA_HOME
环境变量没配置好
停止Tomcat服务器?
1.关闭启动时的那个窗口,直接点❌ ,或者 ctrl + c
2.找到tomcat/bin/shutdown.bat
双击!
如何修改Tomcat端口号?
默认端口号是8080,tomcat/conf/server.xml
, 打开找到Connector
标签,修改port
属性就行了(范围1-65535)
插曲:http协议默认端口号是80,写不写都是80,例如
http://www.baidu.com:80
4. 部署工程
-
第一种:只需要整个web工程的目录拷贝到
tomcat/webapps/
目录下即可。如何访问我们的工程?输入
http://localhost:8080/项目名
http://localhost:8080
是到webapps目录下,/项目名
是到我们的工程(默认访问项目下的index.html
)把localhost改为本机的ip,这样所有人都能访问这个页面了,
http://192.168.177.xxx:8080/mybook/index.html
-
第二种:
tomcat/conf/Catalina/localhost
在这个目录建立一个xml文件,例如abc.xml,里面写:<Context path="/abc" docBase="D:\book" />
ROOT工程的访问?以及默认 index.html页面 的访问??
当输入
http://ip:port/
没有输入工程名时,默认访问ROOT工程,默认是那个🐱头同时当输入
http://ip:port/工程名
没有输入资源名时,默认访问工程中的 index.html 页面
把文件直接拖到浏览器打开
,和在浏览器输入 http://ip:prot/工程名
访问有什么区别?
-
手托html页面到浏览器,浏览器显示
file://D:/工程名/资源名
,是file协议,表示告诉浏览器直接读取file协议后面的路径,解析展示在浏览器上即可,完全不走网络。 -
后者,浏览器显示
http://ip:port/工程名/资源名
,是http协议,背后的原因和前者完全不同。客户端(浏览器)请求发给服务器,服务器收到请求后,读取你要访问的资源文件,然后回传给客户端的页面内容,客户端(浏览器)得到资源文件/页面内容,解析展示在浏览器上
5. IDEA整合Tomcat服务器
(作者用的是IDEA2020.1版本)
整合:
File | Settings | Build, Execution, Deployment | Application Servers | +号 添加 Tomcat Servers,选中当初解压的路径到 apache-tomcat-8.5.73 就行了
创建的工程的适合就能选中服务器了
File | New | Project | Java Enterprise | Application Servers选择你需要的服务器 | Next
6. IDEA创建动态WEB工程
创建工程/创建模块 -> 选择JDK,JavaEE,Application Servers的版本 -> 下面勾选上 Web Application
动态WEB工程目录介绍:
工程/web
目录:存放web工程的资源文件,例如html页面,css文件,js文件…
工程/web/WEB-INF
目录:是受服务器保护的目录,浏览器无法直接访问到此目录的内容
工程/web/WEB-INF/web.xml
: 它是整个web工程的配置部署描述文件,可以在这里配置很多web的组件,例如Servlet程序,Filter过滤器,Listener监听器,Session超时…
我们习惯在工程/web/WEB-INF
目录下,创建一个lib目录,专门存放第三方的jar包,记得Add library
工程/src
目录:存放自己编写java源代码
7. 将在IDEA创建的WEB部署
-
右上角,点锤子右边的那个矩形🐱,点
Edit Configurations -> Name
(修改web工程对应的Tomcat运行实例名称,要不然多个工程就分不开了,建议和当前模块名/工程名一致) -
点
Edit Configurations -> Deployment
(在Name下面), 可以修改当前Tomcat运行实例跑的web工程(可以将需要部署的web工程添加/删除到Tomcat运行实例中),最下面是它默认生成的工程路径。
Application context
:/dynamicobject_war_exploded,一般改为和模块名/工程名一致,即/dynamicobject -
点
Edit Configurations -> Service
(在Name下面),Service 的里面的url
是启动Tomcat运行实例时默认打开访问的地址,里面的On frame deactivation
可以改为 update classes and resource(热部署),当页面发送变化时,刷新就会看到。 -
点右上角绿色的箭头 启动Tomcat运行实例(启动后自动访问上面那个url地址),点红色方块是 停止运行实例
-
运行后,有个循环的箭头是
重启
,有下面四个选择:update resource
是更新web工程中的资源到Tomcat运行实例中update classes and resource
是更新资源和Class字节码。前面两个都是热部署Redeploy
是重新部署web模块,但不重启Tomcat运行实例Restart Service
重启Tomcat实例,并更新web模块内容
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)