控制层Servlet组件技术

上传人:壹****1 文档编号:472029283 上传时间:2024-02-07 格式:DOCX 页数:9 大小:145.24KB
返回 下载 相关 举报
控制层Servlet组件技术_第1页
第1页 / 共9页
控制层Servlet组件技术_第2页
第2页 / 共9页
控制层Servlet组件技术_第3页
第3页 / 共9页
控制层Servlet组件技术_第4页
第4页 / 共9页
控制层Servlet组件技术_第5页
第5页 / 共9页
点击查看更多>>
资源描述

《控制层Servlet组件技术》由会员分享,可在线阅读,更多相关《控制层Servlet组件技术(9页珍藏版)》请在金锄头文库上搜索。

1、控制层Servlet组件技术一 Java Servlet及其技术特点l. Java Servlet 及特点(1) Servlet是使用Java Servlet应用程序设计接口(API)及相关类和方 法的Java程序(2) 在服务器端的Servlet容器里(如Tomcat)运行2.Servlet与传统的应用程序的对比(1) Servlet由Web服务器(如Tomcat)进行加载。3.Servlet能够处理Http请求和响应(1) Web客户端程序与Servlet之间通过http通信,处理客户端程序的请 求并返回一系列结果,动态地生成Web页面 4.Servlet的最大的优势在于它的高性能(1)

2、首先Servlet在第一次初始化时装载并驻留在内存中,以后直接从内存 中运行;(2) 其次,在默认情况下Servlet以单实例多线程的方式工作,一个新请求 到达后,Servlet实例开启一个新的线程服务这个请求。5.Servlet的主要作用:实现服务器端的插件6.JSP和Servlet在应用上的区别(1) 主要的差别1) JSP中应该仅仅存放与表示层有关的内容,而所有的数据计算、数据 分析、数据库连接等处理,统统是属于商业业务层,应该放在 JavaBean或者 Servlet 中。2) 注意:Servlet是包含HTML代码的Java程序,而JSP是包含Java 代码的HTML网页。(2) J

3、ava Servlet的主要缺点1)没有把网站的逻辑处理和页面的显示输出分离,为了解决 Servlet 的这种缺点,SUN 推出 了 Java Server Pages JSP。(3) Servlet与JSP相互配合1) Servlet写商业业务层很好,写表示层则不方便。所以Sun推出JSP + JavaBean,用JSP写表示层,用JavaBean写商业业务层。JSP在Servlet的基础 上有所创新,它们可以互相协作,互相补充对方的不足。注意:Servlet是可以包含HTML标签的Java程序,而JSP是可以包含Java代 码的HTML网页。8 .Servlet容器响应Web客户请求流程的

4、UML时序图二Servlet接口和HttpServlet类各自的应用1. 所涉及的包- javax.servlet 和 javax.servlet.http- 其中在javax.servlet包中的接口和类的命名主要以Servlet开头,而在 javax.servlet.http包中的接口和类的命名主要以Http开头2. HttpServlet 类(1) HttpServlet 类:是 GenericServlet 的一个派生类,通过 GenericServlet 实现了 Servlet 接口。HttpServlet 为基于 HTTP协议的 Servlet 提供了基本的支持。(2) HttpS

5、ervlet 类中的 doXXX ()方法:-当请求到来时,service ()方法决定请求的类型(GET或者POST方式)。-把请求分发给相应的处理方法(doGet()或者doPost()。(3) HttpServlet 类的定义public abstractclass HttpServletextendsGenericServletimplements Serializable-实现接口和继承抽象类在编程方式上的不同点-“Adapter模式(适配器模式)”-采用继承抽象类(HttpServlet类)的方法编程的优点3. 编写流程(1) 编写一个类,继承 javax.servlet.http

6、.HttpServlet,重写1) 一个init ()函数2) 一个 doGet/doPost/service()函数3) 一个 destory 函数(2) 在网站的配置文件里面注册这个Servlet(3) 编译这个Servlet(4) 访问这个Servlet 示例:建立第一个Servlet,打印99乘法表FirstServlet.javaS已已t WizardCreate a 口已w S已二-1 已t classSui.irce folder:serv 已 r 5, mix:E-r.Package:com. px1987. server5. servletBrQ Enclosing type

