Can you summarize the following document?
        
  JSP从2.0版本开始,增加了表达式语言(EL),以提供更快更简单的创建新标签的方法,并允许开发者创建Velocity式模板。如旧版本代码“codice_1”可简化为“codice_2。

  

  JSP指令控制JSP编译器如何去生成servlet,以下是可用的指令:  注意:在同一个JSP文件中只有“import”导入页面指令可以被多次使用。

  

  以下是永远可用的脚本变量:

  有三个基本的脚本元素,作用是使JAVA代码可以直接插入servlet.

  JSP动作是一系列可以调用内建于网络服务器中的功能的XML标签。JSP提供了以下动作:

  

  在本例中,请求被传递到"subpage.jsp",而且请求的处理权不会再返回前者。

  上述plugin例子说明了一种在网页中嵌入applet的统一方法。在<"OBJECT">标签出现之前,并没有一种嵌入applets的通用方法。这个标签设计得并不好,但有希望在以后加入动态属性(height="${param.height}", code="${chart}"等)和动态参数的新功能。目前jsp:plugin标签不允许动态调用applets。例如,你如果有一个图表applet需要数据点以参数形式被传入,除非数据点的数量是一个常量,否则你就不能使用ResultSet循环来创建jsp:param标签,你不得不手写每个jsp:param标签的代码。而每个上述jsp:param标签可以有一个动态命名和动态值。

  scope属性可以是request, page, session or application,它有以下用意:  上述例子将会用一个创建一个类的实例,并且把该实例存储在属性中,该属性将在该请求的生命周期内有效。它可以在所有被包含或者从主页面(最先接收请求的页面)转向到的JSP页之间共享。

  除了JSP预定义动作之外,开发者还可以使用JSP标签扩展API添加他们自定义的"动作"。开发者写一种实现一个标签的界面和一个标签库的XML描述文件的JAVA类,这就能指定标签和实现标签的JAVA类 请看如下JSP:  JSP编译器将会载入mytaglib.tld这个XML文件,然后可以看到标签"myaction"由JAVA类"MyActionTag"实现。当该标签首次在文件中使用时,将会创建一个MyActionTag的实例。然后(而且当每次该标签被使用时),当出现开始标签时,将会调用doStartTag()方法,根据开始标签的结果,来决定如何处理标签的主体。主体是指开始标签和结束标签之间的文本。这个doStartTag()方法将会返回如下之一:  当结束标签出现时,它会调用doEndTag()方法,该方法会返回如下两做之一:  上述myaction标签tag会有一个类似下面例子的用于实现的类:

  JSP的本地化是通过和JAVA应用程序相同的方式完成的,即使用资源包。

  为了把表现层(presentation)从请求处理(request processing)和数据存储(data storage)中分离开来(这样更利于开发、查错和功能扩展),升阳公司推荐在JSP文件中使用一种称作模型-视图-控制器(MVC)的架构模式。按照此设计,当用户访问网站上的特定网址时,用户的处理请求会先由网站服务器获取到,然后先交由网站的控制器程序作初步处理。用户的访问请求可能多种多样,比如查询信息或进行数据计算都是常见的网站业务。控制器程序会初步判断用户请求的种类,然后把用户请求转发给与特定业务对应的Servlet程序或者另一个独立的JSP文件进行业务处理。当请求处理完后,再通过一个专门负责输出信息的JSP页以清晰、美观的方式向用户的浏览器输出结果。简而言之,先由控制器拦截用户请求并做初步判断,再由业务处理程序访问数据(从数据库中访问)和处理业务,最后由视图组件生成结果页面并发送结果给用户。其中JSP一般用作展示输出结果,可以用于展示经Servlet查询或处理后的结果;也可以用一个JSP文件处理业务逻辑,再用另一个JSP文件展示结果。按功能做这样的文件拆分(而非由一个臃肿的JSP页面包揽所有功能)是为了便于团队分工。MVC本身是一种由来已久的设计思想,基于JSP的技术只是实现MVC架构的流行方案之一。Struts和Spring框架等好几种流行的网站建设框架都是基于MVC模式设计的。

  从架构上说,JSP可以被看作是从Servlets高级提炼而作为JAVA Servlet 2.1 API的扩展而应用。Servlets和JSP最早都是由Sun Microsystems(太阳公司)开发的。从JSP1.2版本以来,JSP处于Java Community Process(有人译为:Java社区组织)开发模式下。JSR-53规定了JSP 1.2和Servlet 2.4的规范,JSR-152规定了JSP 2.0的规范。2006年5月,JSP 2.1的规范作为Java EE 5的一部分,在JSR-245中发布。  静态数据在输入文件中的内容和输出给HTTP响应的内容完全一致。此时,该JSP输入文件会是一个没有内嵌JAVA或动作的HTML页面。而且,客户端每次请求都会得到相同的响应内容。

  不管JSP编译器是生成SERVLET的JAVA源码,或者是直接发布二进制码,了解一下JSP编译器是如何把文件转换成一个JAVA SERVLET,都是很有帮助的。例如,看一下如下输入JSP和它最后生成的JAVA SERVLET:  Input JSP Resulting servlet
JSP(全称JavaServer Pages)是由Sun Microsystems公司主导建立的一种动态网页技术标准。JSP部署于网络服务器上,可以响应客户端发送的请求,并根据请求内容动态地生成HTML、XML或其他格式文档的Web网页,然后返回给请求者。JSP技术以Java语言作为脚本语言,为用户的HTTP请求提供服务,并能与服务器上的其它Java程序共同处理复杂的业务需求。