(Java Web程序设计基础教程)第6章系统流程控制.ppt

(Java Web程序设计基础教程)第6章系统流程控制.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第6章 系统流程控制 6.1 Servlet 6.1.1 什么是Servlet   从完成的功能上来说,Servlet与JSP完全一样。但是,从编写的角度来说是不一样的:JSP是在HTML或者XML文档中嵌入Java脚本或者JSP标签形成的,是文本文件;而Servlet是纯Java文件,是一个类。所有使用Servlet完成的功能,包括与用户的交互,都是通过Java代码完成的。   Servlet是用Java语言编写的运行在服务器端的小应用程序,能够接收Web客户端的请求,并能对Web客户端进行响应,通常是通过HTTP(HyperText Transfer Protocol)协议进行工作的。   可以认为Servlet是服务器端的Applet(实际上,Applet运行在客户端,而Servlet运行在服务器端)。 6.1.2 Servlet的主要方法   Servlet是一个Java类,通常会有三类方法,分别是:   (1) ?init方法,用于初始化。   (2) ?destroy方法,用于释放资源。   (3) ?service方法(服务类方法),对用户的请求进行处理,并对用户进行响应。几乎所有处理功能都在这里完成。这类方法可以有多个,例如doGet和doPost等。doGet方法可以响应get方式的请求,doPost方法可以响应post方式的请求。通常,表单提交都使用post方式,超链接使用get方式。 6.1.3 编写简单的Servlet   1. 编写Servlet   根据要完成的功能来编写Servlet。功能确定之后,根据Servlet的框架来编写Servlet。这里主要关注编写Servlet的一般过程。   因为Servlet是Java类,所以它与一般的Java类的编写基本相同。具体步骤如下:   (1) 创建一个包。假设包名是servlets,创建包的代码如下:   package servlets;   (2) 导入用到的包。需要导入的包有javax.servlet.*和javax.servlet.http.*,通常还需要导入的包是java.io.*。代码如下:   import javax.servlet.*;   import javax.servlet.http.*;   import java.io.*;   (3) 定义类的基本框架并继承HttpServlet。每个Servlet都必须实现接口Servlet,而这里要编写的Servlet主要是用于HTTP协议的,可以继承实现了Servlet接口的HttpServlet。代码如下:   public class HelloServlet extends HttpServlet   {   }   (4) 编写成员方法。Servlet通常不需要成员变量,成员方法包括init、service、destroy等。如果需要对Servlet进行初始化,则需要实现init方法。如果需要在卸载Servlet的时候执行一些功能,则需实现destory方法。一般情况下,根据需要完成的功能只需要实现服务类方法即可。这里只实现doGet方法。服务类方法有两个参数:第一个参数是HttpServletRequest的对象,该参数包含了用户的所有请求信息,要想获取用户的请求信息,必须使用该对象提供的方法;第二个参数是HttpServletResponse的对象,可以通过这个对象对用户进行响应,如果希望对用户进行响应或者设置响应相关的信息,需要使用该对象的方法。   该实例完成的功能是向用户输出一行文字,所以不需要获取用户的请求信息,只需要对用户进行响应即可。在对用户进行响应的时候,需要设定文档类型以及编码方式等,就像在JSP中每个文件都要设置page标签的contentType属性一样。之后要向用户输出一些内容,需要先获取输出流。响应页面的属性设置和输出流的获取都是与响应相关的,需要使用第二个参数来完成。   代码如下:   public void doGet(HttpServletRequest request,HttpServletResponse)    throws IOException,ServletException   {    response.setContentType(text/html;charset=gb2312);    PrintWriter out = response.getWriter();    out.println(html);    out.println(headtitleHello World!/title/head);    out.println(body);

您可能关注的文档

文档评论(0)

autohhh + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档