JSP与Servlets的区别

原创 2004年10月30日 23:15:00
JSP和SERVLET到底在应用上有什么区别,很多人搞不清楚。我来胡扯几句吧。简单的说,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与servlets区别

jsp和servlet到底在应用上有什么区别,很多人搞不清楚。我来胡扯几句吧。简单的说,sun首先发展出servlet,其功能比较强劲,体系...
  • Labber
  • Labber
  • 2008年03月14日 02:39
  • 176

Head First Servlets & JSP 学习心得(一)

HTTP,TCP,IP协议 TCP:负责确保从一个网络节点向另一个网路节点发送的文件能作为一个完整的文件到达目的地,尽管在传送的过程中这个文件可能会分解为小块传输。 IP:是一个底层协议,负责把数据块...
  • zhaiax672
  • zhaiax672
  • 2016年10月02日 15:02
  • 395

JSP与Servlets的区别

google_ad_client = "pub-8800625213955058";/* 336x280, 创建于 07-11-21 */google_ad_slot = "0989131976";...
  • java169
  • java169
  • 2008年05月23日 16:41
  • 144

向新手推荐《Head First Servlets & JSP》J2EE入门

http://blog.csdn.net/abbuggy/article/details/6776269 换了工作,转战J2EE开发。好像同事们都很惊讶于我干了5年的JAVA开发竟然一丁点没碰过...
  • ABBuggy
  • ABBuggy
  • 2011年09月14日 23:09
  • 7449

学习JSP和Servlet(一)

【前言】实习刚回来,赶紧补充一些java的知识,做了一个月的.NET,走之前一直在做JavaEE,所以最开始学习的SSH都忘记的差不多了,所以觉得从JSP和Servlet入手,重新开始Java的世界我...
  • cd18333612683
  • cd18333612683
  • 2017年08月09日 21:33
  • 160

Jsp/Servlet整合Spring原理及源码分析

表现层和业务层整合: 1. Jsp/Servlet整合spring; 2. Spring MVC整合SPring; 3. Struts2整合Spring; 本文主要介绍Jsp/...
  • ljl18566743868
  • ljl18566743868
  • 2016年10月13日 14:27
  • 588

基于Servlet&Jsp的网上书店设计(三)

六,本设计Servlet&Jsp代码实现过程 用一句话概括,用户在客户端请求jsp页面,jsp页面将结果提交到Servlet,由Servlet负责处理结果,访问数据库等操作,并将参数结果放在requ...
  • tuke_tuke
  • tuke_tuke
  • 2016年02月23日 20:11
  • 2791

JSP与HTML的区别

HTML(Hypertext Markup Language)文本标记语言,它是静态页面,和JavaScript一样解释性语言,为什么说是解释性 语言呢?因为,只要你有一个浏览器那么它就可以正常显...
  • lwj734114646
  • lwj734114646
  • 2015年07月15日 20:59
  • 21791

Head First Servlets&Jsp 读书摘记5——【作为JSP】

少很实际用到但却还算重要的一章开始咯,第七章——【作为JSP】开始咯…… JSP变成Servlet。这个Servlet 不用你来创建,容器会查看你的Jsp,把它转换成Java源代码,再编译成完整的J...
  • tool163
  • tool163
  • 2010年06月26日 02:08
  • 1588

Servlets 与JSP,最佳实践

Servlets 与JSP,最佳实践作者:Qusay H.Mahmoud2003年3月 Java Servlet技术与JSP技术使Java服务器端技术,目前他们控制了整个服务器端Java技术市场,并且...
  • mechiland
  • mechiland
  • 2003年04月04日 09:09
  • 1846
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:JSP与Servlets的区别
举报原因:
原因补充:

(最多只允许输入30个字)