黑马程序员技术交流社区
标题:
Tomcat
[打印本页]
作者:
张柱
时间:
2019-6-13 17:45
标题:
Tomcat
Tomcat: Web服务器软件
tomcat组成结构:
<server>
<service>
<Connector>
<Engine>
<Host>
<Context>
<ConText>
<Context>
<ConText>...
<Host>
<Host>
<Context>
<ConText>
<Host>...
<Engine>
<Connector>
<service>
<server>
服务器:安装了服务器软件的计算机
服务器软件:接收用户的请求,处理请求,做出响应
Web服务器软件:可以部署web项目,让用户通过浏览器来访问这些项目
* Tomcat:Apache基金组织,中小型的JavaEE服务器,仅仅支持少量的JavaEE规范servlet/jsp。
开源的,免费的。
javaEE:java语言在企业级开发中使用的技术规范总和,一共规范了13项大的规范。
启动时可能遇到的问题:
1. 黑窗口一闪而过:
原因: 没有正确配置JAVA_HOME环境变量
解决方案:正确配置JAVA_HOME环境变量
2. 启动报错:
1. 暴力:找到占用的端口号,并且找到对应的进程,杀死该进程
在cmd中输入netstat -ano查看所有的PID
2. 温柔:修改自身的端口号 进conf/server.xml 修改
80端口号是http协议的默认端口号,访问时不用输入端口号
关闭:1.ctrl+c 2.bin/shutdown.bat 3.强制关闭
配置:
部署项目的方式
1.直接复制到webapps目录下 简化部署:将项目打成一个war包,再将war包放置到webapps目录下。
2.不放入,配置conf/server.xml文件
在<Host>标签体中配置<Context docBase="D:\hello" path="/hehe" />
docBase:项目存放的路径;path:虚拟目录(xml文件的名称)
3.在conf\Catalina\localhost创建任意名称的xml文件
如:bbb.xml 如果不要了 在文件后加后缀 bbb.xml_bak 服务器就访问不到了
<Context docBase="D:\hello" />
servlet: server applet
Servlet就是一个接口,定义了Java类被浏览器访问到(tomcat识别)的规则。
生命周期:可以配置执行Servlet的创建时机。
在<servlet>标签下配置
1. 第一次被访问时,创建
* <load-on-startup>的值为负数 默认为-1 在第一次访问时创建
2. 在服务器启动时,创建
* <load-on-startup>的值为0或正整数
init方式只执行一次,Servlet在内存中只存在一个对象,是单例的。
destroy方法在Servlet被销毁之前执行,一般用于释放资源
只执行一次,且服务器要正常关闭才执行
Servlet3.0以上版本支持注解配置,可以不需要web.xml了
类上使用@WebServlet注解,进行配置
@WebServlet(urlPatterns="资源路径")
@WebServlet(value="资源路径")value可省略
IDEA与tomcat相关配置
tomcat真正访问的是“tomcat部署的web项目”,
"tomcat部署的web项目"对应着"工作空间项目" 的web目录下的所有资源
WEB-INF目录下的资源不能被浏览器直接访问。
断点调试:使用"小虫子"启动 dubug 启动
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2