十一、JSP及语法概要

儒雅的小REN物

儒雅的小REN物

2016-01-29 12:19

十一、JSP及语法概要,十一、JSP及语法概要
  11.1 概述

   JavaServer Pages(JSP)使得我们能够分离页面的静态HTML和动态部分。HTML可以用任何通常使用的Web制作工具编写,编写方式也和原来的一样;动态部分的代码放入特殊标记之内,大部分以“<%”开始,以“%>”结束。例如,下面是一个JSP页面的片断,如果我们用http://host/OrderConfirmation.jsp?title=Core+Web+Programming这个URL打开该页面,则结果显示“Thanks for ordering Core Web Programming”。
Thanks for ordering
<I><%= request.getParameter("title") %></I>



   JSP页面文件通常以.jsp为扩展名,而且可以安装到任何能够存放普通Web页面的地方。虽然从代码编写来看,JSP页面更象普通Web页面而不象Servlet,但实际上,JSP最终会被转换成正规的Servlet,静态HTML直接输出到和Servlet service方法关联的输出流。

   JSP到Servlet的转换过程一般在出现第一次页面请求时进行。因此,如果你希望第一个用户不会由于JSP页面转换成Servlet而等待太长的时间,希望确保Servlet已经正确地编译并装载,你可以在安装JSP页面之后自己请求一下这个页面。

   另外也请注意,许多Web服务器允许定义别名,所以一个看起来指向HTML文件的URL实际上可能指向Servlet或JSP页面。

   除了普通HTML代码之外,嵌入JSP页面的其他成分主要有如下三种:脚本元素(Scripting Element),指令(Directive),动作(Action)。脚本元素用来嵌入Java代码,这些Java代码将成为转换得到的Servlet的一部分;JSP指令用来从整体上控制Servlet的结构;动作用来引入现有的组件或者控制JSP引擎的行为。为了简化脚本元素,JSP定义了一组可以直接使用的变量(预定义变量),比如前面代码片断中的request就是其中一例。

   注意本文以JSP 1.0规范为基础。和0.92版相比,新版本的JSP作了许多重大的改动。虽然这些改动只会使JSP变得更好,但应注意1.0的JSP页面几乎和早期的JSP引擎完全不兼容。

   11.2 JSP语法概要表 JSP元素  语法  说明  备注  
JSP表达式  <%= expression %>  计算表达式并输出结果。  等价的XML表达是:
<jsp:expression>
expression
</jsp:expression>

可以使用的预定义变量包括:request,response,out,session,application,config,pageContext。这些预定义变量也可以在JSP Scriptlet中使用。

JSP Scriptlet  <% code %>  插入到service方法的代码。  等价的XML表达是:
<jsp:scriptlet>
code
</jsp:scriptlet>

JSP声明  <%! code %>  代码被插入到Servlet类(在service方法之外)。  等价的XML表达是:
<jsp:declaration>
code
</jsp:declaration>

page指令  <%@ page att="val" %>  作用于Servlet引擎的全局性指令。  等价的XML表达是
<jsp:directive.page att="val"\>。

合法的属性如下表,其中粗体表示默认值:

import="package.class"
contentType="MIME-Type"
isThreadSafe="true|false"
session="true|false"
buffer="size kb|none"
autoflush="true|false"
extends="package.class"
info="message"
errorPage="url"
isErrorPage="true|false"
language="java"

include指令  <%@ include file="url" %>  当JSP转换成Servlet时,应当包含本地系统上的指定文件。  等价的XML表达是:

<jsp:directive.include
file="url"\>.

其中URL必须是相对URL。

利用jsp:include动作可以在请求的时候(而不是JSP转换成Servlet时)引入文件。

JSP注释  <%-- comment --%>  注释;JSP转换成Servlet时被忽略。  如果要把注释嵌入结果HTML文档,使用普通的HTML注释标记<-- comment -->。  
jsp:include动作  <jsp:include
page="relative URL"
flush="true"/>  当Servlet被请求时,引入指定的文件。  如果你希望在页面转换的时候包含某个文件,使用JSP include指令。
注意:在某些服务器上,被包含文件必须是HTML文件或JSP文件,具体由服务器决定(通常根据文件扩展名判断)。

jsp:useBean动作  <jsp:useBean att=val*/> 或者
<jsp:useBean att=val*>
...
</jsp:useBean>  寻找或实例化一个Java Bean。  可能的属性包括:
id=&qu
展开更多 50%)
分享

猜你喜欢

十一、JSP及语法概要

Java JAVA基础
十一、JSP及语法概要

JSP及语法概要

Java JAVA基础
JSP及语法概要

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

JSP语法(10)

Java JAVA基础
JSP语法(10)

JSP语法(4)

Java JAVA基础
JSP语法(4)

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

JSP语法(9)

Java JAVA基础
JSP语法(9)

JSP语法(11)

Java JAVA基础
JSP语法(11)

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

Flash实例教程:AS3.0实现逼真喷泉效果

Flash实例教程:AS3.0实现逼真喷泉效果

关于对象生命历程的会话

关于对象生命历程的会话
下拉加载更多内容 ↓