javascript
jsp java语法_JSP 语法 | 菜鸟教程
JSP 語法
本小節將會簡單地介紹一下JSP開發中的基礎語法。
腳本程序
腳本程序可以包含任意量的Java語句、變量、方法或表達式,只要它們在腳本語言中是有效的。
腳本程序的語法格式:
或者,您也可以編寫與其等價的XML語句,就像下面這樣:
代碼片段
任何文本、HTML標簽、JSP元素必須寫在腳本程序的外面。
下面給出一個示例,同時也是本教程的第一個JSP示例:
Hello WorldHello World!
out.println("Your IP address is " + request.getRemoteAddr());
%>
注意:請確保Apache Tomcat已經安裝在C:\apache-tomcat-7.0.2目錄下并且運行環境已經正確設置。
將以上代碼保存在hello.jsp中,然后將它放置在 C:\apache-tomcat-7.0.2\webapps\ROOT目錄下,打開瀏覽器并在地址欄中輸入http://localhost:8080/hello.jsp。運行后得到以下結果:
中文編碼問題
如果我們要在頁面正常顯示中文,我們需要在 JSP 文件頭部添加以下代碼:<>
pageEncoding="UTF-8"%>
接下來我們將以上程序修改為:
pageEncoding="UTF-8"%>
菜鳥教程(runoob.com)Hello World!
out.println("你的 IP 地址 " + request.getRemoteAddr());
%>
這樣中文就可以正常顯示了。
JSP聲明
一個聲明語句可以聲明一個或多個變量、方法,供后面的Java代碼使用。在JSP文件中,您必須先聲明這些變量和方法然后才能使用它們。
JSP聲明的語法格式:
或者,您也可以編寫與其等價的XML語句,就像下面這樣:
代碼片段
程序示例:
JSP表達式
一個JSP表達式中包含的腳本語言表達式,先被轉化成String,然后插入到表達式出現的地方。
由于表達式的值會被轉化成String,所以您可以在一個文本行中使用表達式而不用去管它是否是HTML標簽。
表達式元素中可以包含任何符合Java語言規范的表達式,但是不能使用分號來結束表達式。
JSP表達式的語法格式:
同樣,您也可以編寫與之等價的XML語句:
表達式
程序示例:
pageEncoding="UTF-8"%>
菜鳥教程(runoob.com)今天的日期是:
運行后得到以下結果:
今天的日期是: 2016-6-25 13:40:07
JSP注釋
JSP注釋主要有兩個作用:為代碼作注釋以及將某段代碼注釋掉。
JSP注釋的語法格式:
pageEncoding="UTF-8"%>
菜鳥教程(runoob.com)今天的日期是:
運行后得到以下結果:
今天的日期是: 2016-6-25 13:41:26
不同情況下使用注釋的語法規則:
語法
描述
JSP注釋,注釋內容不會被發送至瀏覽器甚至不會被編譯
HTML注釋,通過瀏覽器查看網頁源代碼時可以看見注釋內容
代表靜態
%\>
代表靜態 %> 常量
\'
在屬性中使用的單引號
\"
在屬性中使用的雙引號
JSP指令
JSP指令用來設置與整個JSP頁面相關的屬性。
JSP指令語法格式:
這里有三種指令標簽:
指令
描述
定義頁面的依賴屬性,比如腳本語言、error頁面、緩存需求等等
包含其他文件
引入標簽庫的定義,可以是自定義標簽
JSP行為
JSP行為標簽使用XML語法結構來控制servlet引擎。它能夠動態插入一個文件,重用JavaBean組件,引導用戶去另一個頁面,為Java插件產生相關的HTML等等。
行為標簽只有一種語法格式,它嚴格遵守XML標準:
行為標簽基本上是一些預先就定義好的函數,下表羅列出了一些可用的JSP行為標簽::
語法
描述
jsp:include
用于在當前頁面中包含靜態或動態資源
jsp:useBean
尋找和初始化一個JavaBean組件
jsp:setProperty
設置 JavaBean組件的值
jsp:getProperty
將?JavaBean組件的值插入到 output中
jsp:forward
從一個JSP文件向另一個文件傳遞一個包含用戶請求的request對象
jsp:plugin
用于在生成的HTML頁面中包含Applet和JavaBean對象
jsp:element
動態創建一個XML元素
jsp:attribute
定義動態創建的XML元素的屬性
jsp:body
定義動態創建的XML元素的主體
jsp:text
用于封裝模板數據
JSP隱含對象
JSP支持九個自動定義的變量,江湖人稱隱含對象。這九個隱含對象的簡介見下表:
對象
描述
request
HttpServletRequest類的實例
response
HttpServletResponse類的實例
out
PrintWriter類的實例,用于把結果輸出至網頁上
session
HttpSession類的實例
application
ServletContext類的實例,與應用上下文有關
config
ServletConfig類的實例
pageContext
PageContext類的實例,提供對JSP頁面所有對象以及命名空間的訪問
page
類似于Java類中的this關鍵字
Exception
Exception類的對象,代表發生錯誤的JSP頁面中對應的異常對象
控制流語句
JSP提供對Java語言的全面支持。您可以在JSP程序中使用Java API甚至建立Java代碼塊,包括判斷語句和循環語句等等。
判斷語句
If…else塊,請看下面這個例子:
pageEncoding="UTF-8"%>
菜鳥教程(runoob.com)IF...ELSE 實例
今天是周末
今天不是周末
運行后得到以下結果:
IF...ELSE 實例
今天不是周末
現在來看看switch…case塊,與if…else塊有很大的不同,它使用out.println(),并且整個都裝在腳本程序的標簽中,就像下面這樣:
pageEncoding="UTF-8"%>
菜鳥教程(runoob.com)SWITCH...CASE 實例
switch(day) {
case 0:
out.println("星期天");
break;
case 1:
out.println("星期一");
break;
case 2:
out.println("星期二");
break;
case 3:
out.println("星期三");
break;
case 4:
out.println("星期四");
break;
case 5:
out.println("星期五");
break;
default:
out.println("星期六");
}
%>
瀏覽器訪問,運行后得出以下結果:
SWITCH...CASE 實例
星期三
循環語句
在JSP程序中可以使用Java的三個基本循環類型:for,while,和 do…while。
讓我們來看看for循環的例子,以下輸出的不同字體大小的"菜鳥教程":
pageEncoding="UTF-8"%>
菜鳥教程(runoob.com)For 循環實例
菜鳥教程
運行后得到以下結果:
將上例改用while循環來寫:
pageEncoding="UTF-8"%>
菜鳥教程(runoob.com)While 循環實例
菜鳥教程
瀏覽器訪問,輸出結果為(fontSize 初始化為0,所以多輸出了一行):
JSP運算符
JSP支持所有Java邏輯和算術運算符。
下表羅列出了JSP常見運算符,優先級從高到底:
類別
操作符
結合性
后綴
() [] . (點運算符)
左到右
一元
++ - - ! ~
右到左
可乘性
* / %
左到右
可加性
+ -
左到右
移位
>> >>> <<
左到右
關系
> >= < <=
左到右
相等/不等
== !=
左到右
位與
&
左到右
位異或
^
左到右
位或
|
左到右
邏輯與
&&
左到右
邏輯或
||
左到右
條件判斷
?:
右到左
賦值
= += -= *= /= %= >>= <<= &= ^= |=
右到左
逗號
,
左到右
JSP 字面量
JSP語言定義了以下幾個字面量:
布爾值(boolean):true 和 false;
整型(int):與 Java 中的一樣;
浮點型(float):與 Java 中的一樣;
字符串(string):以單引號或雙引號開始和結束;
Null:null。
總結
以上是生活随笔為你收集整理的jsp java语法_JSP 语法 | 菜鸟教程的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 开源网络教学平台SAKAI开发环境的搭建
- 下一篇: web大作业:简单的学生网页作业源码 基