Servlet总结

2019-03-10 21:13

1、什么是Servlet?

Servlet是服务器端的程序,是运行在WEB服务器或者应用服务器上的JAVA程序。是基于Http协议的,用于处理和响应客户端请求,可以将Servlet看作是一个含有HTML的JAVA程序。

3、认识什么是Web容器?

是用来管理组件行为的一个集合工具,组件的行为包括与外部环境的交互、组件的生命周期、

组件之间的合作依赖关系等等。

4、什么是组件?

本意是指可以重用的代码单元,一般代表着一个或者一组可以独立出来的功能模块。

特点是分别会打包成.war,.jar,.jar,.ear,每个组件由特定格式的xml描述符文件进行描述,

而且服务器端的组件都需要被部署到应用服务器上面才能够被使用。 如,Servlet-api.jar

5、Tomcat的配置、启动、测试

配置:2个主要的环境变量:

JAVA_HOME 指向JDK的安装目录

CATALINA_HOME 指向TOMCAT的安装目录

启动:控制台进入TOMCAT的安装目录下的bin目录,输入catalina.bat run。 测试:打开浏览器,输入http://127.0.0.1:8080/,

可以访问到tomcat的主页就表示启动成功。

6、Web应用框架

用户界面 Web服务器,中间件业务逻辑 后台存储系统:数据库 7、Web应用结构 主要分为两部分:

(1) WEB-INF目录,其中包含不能被客户访问的专用Web应用程序,包括Servlet类文件、部署描述符、外部类库等文件

(2) WEB-INF目录之外的文件都被看作是公共的,它们可以被客户端访问,包括HTML页面、JSP页面、和图像等文件

8、Servlet开发步骤 (1)编写Servlet类。

也是普通的Java类,该类实现Servlet接口、继承HttpServlet类、或继承间接实现了Servlet接口的类,简称为Servlet类。

(2)若实现Servlet接口,则Servlet类覆盖Service()方法;

若继承HttpServlet类,则Servlet类应重写doGet()方法或doPost()方法。 在Service(),doGet(),doPost()方法实现与客户交互的界面信息。 (3)配置Web.xml文件。

/*Servlet名字和物理路径*/

HelloServlet

com.tarena.serv.core.HelloServlet

/*Servlet名字和客户请求资源的url虚拟路径*/ HelloServlet /core/hello

(4)重启Tomcat服务器

9、Servlet工作流程

10、Servlet生命周期

11、Servlet接口、HttpServlet 类

1、Servlet接口的基本目标是提供生命期方法init()、service()和destroy()方法。 (1)void init(ServletConfit config)

在servlet被载入后和实施服务前由servlet引擎进行一次性调用。

(2)void service(ServletRequest request, ServletResponse response) 处理request对象中描述的请求,使用response对象返回请求结果 (3)void destory()

当servlet将要卸载时由servlet引擎调用。

2、HttpServlet 类通过调用指定到HTTP请求方法的方法实现service()。

(1)void doGet(HttpServletRequest request,HttpServletResponse response) 由servlet引擎调用用处理一个HTTP GET请求。

输入参数、HTTP头标和输入可从request对象、response头标和response对象

的输出流中获得。

(2)void doPost(HttpServletRequest request,HttpServletResponse response)

由servlet引擎调用用处理一个HTTP POST请求。 (3)Service(Request request,Response response)

此方法实际上将请求导向doGet()、doPost(),不应该覆盖此方法。

12、ServletRequest接口、HttpServletRequest接口

1、ServletRequest接口封装了客户端请求的细节。它与协议无关。

ServletRequest主要处理: 1.找到客户端的主机名和IP地址 2.检索请求参数 3.取得和设置属性 4.取得输入和输出流

2、HttpServletRequest类(HTTP协议)

HttpServletRequest类主要处理: 1.读取和写入HTTP头标 2.取得和设置cookies 3.取得路径信息

4.标识HTTP会话。

13、ServletResponse接口、HttpServletResponse接口

1、ServletResponse对象将一个servlet生成的结果传到发出请求的客户端。

ServletResponse操作主要是作为输出流及其内容类型和长度的包容器,它由servlet引擎创建.

2、HttpServletResponse加入表示状态码、状态信息和响应头标的方法,它还负责对URL

中写入一Web页面的HTTP会话ID进行解码。

14、ServletContext接口

简称“Servlet上下文”。

Web应用中servlet可以使用servlet上下文得到:

1.在调用期间保存和检索属性的功能,并与其他servlet共享这些属性。 2.读取Web应用中文件内容和其他静态资源的功能。 3.互相发送请求的方式。

4.记录错误和信息化消息的功能。

15、HttpSession接口

HttpSession类似于哈希表的接口,它提供了setAttribute ()和getAttribute()方法存储和 检索对象。HttpSession提供了一个会话ID关键字,一个参与会话行为的客户端在同一 会话的请求中存储和返回它。servlet引擎查找适当的会话对象,并使之对当前请求可用。

16、客户的Get和Post请求

Get请求的参数会显示到地址栏上,而Post不会

17、Servlet的多线程安全控制

servlet中需要同步的:成员变量、文件、静态变量、数据库连接。

(1)对变量和方法定义适当的访问方式, 例如单纯取值操作不会有多线程安全问题;

(2)同步化所有访问重要数据的实例变量; 多线程下,如果操作的是一个变量,且兼有读

写操作,就要考虑加上同步,但同步不能乱加,否则会造成死锁问题。 (3)给共享资源加上同步代码块(Synchronize )

18、Form表单的解析

客户端:form元素的属性

(1)action: 用来指定要处理form数据的Servlet的URL。 (2)method: 指定数据传送给HTTP服务器的方法. 服务器端:解析表单信息

(1)req.getParameter(String name): 返回表单中参数名(区分大小写)对应的参数值;

(2)req.getParameterNames(),可以获得一个迭代器Enumeration,通过这个迭代器,来获得

form表单中参数的名字.

(3)req.getParameterValues(String name) 返回表单中参数名(区分大小写)对应的字符串

数组

19、页面转发

(1)forward:上一页面请求信息会传递到下一页面,即请求对象包含的信息不变。 例:ServletContext application = getServletContext();

RequestDispatcher dispatcher = application.getRequestDispatcher(nextPage); dispatcher.forward(request, response);

(2)redirect:上一页请求不会传递到下一页面,即重开一新请求.


Servlet总结.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:六年级数学上册 稍复杂的分数乘法应用题练习课教案 青岛版

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: