大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

JSP教程
JSP高級教程

JSP語法

本小節將會簡單地介紹一下JSP開發中的基礎語法。

腳本程序

腳本程序可以包含任意量的Java語句、變量、方法或表達式,只要它們在腳本語言中是有效的。

腳本程序的語法格式:

<% 代碼片段 %>

或者,您也可以編寫與其等價的XML語句,就像下面這樣:

<jsp:scriptlet>   
  代碼片段
</jsp:scriptlet>

任何文本、HTML標簽、JSP元素必須寫在腳本程序的外面。

下面給出一個示例,同時也是本教程的第一個JSP示例:

<html>
<head>
<title>Hello World</title>
</head>
<body>
Hello World!<br/>
<% 
out.println("Your IP address is " + request.getRemoteAddr()); 
%>
</body>
</html>

注意:請確保Apache Tomcat已經安裝在C:\apache-tomcat-7.0.2目錄下并且運行環境已經正確設置。

將以上代碼保存在hello.jsp中,然后將它放置在 C:\apache-tomcat-7.0.2\webapps\ROOT目錄下,打開瀏覽器并在地址欄中輸入http://localhost:8080/hello.jsp。運行后得到以下結果:

JSP聲明

一個聲明語句可以聲明一個或多個變量、方法,供后面的Java代碼使用。在JSP文件中,您必須先聲明這些變量和方法然后才能使用它們。

JSP聲明的語法格式:

<%! declaration; [ declaration; ]+ ... %>

或者,您也可以編寫與其等價的XML語句,就像下面這樣:

<jsp:declaration>   
  代碼片段
</jsp:declaration>

程序示例:

<%! int i = 0; %> 
<%! int a, b, c; %> 
<%! Circle a = new Circle(2.0); %>

JSP表達式

一個JSP表達式中包含的腳本語言表達式,先被轉化成String,然后插入到表達式出現的地方。

由于表達式的值會被轉化成String,所以您可以在一個文本行中使用表達式而不用去管它是否是HTML標簽。

表達式元素中可以包含任何符合Java語言規范的表達式,但是不能使用分號來結束表達式。

JSP表達式的語法格式:

<%= 表達式 %>

同樣,您也可以編寫與之等價的XML語句:

<jsp:expression>   
  表達式
</jsp:expression>

程序示例:

<html> 
<head>
<title>A Comment Test</title>
</head> 
<body>
<p>   
  Today's date: <%= (new java.util.Date()).toLocaleString()%>
</p>
</body> 
</html> 

運行后得到以下結果:

Today's date: 11-Sep-2013 21:24:25

JSP注釋

JSP注釋主要有兩個作用:為代碼作注釋以及將某段代碼注釋掉。

JSP注釋的語法格式:

<%-- 這里可以填寫 JSP 注釋 --%>

程序示例:

<html> 
<head>
<title>A Comment Test</title>
</head> 
<body> 
<h2>A Test of Comments</h2> 
<%-- 該部分注釋在網頁中不會被顯示--%> 
</body> 
</html> 

運行后得到以下結果:

A Test of Comments

不同情況下使用注釋的語法規則:

語法 描述

<%--注釋 --%>

JSP注釋,注釋內容不會被發送至瀏覽器甚至不會被編譯

<!--注釋 -->

HTML注釋,通過瀏覽器查看網頁源代碼時可以看見注釋內容

<\%

代表<%靜態常量

%\>

代表靜態 %> 常量

\'

在屬性中使用的單引號

\"

在屬性中使用的雙引號

JSP指令

JSP指令用來設置與整個JSP頁面相關的屬性。

JSP指令語法格式:

<%@ directive attribute="value" %>

這里有三種指令標簽:

指令

描述

<%@ page ... %>

定義頁面的依賴屬性,比如腳本語言、error頁面、緩存需求等等

<%@ include ... %>

包含其他文件

<%@ taglib ... %>

引入標簽庫的定義,可以是自定義標簽

JSP行為

JSP行為標簽使用XML語法結構來控制servlet引擎。它能夠動態插入一個文件,重用JavaBean組件,引導用戶去另一個頁面,為Java插件產生相關的HTML等等。

行為標簽只有一種語法格式,它嚴格遵守XML標準:

<jsp:action_name attribute="value" />

行為標簽基本上是一些預先就定義好的函數,下表羅列出了一些可用的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塊,請看下面這個例子:

<%! int day = 3; %> 
<html> 
<head>
<title>IF...ELSE Example</title>
</head> 
<body>
<% if (day == 1 | day == 7) { %>      
  <p> Today is weekend</p>
<% } else { %>      
  <p> Today is not weekend</p>
<% } %>
</body> 
</html> 

