- Servlet的生命周期:
Servlet部署在容器中,其生命周期由容器来管理,可以概括为一下5个阶段
1.加载:当web客户端请求Servlet服务或web服务器启动时,容器环境加载一个Servlet类。
2.实例化:容器环境根据客户请求创建一个Servlet对象实例。
3.初始化:容器环境调用Servlet的init()方法进行初始化,该方法以一个ServletConfig类型的应用作为参数,该参数可让Servlet从部署描述文件web.xml中读取一些“键对值”形式的参数值,以初始化这些数据。Servlet初始化时也可以从数据库中读取初始化数据,建立JDBC连接,或者创建其他有价值的资源信息引用。
4.服务:容器环境利用HttpServletRequset和HttpServletResponse对象,封装从web客户端接受到的HTTP请求和Servlet生成的响应,将这两个对象以参数的形式传给service()方法。
5.销毁:当web服务器或容器关闭时,会自动调用servlet的destroy()方法关闭所有打开的资源,并进行一些关闭前的处理
Servlet生命周期整个过程:
1:不存在的Servlet实例——2:容器装载Servelt——3:创建Servlet实例——4:初始化Servlet调用init()方法——
5:调用service()方法对应Servlet的service()方法——6:结束Servlet调用destory()方法
应用Servlet API
Servlet API中定义了一整套的借口和类:
javax.servlet —— [接口 类]
接口:{ServletConfig、ServletContext、ServletResponse、ServletRequset、Servlet}
类:{ServletOutputStream、ServletInputStream、GenericServlet}
使用Servlet API的原则
-
重写doGet()方法来处理Get请求
-
重写doPost()方法来处理post请求
-
如果需要在Servlet实例化中进行初始化工作,可以重写init()方法
-
如果需要在Servlet被释放时进行资源清理工作,可以重写destort()方法
HttpServletRequest接口
HttpServletRequest接口代表客户请求。容器在调用Servlet的doGet()和doPost()方法时,会创建一个HttpServletRequest接口的实例,该实例作为参数传给doGet()或doPost()方法
HttpServletRequest所提供的方法如下:
-
publick String getParameter(String name) 获取指定名称的参数值
-
public String[] getParamnterValues(String name) 获取指定名称参数的所有值数组。它使用与一个参数名对应多个值的情况,如页面表单中的复选框。
-
public java.util.Enumeration getParameterNames() 返回一个包含请求信息的所有参数名的Enumeration对象。通过编辑Enumeration对象,可以获取请求中所有的参数
-
public java.util.Map getParameterMap() 返回所有参数的一个Map对象。其中key代表参数名,value代表参数值。
HttpServletResponse接口:
HttpServletResponse接口代表向客户端发送的响应。容器在调用Servlet的doGet()和doPost()方法时,同样会创建一个HttpServletResponse接口的实例,作为参数传给doGet()或doPost()方法。
HttpServletResponse接口提供的方法:
-
public void addCookie(Cookie arg0) 在响应中加入cookie对象
-
addHeader(String arg0,String arg1) 加入对应的名称的字符串头信息
-
public String encodeURL(String arg0) 对特定的URL进行加密
-
public sendRedirect(String arg0) 传递临时响应,响应的地址由location指定
使用request对象属性传递数据
在Servlet类的请求处理方法中,可以获取客户端提交的参数数据,也可以棉鞋逻辑代码,对数据请求进行处理并作出响应。
业务需求:
-
将处理的结果传给其他页面,如jsp页面或其他的Servlet。
-
一个Servlet类无法处理独立处理客户请求,处理部分数据后需要传给另一个Servlet继续处理
两种情况的共同点在于web程序处理流程改变时,将前一个处理数据继续处理传递给下一个资源。这种情况下会使用request属性传递数据,
客户__请求Servlet______ Servlet处理_____传递结果,转发请求__________{1、HTML静态页面 2、另一个Servlet 3、动态页面(jsp)}
使用request属性传递数据的步骤:
-
使用HttpServleRequset接口的setAttribute()方法,把数据存入requset请求域中。 ——语法——requset.setAttribute(String name, Object obj)
-
获取一个RequestDispatcher转发实例,转发到目标资源。
重定向与转发
重定向与转发都是用于实现web应用程序中资源的跳转
1、使用HttpServletResponse对象的sendRedirect()方法可以实现重定向 —— 语法:public sendRedirect (String arg0)
2、转发
3、重定向与转发的区别
分享到:
相关推荐
【韩顺平jsp笔记(个人总结版)】 在学习Java Web开发时,JSP(JavaServer Pages)是一种常用的动态网页技术。这篇笔记基于韩顺平老师的讲解,将带你深入理解JSP的基础概念、原理和核心特性。 首先,JSP入门涉及以下...
JSP的使用通常涉及以下几个关键知识点: 1. **JSP指令和脚本元素** - `<% %>`:这是JSP的脚本元素,用于在页面中直接插入Java代码。这些代码会被转换为Servlet的方法,然后在服务器上执行,其结果直接输出到浏览器...
【JSP基础与Tomcat配置】 1. **Tomcat全局配置**:Tomcat服务器的全局配置文件位于`conf/web.xml`。此文件控制了服务器的行为,例如,如果你想禁止Tomcat列出目录内容,可以通过添加以下配置来实现: ```xml ...
### JSP技术详解:从基础概念到核心技术 #### 一、JSP技术概览 **JSP(Java Server Pages)**是一种服务器端脚本技术,主要用于动态网页开发,结合了HTML、XML和Java编程语言的功能。它允许在HTML文档中嵌入Java...
【标题】:“北京MLDN 李兴华JSP笔记”是李兴华老师关于JavaWeb技术,特别是JSP(JavaServer Pages)的详实学习资料,由MLDN( Multimedia Learning and Development Network,多媒体学习与发展网络)发布。...
通过阅读《Jsp笔记.pdf》,你将能够深入学习JSP 2.0的核心概念,了解如何使用JSP来创建动态Web应用,掌握JSP的各种元素、内置对象、动作标签和新特性,从而提升你的Web开发技能。结合实际项目实践,你可以更好地应用...
**JSP(Java Server Pages)*...达内JSP笔记完全版详细介绍了JSP的基本概念、运行机制、语法结构和生命周期,为初学者提供了全面的学习材料。通过理解并熟练运用这些知识,开发者可以高效地构建基于Java的动态Web应用。
综上所述,北京圣思园的JSP笔记涵盖了从HTML/CSS基础到JSP页面的请求处理、会话管理和页面跳转等核心概念。通过这些笔记,学习者可以系统地掌握JSP的开发和应用,为构建动态Web应用打下坚实的基础。
jsp笔记(20220104183605).pdf
JSP笔记(20220104194929).pdf
### Web开发JSP笔记知识点概览 #### 一、HTTP请求方法:GET与POST - **GET** 方法:GET 方法通常用于从服务器检索资源。它将请求参数附加在URL后面,使得请求信息直接可见于地址栏。由于URL长度限制,GET 请求能...
### 韩顺平JSP学习笔记与源代码解析 #### J2EE的十三种技术(规范) 在韩顺平老师的教学笔记中,首先提到了J2EE平台下的十三种核心技术,这些技术对于理解JSP及其相关的Web开发环境至关重要。 1. **Java数据库...
【笔记.txt】文件可能包含了关于JSP的详细学习笔记,涵盖了基础概念、语法、生命周期、内置对象、EL(Expression Language)、JSTL(JavaServer Pages Standard Tag Library)以及MVC(Model-View-Controller)设计...
根据提供的文件信息,这里将基于“jsp考试笔记”的标题、描述及部分难以辨识的内容来构建一份关于JSP(JavaServer Pages)的知识点总结。 ### JSP基础概念 #### 定义 JSP(JavaServer Pages)是一种由Sun ...
毕业设计javajsp笔记本管理系统(ssm)-qkrp源码含文档 后台是ssm框架,页面是jsp,数据库mysql,jdk1.8,开发工具用ecplise、myecplise、sts、idea都可以 笔记本管理 笔记管理 笔记收藏管理 笔记回收管理 包含:源码...
【韩顺平jsp九讲笔记】是一份详细记录了韩顺平老师关于JSP(Java Server Pages)技术的九次讲解的学习资料。这份笔记涵盖了JSP的基础知识、核心概念以及实际应用,旨在帮助学习者深入理解和掌握JSP编程。韩顺平老师...