jsp和serverlet的差别
開始找工作面试的第一家公司,爱思创新 面试题:
1、jsp和serverlet的差别
简单来说:
jsp:是包括java程序片的html文件
servlet:是包括html的java文件
事实上说白了JSP和SERVLET究竟什么差别呢,JSP就象宾馆前台的服务员,要长的不错,让顾客一看就认为比較舒服,他主要就是负责显示这个宾馆的形象的.而SERVLET就象部门经理,要处理各种各样的业务和事情,而bean呢就象是高层领导了,他负责从部门经理处获得信息,报告给董事会,或者把董事会的建议和计划吩咐下去.他们分工合作,各干其职.
详细的看下以下吧.
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+BEAN?由于JAVA实在前途远大。微软分拆后,操作系统将群雄并起,应用软件的开发商必然要找一个通用开发语言进行开发,JAVA一统天下的时机就到了。假设微软分拆顺利,从中分出的应用软件公司将成为JAVA的新领导者。眼下的JAVA大头SUN和IBM都死气沉沉,令人失望。希望新公司能注入新活力。只是,新公司非常有可能和旧SUN展开JAVA标准大战,两方各自制定标准,影响JAVA夸平台。
另外,如今的机器速度越来越快,JAVA的速度劣势非常快就能够被克服。
jsp和serverlet的差别的更多相关文章
- JSP与HTML的差别
HTML(Hypertext Markup Language)文本标记语言,它是静态页面,和JavaScript一样解释性语言,为什么说是解释性 语言呢?由于.仅仅要你有一个浏览器那么它就能够正常显示 ...
- JSP/Servlet-----charset 、pageEncoding差别
一.JSP/Servlet中的几个编码的作用 在JSP/Servlet中有4个地方可设置编码(例如以下).当中前两个仅仅能用于JSP中,后两个可用于JSP和Servlet 中. ...
- java中的system.out.println()和JSP中out.println()差别
out.println()输出到client. 在out.println()中,out是response的实例.是以response为对象进行流输出的,即将内容输出到client.假设在JSP ...
- J2EE 13规范(4)-JSP
JSP全称(Java Server Page ),也称javaserver页面.看到jsp是否立马想到原先以前学过的asp呢. 一.jsp和asp的比較: JSP(Java Server Page)与 ...
- JSP 知识基本
from:http://blog.csdn.net/caipeichao2/article/details/38589293 more:http://www.2cto.com/kf/web/jsp/4 ...
- EL和JSTL专题
EL简介 EL全名为Expression Language,它原本是JSTL 1.0为方便存取数据所自定义的语言.当时只能在JSTL标签中使用,如下: <c:out value="${ ...
- 两种include方式及filter中的dispatcher解析
两种include方式 我自己写了一个original.jsp,另外有一个includedPage.jsp,我想在original.jsp中把includedPage.jsp引进来有两种方式: 1.& ...
- 尚学堂Java面试题整理
博客分类: 经典分享 1. super()与this()的差别? - 6 - 2. 作用域public,protected,private,以及不写时的差别? - 6 - 3. 编程输出例如以 ...
- jstl--->Core 核心标签库->URL操作
jstl--->Core 核心标签库->URL操作 -->import.param.URL.redirect <c:import>将静态或动态文件包含至本身jsp页面 而 ...
随机推荐
- line
小君童靴说头儿给了他一个project,实现给出屏幕上任意两个点,求出这两个点之间直线上的所有的点.觉得这个很好玩,就自己也写了一点code /* date : 2014/10/21 version ...
- 显示器中关于HS,VS,HBP,VBP参数浅析
先来解释几个缩写的含义 HSYNC : 水平同步信号(horizontal synchronization signal) VSYNC : 垂直同步(Vertical Sync):场同步 FR : ...
- docker学习笔记:容器的网络设置
创建一个docker容器,docker系统会自动为该容器分配一个ip地址,通常是172.17开头. 我们可以在主机上用 docker inspect 命令 或者进入容器用ifconfig命令来查看容器 ...
- mojo 接口返回键值对的json格式
my $c = shift; use DBI; my %hash=(); my $dbUser='zabbix'; my $user="root"; my $passwd=&quo ...
- Regionals 2012, Asia - Jakarta 解题报告
啥都不会做了.. 做题慢死 A.Grandpa's Walk 签到题. 直接DFS就行. 注意先判断这个点可以作为一个路径的起点不. 然后再DFS. 否则处理起来略麻烦 #include <io ...
- [置顶] 浏览器模式和标准对于javascript的影响
今天在编写代码的时候遇到了一个莫名其妙的问题,请看下面 <html> <head> <title> Test </title> <!--<m ...
- Shell脚本编程具体解释
第12章 Shell脚本编程 l Shell命令行的执行 l 编写.改动权限和运行Shell程序的步骤 l 在Shell程序中使用參数和变量 l 表达式比較.循环结构语句和条件结构语句 l ...
- [转]使用xftp连接centos6.5
首先要在windows上安装xftp软件,这个是傻瓜式操作就不说了 安装完成之后,在centos上查看是否装了xftpd服务,[root@centos Desktop]# rpm -qa | grep ...
- Solr基础理论与维护管理快速上手(含查询参数说明)
1. solr基础 因为 Solr 包装并扩展了 Lucene,所以它们使用很多相同的术语.更重要的是,Solr 创建的索引与 Lucene 搜索引擎库完全兼容.通过对 Solr 进行适当的配置,某些 ...
- uoj Goodbye Jiawu
这次比赛真是太伤我心了. 比(惨)赛(不)结(忍)果(睹) 完挂感言 uoj round 5已经挂了一次了,没想到还要再挂第二次. 这次比赛的期望得分是\(100+100+100+70+10\)的.没 ...