黑马程序员技术交流社区
标题:
【石家庄校区】Day13 Tomcat&Servlet
[打印本页]
作者:
18032086639
时间:
2018-12-21 19:32
标题:
【石家庄校区】Day13 Tomcat&Servlet
本帖最后由 小石姐姐 于 2018-12-28 09:03 编辑
Tomcat&Servlet
web服务器软件: Tomcat
服务器:安装了服务器软件的计算机
web服务器软件:接收用户的请求,处理请求,做出响应.
在web服务器软件中,可以部署web项目,让用户通过浏览器来访问
常见的javaWeb服务器软件
*weblogic: 大型javaEE服务器,支持所有的javaEE规范
*webSphere: 大型javaEE服务器,支持所有的javaEE规范
*JBOSS: 大型javaEE服务器,支持所有的javaEE规范
*Tomcat: 中型javaEE服务器,仅支持部分的javaEE规范 开元免费
2个组织:
Apache:
spring:
注意:
默认端口8080
解压目录时不要带有中文和空格
目录结构:
bin tomca核心目录 启动和关闭
conf tomcat的核心配置目录->tomcat自定义配置
libs tomcat运行时借助的jar包
webapps tomcat的项目目录
开发环境
我们在coding阶段(测试)
生产环境
上线环境
正式给用户使用的版本;
web项目
项目目录
src
webcontent
网页资源
web-inf
lib ->>放jar包的
web.xml
编译后:
项目目录
网页资源
web-inf
web.xml
classes
lib
Serverlet
*概念:
运行在服务器端的小程序
serverlet就是一个接口 定义了java类被浏览器访问到(tomcat)的规则.
将来我们自定义了一个类,实现servelet接口,复写方法.
servlet
1.创建类实现servelet接口(添加tomcat8的依赖)
2.实现service方法
3.修改web.xml
<Serverlet >
-name
-class
<servelet>
mapping
-name
-url-pttern
mapping
执行原理:
1.当服务器接收到客户端的请求后,会解析请求url路径,获取访问的servlet的资源路径
2.查找web.xml文件,是否有对应的<url-pttern> 标签体内容
3.如果有,则找到对应的<servelet-class>全类目
4.tomcat会将字节码文件加载进内存,并创建其对象
5.调用其方法
servlet原理
看图
servlet生命周期:
intt() 一次
默认情况下 第一次被访问时servlet被创建
* 可以配置执行Servlet的创建时机。
* 在<servlet>标签下配置
1. 第一次被访问时,创建
* <load-on-startup>的值为负数
2. 在服务器启动时,创建
* <load-on-startup>的值为0或正整数
* Servlet的init方法,只执行一次,说明一个Servlet在内存中只存在一个对象,Servlet是单例的
* 多个用户同时访问时,可能存在线程安全问题。
* 解决:尽量不要在Servlet中定义成员变量。即使定义了成员变量,也不要对修改值
service() 多次
*执行多次
destory() 一次
* Servlet被销毁时执行。服务器关闭时,Servlet被销毁
* 只有服务器正常关闭时,才会执行destroy方法。
* destroy方法在Servlet被销毁之前执行,一般用于释放资源
Servlet3.0:
* 好处:
* 支持注解配置。可以不需要web.xml了。
* 步骤:
1. 创建JavaEE项目,选择Servlet的版本3.0以上,可以不创建web.xml
2. 定义一个类,实现Servlet接口
3. 复写方法
4. 在类上使用@WebServlet注解,进行配置
* @WebServlet("资源路径")
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2