文档详情

Servlet总结

Wo****Z
实名认证
店铺
DOC
18.50KB
约8页
文档ID:168075915
Servlet总结_第1页
1/8

Servlet总结 - 1、什么是Servlet? Servlet是效劳器端的程序,是运行在WEB效劳器或者应用效劳器上的JAVA程序是基于协议的,用于处理和响应客户端恳求,可以将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 测试:翻开阅读器,输入://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接口、继承Servlet类、或继承间接实现了Servlet接口的类,简称为Servlet类 〔2〕假设实现Servlet接口,那么Servlet类覆盖Service方法; 假设继承Servlet类,那么Servlet类应重写doGet方法或doPost方法 在Service〔〕,doGet〔〕,doPost〔〕方法实现与客户交互的界面信息 〔3〕配置Web.xml文件 /*Servlet名字和物理途径*/ HelloServlet .tarena.serv.core.HelloServlet /*Servlet名字和客户恳求资的url虚拟途径*/ HelloServlet /core/hello 〔4〕重启Tomcat效劳器 9、Servlet工作流程 10、Servlet生命周期 11、Servlet接口、Servlet 类 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、Servlet 类通过调用指定到恳求方法的方法实现service 〔1〕void doGet(ServletRequest request,ServletResponse response) 由servlet引擎调用用途理一个 GET恳求 输入参数、头标和输入可从request对象、response头标和response对象 的输出流中获得 〔2〕void doPost(ServletRequest request,ServletResponse response) 由servlet引擎调用用途理一个 POST恳求。

〔3〕Service(Request request,Response response) 此方法实际上将恳求导向doGet、doPost,不应该覆盖此方法 12、ServletRequest接口、ServletRequest接口 1、ServletRequest接口封装了客户端恳求的细节它与协议无关 ServletRequest主要处理: 1.找到客户端的主机名和IP地址 2.检索恳求参数 3.获得和设置属性 4.获得输入和输出流 2、ServletRequest类〔协议〕 ServletRequest类主要处理: 1.读取和写入头标 2.获得和设置cookies 3.获得途径信息 4.标识会话 13、ServletResponse接口、ServletResponse接口 1、ServletResponse对象将一个servlet生成的结果传到发出恳求的客户端 ServletResponse操作主要是作为输出流及其内容类型和长度的包容器,它由servlet引擎创立. 2、ServletResponse参加表示状态码、状态信息和响应头标的方法,它还负责对URL中写入一Web页面的会话ID进展解码。

14、ServletContext接口 简称“Servlet上下文” Web应用中servlet可以使用servlet上下文得到: 1.在调用期间保存和检索属性的功能,并与其他servlet共享这些属性 2.读取Web应用中文件内容和其他静态资的功能 3.互相发送恳求的方式 4.记录错误和信息化消息的功能 15、Session接口 Session类似于哈希表的接口,它提供了setAttribute 和getAttribute方法存储和 检索对象Session提供了一个会话ID关键字,一个参与会话行为的客户端在同一 会话的恳求中存储和返回它servlet引擎查找适当的会话对象,并使之对当前恳求可用 16、客户的Get和Post恳求 Get恳求的参数会显示到地址栏上,而Post不会 17、Servlet的多线程平安控制 servlet中需要同步的:成员变量、文件、静态变量、数据库连接 〔1〕对变量和方法定义适当的访问方式, 例如单纯取值操作不会有多线程平安问题; 〔2〕同步化所有访问重要数据的实例变量; 多线程下,假如操作的是一个变量,且兼有读写操作,就要考虑加上同步,但同步不能乱加,否那么会造成死锁问题。

〔3〕给共享资加上同步代码块(Synchronize ) 18、Form表单的解析 客户端:form元素的属性 〔1〕action: 用来指定要处理form数据的Servlet的URL 〔2〕method: 指定数据传送给效劳器的方法. 效劳器端:解析表单信息 〔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:上一页恳求不会传递到下一页面,即重开一新恳求. 第 8 页 共 8 页。

下载提示
相关文档
正为您匹配相似的精品文档