7、:BrNaine:First ServletlModifiers: public default北stT旦ut 口 fin旦 1ll st己ticSuperclass:javax. e已已t. http. HttpServlet| E-rInterfaces:o1 FTeiriplate to use:1 Default teiriplate for ServletOptiuns:0Create InheritHCreate Construed Met kindsctorsHCreate doGetHCreate doPostHCreate init and destroy OCreate d

8、oDeleteOCreate doPutOCreate getServletInfoI | Finisli | CaneXML Wi*dH Generate /It ap web. xml fileServlet/JSP Class Nam已:Servlet/JSP Name:Servlet/JSP Mapping URL:File Path of web. xiril:Display Nani巳:Description:FirstServ1已tcom. pxl987. server5. servlet. FirstServlet/s er-d e t /F irstS ervl e t/s

9、己tv己r 5/W 己bRocit /WEBJ HF| BiThis is the display naui巳 of iriy J2EE comi:This is th已 description of my J2EE coRipcpublic void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, lOException (PrintWriter out=response.getWriter();for(int i=1;i=9;i+)(for(int j=1;j=i

10、;j+)(out.println(j+火+i+=+j*i);out.println();弛址(D)http : /localhost: 3037/serverE/servlet/FirstServlet1*111*22 2*2=41*33 2+3=6 3+3=91*44 2+4=8 3*4二12 4*4二161*55 2+5=10 3+5=15 4+5=20 5+5=251*66 2+6=12 3*6二18 4*6二24 5+6=30 6*6二361*77 2*7=14 3*7二21 4*7=28 5*7二35 6*7=42 7*7二491+88 2+8=16 3+8=24 4+8=32 5+

11、8=40 6+8=48 7+8=56 8+8=641*99 2+9=18 3+9=27 4*9二36 5*9二45 6*9二54 7*9二63 8+9=72 9*9二81三Servlet技术相关的API1. 处理用户的http请求所涉及的接口和类(1)如何获得请求参数-通过使用HttpServletRequest类型的对象中的getParameter方法request, setCharacterEncoding(Agb2312tf);us erN am e=r e que s t. getFarameter(userName). trim 0;userFassword=request. get

12、Farameter(userFassword). trim0;userDepartment = request. getFarameter(userDepartment. trim0;us erA dm inLevel = request. getFarameter (userAdininLevel). trim 0 ;(2 )处理会话础此巳作1=request. getFarameter (departAdjninLevel). trim 0 ;-通过使用getSession ()方法获得HttpSession对象-而在JSP页面中直接通过内置的session对象来代表(3 )获得Cooki

13、e中的数据-通过使用getCookies()方法获得Cookie对象的数组-实现对Cookie进行操作。2. 处理用户的http响应所涉及的接口和类(1)向浏览器输出结果-通过使用getWriter()方法获得PrintWriter对象,-实现以字符格式方式写数据。7 R- 9 0 1 I100 8 9 Qpublic void doPost(HttpServletRequ已mt request HttpS已rvl已tRespons已 response) r已spons已.m已tContentTyp已已xt/html; charset=GBKA);out =new PrintWriter(re

14、sponse. getOutputStream();(2 )设置HTTP响应的MIME类型:利用setContentType方法(3) 处理响应的步骤-设置响应头中的数据类型-从响应中得到输出流-将数据输出到输出流中以向客户端输出(4 )如何向客户机中写Cookie- 通过使用 addCookie(Cookie cookie)方法-实现将数据写入到Cookie中3、在Servlet中实现重定向(1) 重定向技术可以分为两类-客户端重定向-服务器端重定向(请求转发和请求重定向)。(2) 客户端重定向可以通过设置特定的HTTP头,或者写JavaScript脚本实现。alert (数寤库中已有此用户名:/%=uSerName%的思户, nif您重新注册一个新的用户名。*、 window, parent, location. Itt已f=lie已rr已gist已jspA,;(/script)-(3) 服务器端的重定向使用 HttpServletResponse 的 sendRedirect()方法实现重定向(4 ) HttpServletResponse.sendRedirect()方法-这个方法将响应重定向到参数指定的新的URL。- 参数可以是一个绝对的 URL , 如 response.sendRedirect( http:/)也可以使用相对的 URL

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文 > 其它学术论文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号