浅谈JSPserverlet的区别与联系jsp是html包含java
servlet是java包含html
jsp请求到tomcat---tomcat封装了jsp到servlet实现。
所以jsp请求时候,会⾃动创建session
⽽不⽤在servlet中Session(true)
servlet是服务器端的程序,动态⽣成html页⾯发到客户端,但是这样
程序⾥有许多out.println(),java和html语⾔混在⼀起很乱。所以
jsp和html哪个更好
后来推出了jsp。其实jsp就是servlet,每⼀个jsp在第⼀次运⾏时被
转换成servlet⽂件,再编译成.class来运⾏。
有了jsp,因此在MVC模式中servlet不再负责⽣成html页⾯,转⽽担任
控制程序逻辑的作⽤,控制jsp和javabean之间的流转。
-
----------------------------------------------------------------
Servlet与Jsp的区别
* Servlet中没有内置对象,原来Jsp中的内置对象都是必须通过HttpServletRequest对象,或由HttpServletResponse对象⽣成。
* 对于静态的HTML标签,Servlet都必须使⽤页⾯输出流诼⾏输出。
总之,Jsp是Servlet的⼀种简化,使⽤Jsp只需要完成程序员需要输出到客户端的内容,⾄于Jsp中的Java脚本如何镶嵌到⼀个类中,由Jsp容器完成。⽽Servlet则是个完整的Java类,这个类的Service ⽅法⽤于⽣成对客户端的响应。
-Servlet的开发
Servlet通常称为服务器端⼩程序,⽤于处理和响应客户端的请求。
Servlet是个特殊的Java类,这个Java类必须继承HttpServlet。每个Servlet可以响应客户端的请求。Servlet提供了不同的⽅法⽤于响应客户端请求。
* doGet  :  ⽤于响应客户端的get请求
* doPost  :  ⽤于响应客户端的post请求
* doPut  :  ⽤于响应客户端的put请求
* doDelete:  ⽤于响应客户端的delete请求
* service(HttpServletRequest  request,  [可以响应客户端所有类型的请求] HttpServletResponse response)
throws ServletException,java.io.IOException
其他⽅法
* init(Servletconfig config)  : 创建Servlet实例时,调⽤的初始化⽅法。
* destory()  : 销毁Servlet实例时,⾃动调⽤的资源回收⽅法。
-Servlet的配置
编译好的Servlet源⽂件并不能响应⽤户请求,还必须将其编译成class⽂件。将编译后的.class
⽂件放在WEB-INF/classes路径下,如果Servlet有包,则还应该将class⽂件放在对应的包路径下。为了让Servlet能响应⽤户请求,还必须将Servlet配置在Web应⽤中。配置Servlet时,需要修改l⽂件
配置Servlet需要配置两个部分:
* 配置Servlet的名字:对应l中的<servlet/>元素
* 配置Servlet的URL :对应l中的<servlet-mapping/>元素
-Servlet的⽣命周期
Servlet在容器中运⾏,其实例的创建以及销毁等都不是由程序员决定的,⽽是由容器进⾏控制的。Servlet的创建有两个选择:
*客户端请求对应的Servlet时,创建Servlet实例:⼤部分的Servlet都是这种Servlet
*Web应⽤启动时,⽴刻创建Servlet实例:即load-on-startup Servlet
Servlet的⽣命周期:
Begin
---> 创建实例完成
---> 初始化[init]
---> 响应客户端请求[doGet,doPost,service]
---> 被销毁[destroy] --->
End
-使⽤Servlet作为控制器
使⽤Servlet作为表现层的⼯作量太⼤,所有的HTML标签都需要使⽤页⾯输出流⽣成。
因此使⽤Servlet作为表现层有如下三个劣势:
* 开发效率低,所有的HTML标签都需使⽤页⾯输出流完成
* 不利于团队协作,美⼯⼈员⽆法参与Servlet界⾯的开发
* 程序可维护性差,即使修改⼀个按钮的标题,读需要重新编辑Java代码,并重新编译
使⽤Servlet的MVC的架构实现:
Jsp页⾯--> Servlet程序 --> Servlet根据条件转发新的Jsp页⾯
-load-on-startup Servlet
Servlet实例化的时机还有在Web应⽤启动时,即load-on-startup Servlet
应⽤启动时就启动的Servlet,通常是⽤于某些后台服务的Servlet,或者拦截很多请求的Servlet;这种Servlet通常作为基础的Servlet使⽤,提供重要的后台服务。
在<servlet/>元素中增加元素
< load-on-startup>1</load-on-startup>
-访问Servlet的配置参数
配置Servlet时,还可以增加附加的配置参数,通过使⽤配置参数,可以实现更好的解除耦合,
避免将所有的参数以硬编码⽅式写在程序中。
访问Servlet配置参数要通过ServletConfig类的实例完成,ServletConfig提供如下⽅法:
java.lang.String getInitParameter(java.lang.String name) [获取初始化参数]
以上这篇浅谈JSP serverlet的区别与联系就是⼩编分享给⼤家的全部内容了,希望能给⼤家⼀个参考,也希望⼤家多多⽀持。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。