问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

Servlet与JSP有什么区别?

发布网友 发布时间:2022-04-30 10:41

我来回答

4个回答

热心网友 时间:2022-04-11 07:55

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时,需要修改 web.xml文件。 配置Servlet需要配置两个部分:  * 配置Servlet的名字:对应web.xml中的<servlet/>元素 * 配置Servlet的URL :对应web.xml中的<servlet-mapping/>元素-Servlet的生命周期 Servlet在容器中运行,其实例的创建以及销毁等都不是由程序员决定的,而是由容器进行控制的。 Servlet的创建有两个选择: *客户端请求对应的Servlet时,创建Servlet实例:大部分的Servlet都是这种Servlet *Web应用启动时,立刻创建Servlet实例:即load-on-startup ServletServlet的生命周期: 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使用,提供重要的后台服务。web.xml中的配置: 在<servlet/>元素中增加元素 <load-on-startup>1</load-on-startup>-访问Servlet的配置参数 配置Servlet时,还可以增加附加的配置参数,通过使用配置参数,可以实现更好的解除耦合, 避免将所有的参数以硬编码方式写在程序中。 访问Servlet配置参数要通过ServletConfig类的实例完成,ServletConfig提供如下方法: java.lang.String getInitParameter(java.lang.String name) [获取初始化参数]]

热心网友 时间:2022-04-11 09:13

3.在实际应用中采用Servlet来控制业务流程,而采用JSP来生成动态网页.在struts框架中,JSP位于MVC设计模式的视图层,而Servlet位于控制层。

热心网友 时间:2022-04-11 10:47

简单的说,SUN首先发展出SERVLET,其功能比较强劲,体系设计也很先进,只是,它输出HTML语句还是采用了老的CGI方式,是一句一句输出,所以,编写和修改HTML非常不方便。  后来SUN推出了类似于ASP的镶嵌型的JSP,把JSP TAG镶嵌到HTML语句中,这样,就大大简化和方便了网页的设计和修改。新型的网络语言如ASP,PHP,JSP都是镶嵌型的SCRIPT语言。  从网络三层结构的角度看,一个网络项目最少分三层:data layer,business layer, presentation layer。当然也可以更复杂。SERVLET用来写business layer是很强大的,但是对于写presentation layer就很不方便。JSP则主要是为了方便写presentation layer而设计的。当然也可以写business layer。写惯了ASP,PHP,CGI的朋友,经常会不自觉的把presentation layer和business layer混在一起。就象前面那个朋友,把数据库处理信息放到JSP中,其实,它应该放在business layer中。  根据SUN自己的推荐,JSP中应该仅仅存放与presentation layer有关的东东,也就是说,只放输出HTML网页的部份。而所有的数据计算,数据分析,数据库联结处理,统统是属于business layer,应该放在JAVA BEANS中。通过JSP调用JAVA BEANS,实现两层的整合。  实际上,微软前不久推出的DNA技术,简单说,就是ASP+COM/DCOM技术。与JSP+BEANS完全类似,所有的presentation layer由ASP完成,所有的business layer由COM/DCOM完成。通过调用,实现整合。 为什么要采用这些组件技术呢?因为单纯的ASP/JSP语言是非常低效率执行的,如果出现大量用户点击,纯SCRIPT语言很快就到达了他的功能上限,而组件技术就能大幅度提高功能上限,加快执行速度。  另外一方面,纯SCRIPT语言将presentation layer和business layer混在一起,造成修改不方便,并且代码不能重复利用。如果想修改一个地方,经常会牵涉到十几页CODE,采用组件技术就只改组件就可以了。 综上所述,SERVLET是一个早期的不完善的产品,写business layer很好,写presentation layer就很臭,并且两层混杂。  所以,推出JSP+BAEN,用JSP写presentation layer,用BAEN写business layer。SUN自己的意思也是将来用JSP替代SERVLET。  可是,这不是说,学了SERVLET没用,实际上,你还是应该从SERVLET入门,再上JSP,再上JSP+BEAN。  强调的是:学了JSP,不会用JAVA BEAN并进行整合,等于没学。大家多花点力气在JSP+BEAN上。 在补充几句:  我们可以看到,当ASP+COM和JSP+BEAN都采用组件技术后,所有的组件都是先进行编译,并驻留内存,然后快速执行。所以,大家经常吹的SERVLET/JSP先编译驻内存后执行的速度优势就没有了。 反之,ASP+COM+IIS+NT紧密整合,应该会有较大的速度优势呈现。而且,ASP+COM+IIS+NT开发效率非常高,虽然BUG很多。  那么,为什么还用JSP+BEAN?因为JAVA实在前途远大。微软分拆后,操作系统将群雄并起,应用软件的开发商必定要找一个通用开发语言进行开发,JAVA一统天下的时机就到了。如果微软分拆顺利,从中分出的应用软件公司将成为JAVA的新领导者。目前的JAVA大头SUN和IBM都死气沉沉,令人失望。希望新公司能注入新活力。不过,新公司很有可能和旧SUN展开JAVA标准大战,双方各自制定标准,影响JAVA夸平台。  另外,现在的机器速度越来越快,JAVA的速度劣势很快就可以被克服。]

