|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
首先java功能强大的背后是其复杂性,就拿web来说,当今流行的框架有很多,什么struts,spring,jQuery等等,而这无疑增加了java的复杂性。js|语法作者:神仙掌事情室
11.1概述
JavaServerPages(JSP)使得我们可以分别页面的静态HTML和静态部分。HTML能够用任何一般利用的Web制造工具编写,编写体例也和本来的一样;静态部分的代码放进特别标志以内,年夜部分以“<%”入手下手,以“%>”停止。比方,上面是一个JSP页面的片段,假如我们用http://host/OrderConfirmation.jsp?title=Core+Web+Programming这个URL翻开该页面,则了局显现“ThanksfororderingCoreWebProgramming”。
Thanksforordering
<I><%=request.getParameter("title")%></I>
JSP页面文件一般以.jsp为扩大名,并且能够安装就任何可以寄存一般Web页面的中央。固然从代码编写来看,JSP页面更象一般Web页面而不象Servlet,但实践上,JSP终极会被转换成正轨的Servlet,静态HTML间接输入到和Servletservice办法联系关系的输入流。
JSP到Servlet的转换历程一样平常在呈现第一次页面哀求时举行。因而,假如你但愿第一个用户不会因为JSP页面转换成Servlet而守候太长的工夫,但愿确保Servlet已准确地编译并装载,你能够在安装JSP页面以后本人哀求一下这个页面。
别的也请注重,很多Web服务器同意界说别号,以是一个看起来指向HTML文件的URL实践上大概指向Servlet或JSP页面。
除一般HTML代码以外,嵌进JSP页面的其他成份次要有以下三种:剧本元素(ScriptingElement),指令(Directive),举措(Action)。剧本元素用来嵌进Java代码,这些Java代码将成为转换失掉的Servlet的一部分;JSP指令用来从全体上把持Servlet的布局;举措用来引进现有的组件大概把持JSP引擎的举动。为了简化剧本元素,JSP界说了一组能够间接利用的变量(预界说变量),好比后面代码片段中的request就是个中一例。
注重本文以JSP1.0标准为基本。和0.92版比拟,新版本的JSP作了很多严重的修改。固然这些修改只会使JSP变得更好,但应注重1.0的JSP页面几近和初期的JSP引擎完整不兼容。
11.2JSP语法提要表JSP元素语法申明备注
JSP表达式<%=expression%>盘算表达式并输入了局。等价的XML表达是:
<jsp:expression>
expression
</jsp:expression>
可使用的预界说变量包含:request,response,out,session,application,config,pageContext。这些预界说变量也能够在JSPScriptlet中利用。
JSPScriptlet<%code%>拔出到service办法的代码。等价的XML表达是:
<jsp:scriptlet>
code
</jsp:scriptlet>
JSP声明<%!code%>代码被拔出到Servlet类(在service办法以外)。等价的XML表达是:
<jsp:declaration>
code
</jsp:declaration>
page指令<%@pageatt="val"%>感化于Servlet引擎的全局性指令。等价的XML表达是
<jsp:directive.pageatt="val"\>。
正当的属性以下表,个中粗体暗示默许值:
import="package.class"
contentType="MIME-Type"
isThreadSafe="true|false"
session="true|false"
buffer="sizekb|none"
autoflush="true|false"
extends="package.class"
info="message"
errorPage="url"
isErrorPage="true|false"
language="java"
include指令<%@includefile="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="relativeURL"
flush="true"/>当Servlet被哀求时,引进指定的文件。假如你但愿在页面转换的时分包括某个文件,利用JSPinclude指令。
注重:在某些服务器上,被包括文件必需是HTML文件或JSP文件,详细由服务器决意(一般依据文件扩大名判别)。
jsp:useBean举措<jsp:useBeanatt=val*/>大概
<jsp:useBeanatt=val*>
...
</jsp:useBean>寻觅或实例化一个JavaBean。大概的属性包含:
id="name"
scope="page|request
|session|application"
class="package.class"
type="package.class"
beanName="package.class"
jsp:setProperty举措<jsp:setPropertyatt=val*/>设置Bean的属性。既能够设置一个断定的值,也能够指定属性值来自哀求参数。正当的属性包含:
name="beanName"
property="propertyName|*"
param="parameterName"
value="val"
jsp:getProperty举措<jsp:getProperty
name="propertyName"
value="val"/>提取并输入Bean的属性。
jsp:forward举措<jsp:forward
page="relativeURL"/>把哀求转到别的一个页面。
jsp:plugin举措<jsp:plugin
attribute="value"*>
...
</jsp:plugin>依据扫瞄器范例天生OBJECT大概EMBED标志,以便经由过程JavaPlugin运转JavaApplet。
11.3关于模板文本(静态HTML)
很多时分,JSP页面的很年夜一部分都由静态HTML组成,这些静态HTML也称为“模板文本”。模板文本和一般HTML几近完整不异,它们都服从不异的语律例则,并且模板文本也是被Servlet间接发送到客户端。别的,模板文本也能够用任何现有的页面制造工具来编写。
独一的破例在于,假如要输入“<%”,则模板文本中应当写成“<\%”。
从一个编程语言的普及程度来将,一个好的IDE是至关中要的,而现在的java的IDE虽然已经很好了,但是和.net比起来还是稍微差一些的,这是个客观事实。java要想普及的更好。DE是必须加以改进的。 |
|