您的位置:首页 > 其它

Servlet概念(学习)+推荐实践博客

2017-12-16 15:08 253 查看
参考:《Head First Servlet JSP》

Web动态实现:浏览器发出请求,服务器做出相应。

一:概念(理解Servlet):

HTML:超文本标记语言,可以告诉浏览器如何显示其中的内容。

HTTP:超文本传输协议,作为一个网络协议,依赖于TCP/IP从一处向另一处完整地传送请求和响应。

Web服务器应用:Web服务器应用只能提供静态页面。所谓的“动态”,是通过辅助应用计算生成静态页面传回Web服务器应用。而Servlet和CGI在服务器中都扮演着辅助应用的角色。

Servlet(Web服务器辅助应用):是Java Servlet的简称,泛指任何实现了这个Servlet接口的类。主要功能在于交互式地浏览和修改数据,生成动态Web内容。

Web容器:Web服务器应用得到一个指向servlet的请求,交给部署该servlet的容器,由容器提供servlet请求和响应,并调用servlet的方法。(Tomacat就是一个Web容器)

【容器管理作用:

1.通信支持:我们可以不用考虑服务器和自己代码的编程接口。

2.生命周期管理:我们可以不用考虑资源的管理(加载,实例化等)。

3.支持多线程:字面意思。

4.声明方式实现安全:利用容器,我们才能用XML部署文件。

5.支持JSP:负责JSP代码翻译



【容器处理请求过程:

1.用户点击一个链接,指向一个servlet

2.容器分析出这个请求是一个servlet,创建两个对象HttpServletResponse,HttpServletRequest。

3.容器根据请求中的URL找到对应的servlet,创建或分配一个线程,并把上面两个对象创给这个servlet线程

4.容器调用servlet的service()。根据请求类型,service()会调用doGet()或dpPost()

5.doGet()或doPost()生产动态页面,并加入响应对象中。

6.线程结束,容器把响应对象转化成一个HTTP响应发回给客户,然后删除请求和响应对象。



二:Servlet的运行过程

Servlet程序是由WEB服务器调用,web服务器收到客户端的Servlet访问请求后:

  ①Web服务器首先检查是否已经装载并创建了该Servlet的实例对象。如果是,则直接执行第④步,否则,执行第②步。

  ②装载并创建该Servlet的一个实例对象。

  ③调用Servlet实例对象的init()方法。

  ④创建一个用于封装HTTP请求消息的HttpServletRequest对象和一个代表HTTP响应消息的HttpServletResponse对象,然后调用Servlet的service()方法并将请求和响应对象作为参数传递进去。

  ⑤WEB应用程序被停止或重新启动之前,Servlet引擎将卸载Servlet,并在卸载之前调用Servlet的destroy()方法。

三:servlet接口实现,和web.xml的编写等

用户若想用发一个动态web资源(即开发一个Java程序向浏览器输出数据),需要完成以下2个步骤:

1、编写一个Java类,实现servlet接口(Servlet)。

2、把开发好的Java类部署到web服务器中(我们对web.xml的编写,作为部署文件)。

推荐实践学习转向:https://www.cnblogs.com/xdp-gacl/p/3760336.html#!comments
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: