马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
再举这样一个例子:如果你想对一个数字取绝对值,你会怎么做呢?java的做法是intc=Math.abs(-166);而ruby的做法是:c=-166.abs。呵呵,这就看出了java与ruby的区别。js|语法 HTML正文
在客户端显现一个正文。
JSP语法- <!--comment[<%=expression%>]-->
复制代码 例子1
- <!--Thisfiledisplaystheuserloginscreen-->在客户真个HTML源代码中发生和下面一样的数据:<!--Thisfiledisplaystheuserloginscreen-->
复制代码 例子2
- <!--Thispagewasloadedon<%=(newjava.util.Date()).toLocaleString()%>-->
复制代码 在客户真个HTML源代码中显现为:
- <!--ThispagewasloadedonJanuary1,2000-->
复制代码
形貌
这类正文和HTML中很像,也就是它能够在“检察源代码”中看到。
独一有些分歧的就是,你能够在这个正文顶用表达式(例子2所示)。这个表达示是不定的,由页面分歧而分歧,你可以利用各类表达式,只需是正当的就行。
埋没正文
写在JSP程序中,但不是发给客户。
JSP语法
例子:
- <%@pagelanguage="java"%><html><head><title>ACommentTest</title></head><body><h2>ATestofComments</h2><%--Thiscommentwillnotbevisibleinthepagesource--%></body></html>
复制代码 形貌
用埋没正文标志的字符会在JSP编译时被疏忽失落。这个正文在你但愿埋没或正文你的JSP程序时是很有效的。
JSP编译器是不会对%--and--%之间的语句举行编译的,它不会显现在客户的扫瞄器中,也不会在源代码中看到在%----%之间,你能够恣意写正文语句,可是不克不及利用“--%>”,假如你非要利用请用“--%>”。
声明
在JSP程序中声明正当的变量和办法。
JSP语法
- <%!declaration;[declaration;]+...%>
复制代码
例子
- <%!inti=0;%><%!inta,b,c;%><%!Circlea=newCircle(2.0);%>
复制代码 形貌
声明你将要在JSP程序顶用到的变量和办法。你也必需如许做,否则会堕落。
你能够一次性声明多个变量和办法,只需以";"开头就行,固然这些声明在Java中如果正当的。
当你声明办法或变量时,请注重以下的一些划定规矩:
1声明必需以";"开头(Scriptlet有一样的划定规矩,可是表达式就分歧了)。
2你能够间接利用在%@page%中被包括出去的已声明的变量和办法,不必要对它们从头举行声明。
3一个声明仅在一个页面中无效。假如你想每一个页面都用到一些声明,最好把它们写成一个独自的文件,然后用%@include%或jsp:include元素包括出去。
表达式
包括一个切合JSP语法的表达式。
JSP语法
例子
- <fontcolor="blue"><%=map.size()%></font><b><%=numguess.getHint()%></b>.
复制代码 形貌
表达式元素暗示的是一个在剧本言语中被界说的表达式,在运转后被主动转化为字符串,然后拔出到这个表达式在JSP文件的地位显现。由于这个表达式的值已被转化为字符串,以是你能在一行文本中拔出这个表达式(情势和ASP完整一样)。
当你在JSP中利用表达式时请记着以下几点:
1你不克不及用一个分号(“;”)来作为表达式的停止符。可是一样的表达式用在scriptlet中就必要以分号来开头了!检察Scriptlet这个表达式元素可以包含任安在JavaLanguageSpecification中无效的表达式。
2偶然候表达式也能作为别的JSP元素的属性值。一个表达式可以变得很庞大,它大概由一个或多个表达式构成,这些表达式的按次是从左到右。
Scriptlet
包括一个无效的程序段。
JSP语法
例子- <%Stringname=null;if(request.getParameter("name")==null){%><%@includefile="error.html"%><%}else{foo.setName(request.getParameter("name"));if(foo.getName().equalsIgnoreCase("integra"))name="acura";if(name.equalsIgnoreCase("acura")){%>
复制代码 形貌
一个scriptlet可以包括多个jsp语句、办法、变量、表达式。
由于有了scriptlet,我们便能做以下的事:
1声明将要用到的变量或办法(参考声明)。
2编写JSP表达式(参考表达式)。
3利用任何隐含的对象和任何用jsp:useBean声明过的对象。
4编写JSP语句(假如你在利用Java言语,这些语句必需服从JavaLanguageSpecification)。
任何文本、HTML标志、JSP元素必需在scriptlet以外。
当JSP收到客户的哀求时,scriptlet就会被实行,假如scriptlet有显现的内容,这些显现的内容就被存在out对象中。
Page指令
界说JSP文件中的全局属性。
JSP语法- <%@page[language="java"][extends="package.class"][import="{package.class|package.*},..."][session="true|false"][buffer="none|8kb|sizekb"][autoFlush="true|false"][isThreadSafe="true|false"][info="text"][errorPage="relativeURL"][contentType="mimeType[;charset=characterSet]"|"text/html;charset=ISO-8859-1"][isErrorPage="true|false"]%>
复制代码 例子- <%@pageimport="java.util.*,java.lang.*"%><%@pagebuffer="5kb"autoFlush="false"%><%@pageerrorPage="error.jsp"%>
复制代码 形貌
%@page%指令感化于全部JSP页面,一样包含静态的包括文件。可是%@page%指令不克不及感化于静态的包括文件,好比jsp:include。
你能够在一个页面顶用上多个%@page%指令,可是个中的属性只能用一次,不外也有个破例,那就是import属性。由于import属性和Java中的import语句差未几(参照JavaLanguage),以是你就可以多用此属性几回了。
不管你把%@page%指令放在JSP的文件的哪一个中央,它的感化局限都是全部JSP页面。不外,为了JSP程序的可读性,和好的编程习气,最好仍是把它放在JSP文件的顶部。
Taglib指令
界说一个标签库和其自界说标签的前缀。
JSP语法- <%@tagliburi="URIToTagLibrary"prefix="tagPrefix"%>
复制代码 例子- <%@tagliburi="http://www.jspcentral.com/tags"prefix="public"%><public:loop>..</public:loop>
复制代码 形貌
%@taglib%指令声明此JSP文件利用了自界说的标签,同时援用标签库,也指定了他们的标签的前缀。
这里自界说的标签含有标签和元素之分。由于JSP文件可以转化为XML,以是懂得标签和元素之间的接洽很主要。标签只不外是一个在乎义上被举高了点的标志,是JSP元素的一部分。JSP元素是JSP语法的一部分,和XML一样有入手下手标志和停止标志。元素也能够包括别的的文本、标志、元素。好比,一个jsp:plugin元素有jsp:plugin入手下手标志和/jsp:plugin停止标志,一样也能够有jsp:params和jsp:fallback元素。
你必需在利用自界说标签之前利用%@taglib%指令,并且你能够在一个页面中屡次利用,可是前缀只能利用一次。
属性 UniformResourceIdentifier(URI)依据标签的前缀对自界说的标签举行唯一的定名,URI能够是以下的内容:
UniformResourceLocator(URL),由RFC2396界说,检察http://www.hut.fi/u/jkorpela/rfc/2396/full.html。
UniformResourceName(URN),由RFC2396界说。
一个绝对或相对的路径
prefix="tagPrefix"
在自界说标签之前的前缀,好比,在中的public,假如这里不写public,那末这就是分歧法的。请不要用jsp、jspx、java、javax、servlet、sun和sunw做你的前缀。
jsp:forward
重定向一个HTML文件、JSP文件、大概是一个程序段。
JSP语法- <jsp:forwardpage={"relativeURL"|"<%=expression%>"}/>or<jsp:forwardpage={"relativeURL"|"<%=expression%>"}><jsp:paramname="parameterName"value="{parameterValue|<%=expression%>}"/>+</jsp:forward>
复制代码 例子- <jsp:forwardpage="/servlet/login"/><jsp:forwardpage="/servlet/login"><jsp:paramname="username"value="jsmith"/></jsp:forward>
复制代码 形貌
jsp:forward标签从一个JSP文件向另外一个文件传送一个包括用户哀求的request对象。jsp:forward标签以下的代码,将不克不及实行。
你可以向方针文件传送参数和值,在这个例子中我们传送的参数名为username,值为scott,假如你利用了jsp:param标签的话,方针文件必需是一个静态的文件,可以处置参数。
假如你利用了非缓冲输入的话,那末利用jsp:forward时就要当心。假如在你利用jsp:forward之前,jsp文件已有了数据,那末文件实行就会堕落。
属性- page="{relativeURL|<%=expression%>}"
复制代码 这里是一个表达式或是一个字符串用于申明你将要定向的文件或URL。这个文件能够是JSP、程序段、大概别的可以处置request对象的文件(如asp、cgi、php)。- <jsp:paramname="parameterName"value="{parameterValue|<%=expression%>}"/>+
复制代码 向一个静态文件发送一个或多个参数,这个文件必定是静态文件。
假如你想传送多个参数,你能够在一个JSP文件中利用多个jsp:param。name指定参数名,value指定参数值。
<P> jsp:getProperty
猎取Bean的属性值,用于显现在页面中。
JSP语法 |