一个JSP页面可以被分为以下几部份: 静态数据,如HTML、css、js, JSP指令,如include指令 JSP脚本元素和变量、 JSP动作 、用户自定义标签、 静态数据等
静态数据在输入文件中的内容和输出给HTTP响应的内容完全一致。此时,该JSP输入文件会是一个没有内嵌JAVA或动作的HTML页面。而且,客户端每次请求都会得到相同的响应内容。
JSP指令
JSP指令控制JSP编译器如何去生成servlet,以下是可用的指令: 包含指令include –包含指令通知JSP编译器把另外一个文件完全包含入当前文件中。效果就好像被包含文件的内容直接被粘贴到当前文件中一样。这个功能和C预处理器所提供的很类似。被包含文件的扩展名一般都是jspf(即JSPFragment,JSP碎片): <%@ include file=somefile.jsp %>
页面指令page –页面指令有以下几个选项:
import 使一个JAVA导入声明被插入到最终页面文件。
contentType 规定了生成内容的类型。
当生成非HTML内容或者当前字符集character set并非默认字符集时使用。 errorPage 处理HTTP请求时,如果出现异常则显示该错误提示信息页面。
isErrorPage 如果设置为TRUE,则表示当前文件是一个错误提示页面。
isThreadSafe 表示最终生成的servlet是否安全线程(threadsafe)。
注意:在同一个JSP文件中只有import导入页面指令可以被多次使用。 标签库指令taglib –标签库指令描述了要使用的JSP标签库。该指令需要指定一个前缀prefix(和C++的命名空间很类似)和标签库的描述URI: <%@ taglib prefix=myprefix uri=taglib/mytag.tld %>
JSP脚本
标准脚本变量
以下是永远可用的脚本变量:
out – JSPWriter用来写入响应流的数据
page – servlet自身
pageContext –一个PageContext实例包括和整个页面相联系的数据,一个给定的HTML页面可以在多个JSP之间传递。
request –HTTP request对象
response –HTTP response对象
session –用于保持客户端与服务器连接的对象 脚本元素
有三个基本的脚本元素,作用是使JAVA代码可以直接插入servlet. 一种是声明标签,在JAVA SERVLET的类体中放入一个变量的定义。
静态的数据成员也可以如此定义。 <%! int serverInstanceVariable = 1; %> 一种是脚本标签,在JAVA SERVLET的类的_jspService()方法中放入所包含的语句。
<% int localStackBasedVariable = 1; out.println(localStackBasedVariable); %> 一种是表达式标签,在JAVA SERVLET的类中放入待赋值的表达式,表达式注意不能以分号结尾。 <%= expanded inline data + 1 %>
JSP动作
JSP动作是一系列可以调用内建于网络服务器中的功能的XML标签。JSP提供了以下动作: jsp:include 和子过程类似,JAVA SERVLET暂时接管对其它指定的JSP页的请求和响应。当处理完该JSP页后就马上把控制权交还当前JSP页。这样JSP代码就可以在多个JSP页中共享而不用复制。
jsp:param 可以在jsp:include, jsp:forward或jsp:params块之间使用。指定一个将加入请求的当前参数组中的参数。
jsp:forward 用于处理对另一个JSP或SERVLET的请求和响应。控制权永远不会交还给当前JSP页。
jsp:plugin Netscape Navigator的老版本和Internet Explorer使用不同的标签以嵌入一个applet。这个动作产生为嵌入一个APPLET所需要的指定浏览器标签。
jsp:fallback 如果浏览器不支持APPLETS则会显示的内容。 jsp:getProperty 从指定的JavaBean中获取一个属性值。 jsp:setProperty 在指定的JavaBean中设置一个属性值。
jsp:useBean 创建或者复用一个JavaBean变量到JSP页。
JSP技术很容易整合到多种应用体系结构中,以利用现存的工具和技巧,并且能扩展到支持企业级的分布式应用中。作为采用Java技术家族的一部分,以及Java 2(企业版体系结构)的一个组成部分,JSP技术能够支持高度复杂的基于Web的应用。 由于JSP页面的内置脚本语言是基于Java的,而且所有的JSP页面都被编译成为Java Servlets,所以JSP页面具有Java技术的所有好处,包括健壮的存储管理和安全性。作为Java平台的一部分,JSP拥有Java编程语言“一次编写,各处运行”的特点。
Atas ialah kandungan terperinci jsp中使用的语言是什么. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!