Chinaunix首页 | 论坛 | 博客
  • 博客访问: 25021
  • 博文数量: 25
  • 博客积分: 1010
  • 博客等级: 少尉
  • 技术积分: 270
  • 用 户 组: 普通用户
  • 注册时间: 2009-07-22 20:04
文章分类

全部博文(25)

文章存档

2011年(1)

2009年(24)

我的朋友
最近访客

分类: Java

2009-08-14 17:15:25

第二章 JSP2.0简介
本章开始进入我们的主题——JavaServer Pages(JSP)。主要目的是建立对JSP机技术的初步认识。
第一节JavaServer Pages(JSP)技术
JSP技术是一个纯Java平台的技术,它主要用来产生动态网页内容,包括:HTMLDHTMLXHTMlXMLJSP技术能够让网页人员轻易建立起功能强大、有弹性的动态内容。
JSP技术有下列优点:
l        Write OnceRun Anywhere特性
作为Java平台的一部分,JSP技术拥有Java语言“一次编写,各处执行”的特点。这使得在更换服务器平台的情况下,JSP并不需要改变。这不但减轻了开发人员的工作还可以节省公司的成本。
l        搭配可重复使用的组件
JSP技术可依赖于重复使用跨平台的组件(如:JavaBeanEnterprise JavaBean组件)来执行更复杂的运算、数据处理。开发人员能够共享开发完成的组件,或者能够加强这些组件的功能,让更多用户或是客户团体使用。基于善加组件的方法,可以加快整体开发过程,也大大降低公司的开发成本和人力。
l        采用标签化页面开发
JSP技术能够将许多功能封装起来,成为一个自定义的标签,这些功能是完全根据XML的标准来制订的,即JSP技术中的标签库。
l        企业应用架构的支持
网际网络发展的速度很快,服务要求也越来越复杂,而且不受地域限制。因此必须放弃以往的JSP+JavaBean的两层架构,进而转向更具威力、弹性的分散性的架构基于MVC的三层架构。由于JSP技术是JavaEE集成中的一部分,它主要是负责前端显示经过复杂运算后之结果内容。业务逻辑处理并不依赖于JSP。主要有JavaBeanEnterprise JavaBean(EJB)JNDI构建而成。
第二节 什么是JSP
JSP是由Sun公司倡导、许多别的公司参与一起建立的一种新动态网页技术标准,类似其他技术标准,如ASPPHP等。
在传统的网页HTML文件中加入Java程序段(Scriptle)JSP标签,构成了JSP网页(*.jsp)Servlet/JSP 容器收到客户端发出的请求时,首先执行其中的程序片段,然后将执行结果以HTML格式响应给客户端。其中程序片段可以是:所有程序操作都在服务器端执行,网络上传给客户端的仅是得到的结果,与客户端的浏览器无关,因此,JSP是属于服务端的代码。
第三节 JSPServlet的比较
Sun公司首先发展出Servlet,其功能非常强大,且体系设计也很完善,但是它输出HTML语法时,必须使用out.println()一句一句地输出,例如下面的程序段:
上例是一段简单的Hello World程序,看不出其复杂性,但当网页内容非常复杂时,那么你的Servlet程序可能大部分都是用out.println()输出HTML的标签。
后来Sun公司推出类似于ASP的嵌入型Scripting Language,并且给它一个新的名称:JSP。于是上面的程序改为:
     这样就简化的编写页面的难度。
第四节JSPServlet在应用上的区别
1.      主要差别
     JSP中应该仅仅存放与表示层有关的内容,也就是说,只放输出HTML网页的部分;而所有的数据计算、分析、数据库连接等处理,统统是属于业务层,应该放在JavaBean或者Servlet中。
     注意:Servlet是包含HTML代码的Java程序,而JSP是包含Java代码的HTML网页。
2.      ServletJSP相互配合
Servlet写业务层很好,写表示层则不方便。所以用JSP写表示层,JavaBean
写业务层,Servlet用来协调控制JSPJavaBean之间的调用。
第五节JSP的执行过程
     在介绍JSP语法之前,先说明一下JSP的执行过程(见图2-1)
(1)   客户端发出Request(请求)
(2)   JSP容器将JSP转译成Servlet源代码:
(3)   将产生的Servlet源代码经过编译后,加载到内存执行;
(4)   把结果Response(响应)至客户端。

 
浏览器
  IE
Netscape
JSP Page
产生Servlet
经编译Servlet

                     2-1 JSP执行过程
一般人会认为JSP的执行性能会和Servlet相差不多,其实执行性能上的差
差别只是在第一次的执行。因为JSP在执行第一次后,会被编译成Servlet的类文件,即为XXX.class,当再重复调用执行时,就直接执行第一次所产生的Servlet,而不用再重新把JSP编译成Servlet。因此,除了第一次的编译会花较久的时间之外,之后JSPServlet的执行速度就几乎相同了。
第六节 web.xml新增元素
元素主要用来设定JSP相关配置,包括两个子元素。其中元素在JSP1.2时就已经存在;而JSP2.0新增的元素。
 
元素主要有八个子元素,它们分别为:
:设定的说明;
:设定的名字;
:设定值所影响的范围,如/com/*.jsp
:若为true,表示不支持EL语法;
:若为true,表示不支持<%scripting%>语法;
:设定JSP网页的编码;
:设置JSP网页的抬头,扩展名为.jspf
:设置JSP网页的结尾,扩展名为.jspf
     2-2所示的所谓JSP网页的抬头为网页最上方的This banner included with ;结尾为网页最下方的This banner included with
2-2 TomcCat上的范例程序
其中抬头的源代码为:
n        preIude.jspf
结尾的源代码为:
n        coda.jspf
下面是一个简单的元素完整配置:
阅读(335) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~