现在的位置: 首页 > 综合 > 正文

学习servlet(声明:大部分资料来源于互联网)

2013年08月01日 ⁄ 综合 ⁄ 共 1239字 ⁄ 字号 评论关闭

最近要做一个servlet改修的项目,正好借此机会复习下servlet,好多年不用了,看看能想起来多少.
结论:※※※※JSP就是Servlet※※※※

 

servlet的命名  Server + Applet =Servlet 意为服务器端的小程序

JSP就是Java Server Page,Java服务器页面的意思

 

其实java虚拟机是不认识jsp这种东西的, jsp在被使用的时候会被容器转换成servlet,然后被调用.

你去的你tomcat目录下的work\Catalina\localhost\下这个文件夹里能找到和你项目同名的文件,这里有你jsp转成的servlet的.java和class文件

Servlet是服务器端小程序,其产生早于JSP,后来发现直接在Servlet里输出用户web界面很困难,就诞生了JSP,其专门用于辅助servlet进行web页面的展示,即作为web开发的表现层。JSP其实在服务器端还是首先被编译为servlet(一般在客户第一次访问的时候),所以其实质还是一种特殊的servlet,只不过一般专用于页面的展现.

 

我的理解是,JSP更像一个模板,很多东西是固定的,程序员只需要关注其中的java代码的实现就可以了.

而servlet没有模板,它的输出完全是依赖java代码来完成,就连页面中的"<tr>""<td>"这种标签都要程序手动写到java代码里.

 

Servlet生命周期

  装载Servlet。这项操作一般是动态执行的。然而,Server通常会提供一个管理的选项,用于在Server启动时强制装载和初始化特定的Servlet。

  Server创建一个Servlet的实例

  Server调用Servlet的init()方法

  一个客户端的请求到达Server

  Server创建一个请求对象

  Server创建一个响应对象

  Server激活Servlet的service()方法,传递请求和响应对象作为参数

  service()方法获得关于请求对象的信息,处理请求,访问其他资源,获得需要的信息

  service()方法使用响应对象的方法,将响应传回Server,最终到达客户端。service()方法可能激活其它方法以处理请求,如doGet()或doPost()或程序员自己开发的新的方法。

  对于更多的客户端请求,Server创建新的请求和响应对象,仍然激活此Servlet的service()方法,将这两个对象作为参数传递给它。如此重复以上的循环,但无需再次调用init()方法。一般Servlet只初始化一次(只有一个对象),当Server不再需要Servlet时(一般当Server关闭时),Server调用Servlet的Destroy()方法。

 

servlet的工作模式  

        客户端发送请求至服务器

  服务器启动并调用Servlet,Servlet根据客户端请求生成响应内容并将其传给服务器

  服务器将响应返回客户端

 

抱歉!评论已关闭.