第五讲Servlet基础《企业级web应用开发》_第1页
第五讲Servlet基础《企业级web应用开发》_第2页
第五讲Servlet基础《企业级web应用开发》_第3页
第五讲Servlet基础《企业级web应用开发》_第4页
第五讲Servlet基础《企业级web应用开发》_第5页
已阅读5页,还剩36页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第五讲Servlet基础《企业级web应用开发》2回顾JavaBean是什么?JavaBean属性方法与事件的命名模式JavaBean属性的类型JavaBeaninfo类使用包装JavaBean3目标理解HTTPServlet基础知识使用ServletAPI(★)理解Servlet的生命周期

MyEclipse建立Servlet程序(★)4什么是Serverlet?请求客户端响应Servlet运行于服务器上Servlet是一个用Java编写的程序,此程序在服务器容器上运行以处理客户端请求按照Servlet自身规范编写的Java类5Servlet技术特点特点:①在服务器容器上运行,处理客户端请求并且将响应返回客户端;②移植性好,本身是一个Java类,跨平台;③对于客户端请求,只需创建Servlet实例一次,驻留在内存中,每次请求时无须加载。6HTTPServlet基础知识HttpServlet类是一个抽象类,封装了基于Http协议的Servlet大部分功能,用户自定义的Servlet直接继承HttpServlet类。(重写其中两个方法:doGet和doPost)publicvoiddoGet(HttpServletRequestreq,HttpServletResponseres)throwsServletException,IOExceptiondoGet()方法处理客户端作出的GET请求。publicvoiddoPost(HttpServletRequestreq,HttpServletResponseres)throwsServletException,IOExceptiondoPost()方法处理客户端作出的POST请求。7示例编写Servlet,当客户端向它发送请求,它给一个响应输出”你好,华软学院!”8运行环境URL怎么组成的?9web.xml10Servlet的生命周期(重要)Servlet的生命周期:由容器管理与控制。当Servlet实例创建之后响应客户请求直至销毁的全过程。生命周期的3个方法为:

init()service()destroy()11Servlet的生命周期

生命周期的各个阶段为:实例化Servlet容器创建Servlet的实例初始化该容器调用init()方法服务如果请求Servlet,则容器调用service()方法销毁实例之前调用destroy()方法销毁不可用销毁实例并标记为垃圾收集12Servlet类装载Servlet置入容器Servlet初始化调用init()方法web.xml中:<load-on-startup>?</load-on-startup>提供服务调用service方法处理客户端请求销毁Servlet实例容器关闭调用destory方法Servlet实例回收Servlet的生命周期13Servlet初始化示例记录Servlet被访问的次数

1.修改web.xml14Servlet初始化示例1516Servlet体系结构和层次结构客户端HTTP服务器Servlet容器ServletServletServletHttp请求Http响应web.xmlServlet体系结构17Servlet体系结构和层次结构Servlet层次结构①javax.servlet包

ServletConfiggetServletName获取Servlet实例的名称getInitParameter获取初始化参数的值getServletContext返回与容器交互的ServletContext对象ServletContextgetAttributesetAttributeremoveAttributeServletRequestgetInputStream接收客户端二进制数据getParameter获取随请求信息发送的参数getContextLength获取请求的实际长度getServerName获取请求发往的服务器名称ServletResponsegetOutputStream发往客户端二进制数据getWriter产生PrintWriter对象setContentLength设置响应信息长度getBufferSizesetBufferSize18javax.servlet包ServletConfig接口在初始化的过程中由Servlet容器使用ServletContext接口定义Servlet用于获取来自其容器的信息的方法ServletRequest接口向服务器请求信息ServletResponse接口响应客户端请求javax.servlet包的接口为:19javax.servlet包

ServletInputStream类用于从客户端读取二进制数据ServletOutputStream类用于将二进制数据发送到客户端javax.servlet包的类为:20Servlet体系结构和层次结构②javax.servlet.http包HttpServletRequestgetCookies获得客户端发送的CookiegetSession获得和客户端关联的HttpSession对象getSession(boolean)获得和客户端关联的HttpSession对象getParameter获得请求参数中的值getParameterValues获得请求参数中的值setCharacterEncoding设置响应的字符编码类型HttpServletResponseaddCookie在响应中增加一个CookieencodeURL重新编写URLsendRedirect把响应发送到另一页面或ServletsetContentType设置响应的MIME类型21javax.servlet.http包HttpServletRequest接口

提供HTTP请求信息HttpServletResponse接口

提供HTTP响应

javax.servlet.http包的接口为:22简单Servlet的结构这是一个显示HttpServletRequest和HttpServetResponse接口一些方法的简单Servlet演示:示例importjava.io.*;importjavax.servlet.*;importjavax.servlet.http.*;publicclassClientServletextendsHttpServlet{protectedvoiddoGet(HttpServletRequest

request,HttpServletResponseresponse)throwsIOException,ServletException{

response.setContentType(“text/html;charset=GBK”);

PrintWriterout=response.getWriter();

out.println(“<html><body>您好!</body></html>”);}}需要导入的包用于处理GET请求的方法创建设置文本格式和PrintWriter对象的方法以将数据发送给客户端23Servlet的部署<servlet><servlet-name>clientservlet</servlet-name><servlet-class>chapter2.ClientServlet</servlet-class></servlet><servlet-mapping><servlet-name>clientservlet</servlet-name><url-pattern>/clientservlet</url-pattern></servlet-mapping>web.xml文件中配置Servlet两个名称必须相同2424Eclipse中开发Servlet252526262727示例一FormServlet2828修改web.xml2929web.xml3030部署3131部署与启动服务器32在x:\bea\user_projects\~\autodeploy观察项目部署结果3233在Weblogicconsole观察项目部署结果333434运行结果35举例编写Servlet提供用户输入:用户名及密码,并且提供一个提交按钮;编写Servlet用来接收用户所输入的用户名及密码。363738运行39总结-1Servlet运行于服务器上,它接受请求并用请求的数据响应客户端HTTP是一个广泛使用的协议,用于在客户端和服务器之间传输数据Servlet广泛使用HTTP协议,因此称为HTTPServletHTTPServlet发送HTTP请求并接收HTTP响应40总结-2ServletAPI包含在两个包中,即javax.servlet和javax.servlet.http中Servlet的生

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论