热心网友 时间:2022-04-11 12:39

1.init 当你需要初始化一些东西的时候可选择重写2.destroy 当请求结束,本servlet需要被销毁的时候可选择重写,比如你要释放一些资源等等.web.xml如果你是servlet工程,只需要写servlet的一个配置就行了,当然你也可以写下一些出错页面的配置,比如404,500等.但是在引用的其他第三方框架如struts和spring等情况下,一般情况下需要写一个servlet,将请求指向到第三方框架的总处理器.依你现在问问题的水平,建议还是抓java基础为重点.]
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
苹果手机微信怎么换漂亮字体(苹果手机微信怎么换行输入) 有什么好用的app转换字体 手写转文字的软件 erp可以看评论地址吗 淘宝评论url是什么意思? 揭秘:码牌支付风控升级,背后真相揭秘 电脑电视直播软件哪个好用什么软件好电脑看电视直播 潼南子同街学区是哪些 三极管BU406价格和参数? 火锅料放在冰柜忘了插电一个星期给会坏了吗 火锅的设备有哪些 西游记精选本啥意思? 为什么说jsp就是servlet jsp和servlet的区别 java中JSP和Servlet的区别? 请问什么叫做精选个股? JSP和Servlet是用来做什么的? 在jsp页面怎么访问servlet中的方法 金矿选矿中精选,粗选是什么意思 JSP传递值给servlet的方式 什么是servlet?什么是jsp 优质精选是什么意思 jsp怎么调用servlet 最右 作品被选为精选是什么意思 最右里面发的跟拍老是被选为精选,是什么意思啊? 通过JSP 页面调用servlet方法? 优选,精选和臻选有什么不同? JSP和servlet的关系是什么? 女孩节精选什么意思 jsp与servlet的区别? 红酒精选和优选有什么区别 精选和严选有什么区别? JSP和Servlet有哪些相同点和不同点,他们之间的联系是什么? servlet和jsp之间的关系 什么样的男人会有大财富 描述JSP和Servlet的区别、共同点、各自应用的范围 保险公司年会贺词大全 保险公司中秋节贺词 星相学中六府是什么? 带田字的店名 帮忙想一个公司名字 带田字旁的一个字加一个阳 或者清 的外贸公司名字 公司经营运动器材 新华保险工作室开业贺词 汽车配件 产品起名字 花店名字带田字? 求文档: 请问在田字前面加个带三点水的什么字做防盗门公司的名字好点,谢谢 艾灸仪加热对人体有害吗?会不会有辐射? 网络公司起名 田字开头两个字的名字 艾灸时间长有什么副作用 艾灸仪器用完快速关电源有什么害处 本人备孕状态,用艾灸仪器熏肚子会不会杀卵 用海天味业的海鲜酱做香辣蟹,什么时候放海鲜酱呢?