- 1、本文档共21页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
JSP Chapter 4 Servlet.ppt
成都信息工程学院 网络工程系 Servlet 主讲:索望 suowang@ 成都信息工程学院 网络工程系 Servlet技术 Servlet就是由服务器端调用和执行的Java程序,通常是Java类。 代替了传统的CGI(Common Gateway Interface)。 Servlet的优点: 可移植性 功能强大 性能 安全性 Servlet基本结构 Servlet类的继承关系 Web应用中的Servlet一般继承HttpServlet类。 HttpServlet又扩展了GenericServlet,并且提供了支持HTTP协议 Servelt继承了HttpServlet类,就获得了执行HTTP协议的能力。 GenericServlet类实现了Servlet接口 Java Servlet API Servlet是创建Web应用程序的基本块。Servlet提供了一种通用的程序设计模块。 Servlet API在两个Java扩展包中定义:javax.servlet和javax.servlet.http包。 这两个包中,javax.servlet包中定义的类和接口是独立于协议的;而javax.servlet.http中包含了具体于HTTP协议的类和接口。javax.servlet.http包中的某些类或接口继承了某些javax.servlet包中的类或接口。 GenericServlet类和HttpServlet类 GenericServlet类提供了Servlet接口的基本的实现,GenericServlet类中的service()方法是抽象方法,所有子类都应当实现这个方法。 HttpServlet类扩展了GenericServlet,并且提供了Servlet接口中具体于HTTP的实现。一般用户自定义的Servlet都要扩展该类。 Servlet的生命周期 一个Servlet的生命周期包括:什么时候被加载、实例化,以及它怎样接收请求、响应请求、提供服务,何时被销毁 Servlet的生命周期如图。 Servlet的生命周期 Servlet运行机制和Applet类似,Servlet是javax.servlet包中HttpServlet类的子类,由服务器完成该子类的创建和初始化。 Servlet的生命周期主要由3个过程组成。 init()方法:服务器初始化Servlet。 只在Servlet第一次被请求加载的时候被调用一次,当有客户再请求Servlet服务时,Web服务器将启动一个新的线程,在该线程中,调用service方法相应客户的请求。 service()方法:初始化完毕,Servlet对象调用该方法相应客户的请求。 service方法根据收到的HTTP请求调用不同的doXXX方法 destroy()方法:调用该方法消灭Servlet对象。 Servlet的初始化 init方法被调用于初始化Servlet,其格式为: 在初始化过程中,Servlet应当准备好它要安排的一些资源,以便这个Servlet能够接收请求,做到这些可以不用考虑多线程,因为在Servlet初始化时只能是单进程的。一旦初始化方法完成,Servlet就能接收客户端的请求。 Servlet的执行-service() service方法是用于实现事务逻辑,处理请求的地方。在服务器装载初始化Servlet后,Servlet就能够用service方法来处理客户端的请求。 通常按照HTTP的请求类型定义doXXX()方法。 Servlet能同时运行多个service。这样,service方法需要按一个thread-safe样式编写。如service方法更新Servlet对象中的一个字段field,这个字段是可以同时存取的。 实现SingleThreadModel接口的Servlet,能保证不会有两个以上的线程(threads)并发运行。 Servlet的结束 当服务器卸载一个Servlet,它将调用Servlet的destroy方法。这个destroy方法是与初始化方法相反,同时从内存中释放Servlet。Destroy的格式为: 用户调用destroy实际上不会卸载Servlet,只有Servlet引擎才可以实现此功能。 Servlet基本结构 HTTP协议中的请求类型:GET、POST、HEAD等。我们通常处理的是GET和POST。 当收到GET类型的请求时, HttpServlet中的实现会将请求分派给doGet()方法。因此我们将处理GET请求的代码放在doGet()方法中就可以处理GET请求了。 方法doGet()是Servlet的实现体,该方法是Servlet实际处理HTTP请求的方法。 doGet()方法中有2个参
您可能关注的文档
- 9-5 隐函数的求导公式.ppt
- 走向混沌的道路第三四节new.ppt
- 第四章_图形创意的起点——联想.ppt
- 第1章数据库系统概述new.ppt
- 数的奇偶性.ppt.ppt
- 有机第5章第2节.ppt
- 运筹学1绪论1new.ppt
- 元素周期表51014.ppt
- chap1新new.ppt
- 如何撰写专利68317new.ppt
- 江苏省泰州中学、江都中学、宜兴中学 2024届高一化学第一学期期中统考模.pdf
- 江苏省无锡市惠山区2023-2024学年八年级上学期期中数学试题 .pdf
- 江苏省南通市崇川区2021-2022学年三年级上学期数学期末教研室参考试卷.pdf
- 江苏省南京外国语学校2022年数学七年级第一学期期末经典试题含解析.pdf
- 校园安全三防建设工作实施方案 .pdf
- 格林童话读后感范围(优秀模板9篇) .pdf
- 江西省上饶市铅山县重点中学2023-2024学年高二上学期1月考试历史试题.pdf
- 江苏省扬州中学2022届高三上册开学检测历史试卷在线练习 .pdf
- 江苏省昆山市震川高级中学、常熟市中学2022-2023学年高一3月联考语文试 .pdf
- 江苏省镇江市七年级上学期语文第一次月考试卷 .pdf
文档评论(0)