博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Java学习之Servlet篇
阅读量:5147 次
发布时间:2019-06-13

本文共 1598 字,大约阅读时间需要 5 分钟。

《》

Servlet 生命周期:Servlet 加载--->实例化--->服务--->销毁。

init():在Servlet的生命周期中,仅执行一次init()方法。它是在服务器装入Servlet时执行的,负责初始化Servlet对象。可以配置服务器,以在启动服务器或客户机首次访问Servlet时装入Servlet。无论有多少客户机访问Servlet,都不会重复执行init()。

service():它是Servlet的核心,负责响应客户的请求。每当一个客户请求一个HttpServlet对象,该对象的Service()方法就要调用,而且传递给这个方法一个“请求”(ServletRequest)对象和一个“响应”(ServletResponse)对象作为参数。在HttpServlet中已存在Service()方法。默认的服务功能是调用与HTTP请求的方法相应的do功能。

destroy(): 仅执行一次,在服务器端停止且卸载Servlet时执行该方法。当Servlet对象退出生命周期时,负责释放占用的资源。一个Servlet在运行service()方法时可能会产生其他的线程,因此需要确认在调用destroy()方法时,这些线程已经终止或完成。

 

Servlet的装载三种情况:

1、自动装载:某些Servlet如果需要在Servlet容器启动时就加载,需要在web.xml下它的<Servlet>标签里中,添加优先级代码:

<Servlet>

<load-on-startup>1<load-on-startup>

</Servlet>

数字越小表示该servlet的优先级越高,会先于其他自动装载的优先级较低的先装载

2、Servlet容器启动后,客户首次向某个Servlet发送请求时,Tomcat容器会加载它

3、当Servlet类文件被更新后,也会重新自动加载 Servlet是长期驻留在内存里的。某个Servlet一旦被加载,就会长期存在于服务器的内存里,直到服务器关闭 Servlet被装载后,Servlet容器创建一个Servlet实例并且调用Servlet的init()方法进行初始化。

在Servlet的整个生命周期内,init()方法只被调用一次

 

路径跳转:绝对路径&相对路径

一、JSP跳转到Servlet
1、相对路径,如href="servlet/TestServlet" 如果写成"/servlet/TestServlet"会报错,因为第一个“/”表示的是【服务器根目录】
2、绝对路径,通过内置成员变量path实现,如href="<%=path%>/servlet/TestServlet" path得到的是项目根目录,如【http://localhost:8080/ServletDemo】
二、Servlet跳转JSP
1、请求重定向:response.sendRedirect(request.getContextPath()+"/xxx.jsp"); request.getContextPath()获得项目根目录,或者通过"../xxx.jsp"取得上层路径得到
2、服务器内部转发: request.getRequestDispatcher("../xxx.jsp").forward(req,resp); request.getRequestDispatcher("/test.jsp").forward(request, response); //斜线表示项目的根目录 小结:Servlet都可以通过../xxx.jsp获取路径
三、web.xml的路径 web.xml的<url-pattern>必须以“/”开头,“/”表示项目的根目录

转载于:https://www.cnblogs.com/wenruo/p/6347849.html

你可能感兴趣的文章
netstat用法及TCP state解析
查看>>
[转自小龙博客]优酷视频自动播放办法
查看>>
深入理解事件捕获冒泡
查看>>
软件设计入门2 数据库设计
查看>>
文件信息
查看>>
Hibernate 一对一外键单向关联
查看>>
笔记1
查看>>
Link-cut-tree 学习记录 & hdu4010
查看>>
ECharts使用小结
查看>>
JAVA实现MD5加密算法(使用MessageDigest)
查看>>
壮哉大微软,.Net人的春天来了,你准备好了嘛!
查看>>
Spine学习五- spine动画融合
查看>>
Python科学计算工具包
查看>>
2-4 zookeeper配置文件介绍,运行zk
查看>>
00_前情回顾
查看>>
运行项目psychologicalTest
查看>>
pgrep,pkill
查看>>
filter-grok,dissect匹配数据
查看>>
java 排序3 插入排序
查看>>
旋转90度也可以,Lumia的四大重置方式
查看>>