運行后得到以下結果:

Today is not weekend

現在來看看switch…case塊,與if…else塊有很大的不同,它使用out.println(),并且整個都裝在腳本程序的標簽中,就像下面這樣:

<%! int day = 3; %> 
<html> 
<head>
<title>SWITCH...CASE Example</title></head> 
<body>
<%  
switch(day) { 
case 0:    
  out.println("It\'s Sunday.");    
  break; 
case 1:    
  out.println("It\'s Monday.");    
  break; 
case 2:    
  out.println("It\'s Tuesday.");    
  break; 
case 3:    
  out.println("It\'s Wednesday.");    
  break; 
case 4:    
  out.println("It\'s Thursday.");    
  break; 
case 5:    
  out.println("It\'s Friday.");    
  break; 
default:    
  out.println("It's Saturday."); 
} 
%>
</body> 
</html> 

運行后得出以下結果:

It's Wednesday.

循環語句

在JSP程序中可以使用Java的三個基本循環類型:for,while,和 do…while。

讓我們來看看for循環的例子:

<%! int fontSize; %> 
<html> 
<head>
<title>FOR LOOP Example</title>
</head> 
<body>
<%for ( fontSize = 1; fontSize <= 3; fontSize++){ %>   
  <font color="green" size="<%= fontSize %>">    
  JSP Tutorial   
  </font><br />
<%}%>
</body> 
</html> 

運行后得到以下結果:

JSP Tutorial

JSP Tutorial

JSP Tutorial

將上例改用while循環來寫:

<%! int fontSize; %> 
<html> 
<head>
<title>WHILE LOOP Example</title>
</head> 
<body>
<%while ( fontSize <= 3){ %>   
  <font color="green" size="<%= fontSize %>">    
  JSP Tutorial   
  </font><br />
<%fontSize++;%>
<%}%>
</body> 
</html> 

運行后得到同樣的結果:

JSP Tutorial

JSP Tutorial

JSP Tutorial

JSP運算符

JSP支持所有Java邏輯和算術運算符。

下表羅列出了JSP常見運算符,優先級從高到底:

類別

操作符

結合性

后綴

() [] . (點運算符)

左到右

一元

++ - - ! ~

右到左

可乘性

* / %

左到右

可加性

+ -

左到右

移位

>> >>> <<

左到右

關系

> >= < <=

左到右

相等/不等

== !=

左到右

位與

&

左到右

位異或

^

左到右

位或

|

左到右

邏輯與

&&

左到右

邏輯或

||

左到右

條件判斷

?:

右到左

賦值

= += -= *= /= %= >>= <<= &= ^= |=

右到左

逗號

,

左到右

JSP常量

JSP語言定義了以下幾個常量:

● 布爾值(boolean):true 和 false;

● 整型(int):與Java中的一樣;

● 浮點型(float):與Java中的一樣;

● 字符串(string):以單引號或雙引號開始和結束;

● Null:null。

全部教程
主站蜘蛛池模板: 国内精品久久久久久久久久影视 | 四虎影音先锋 | 开心激情五月婷婷 | 国产精品久久在线 | 国产精品久久在线 | 色综合视频在线观看 | 国产在线乱子伦一区二区 | 亚洲国产一区在线二区三区 | 久久精品无码一区二区日韩av | 五月婷婷国产 | 99久久免费国产香蕉麻豆 | 超清乱人伦中文视频在线 | 免费鲁丝片一级观看 | 免费国产a国产片高清不卡 免费国产阿v视频在线观看 | 狠狠狠色| 性欧美视频 | 成人爽a毛片在线视频网站 成人爽视频 | 好吊妞在线播放 | 国产欧美精品午夜在线播放 | 欧美日本高清 | 国产一级高清 | 日本视频中文字幕 | 日韩免费高清一级毛片在线 | 亚洲午夜精品 | 午夜私人影院在线观看 | 熟妇毛茸茸xxxoo | 美女又黄又免费视频 | 九天玄帝诀免费完整观看 | 天天干天天操天天做 | 深夜在线网站 | 国产成人理在线观看视频 | 日本色一区| 99热久久这里只有精品2010 | 尤物福利在线 | 久久亚洲精品国产精品婷婷 | 日韩一级大片 | 热久久国产 | 欧美毛片免费看 | 真实偷拍激情啪啪对白 | 久久黄色影片 | 久久精品免费大片国产大片 |