自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

JSP介紹與示例展示

開(kāi)發(fā) 后端
JSP(全稱(chēng)JavaServer Pages)是由Sun Microsystems公司倡導(dǎo)和許多公司參與共同建立的一種使軟件開(kāi)發(fā)者可以響應(yīng)客戶(hù)端請(qǐng)求,而動(dòng)態(tài)生成HTML、XML或其他格式文檔的Web網(wǎng)頁(yè)的技術(shù)標(biāo)準(zhǔn)。本文是對(duì)JSP介紹與示例展示。

JSP技術(shù)是以Java語(yǔ)言作為腳本語(yǔ)言的,JSP網(wǎng)頁(yè)為整個(gè)服務(wù)器端的Java庫(kù)單元提供了一個(gè)接口來(lái)服務(wù)于HTTP的應(yīng)用程序。JSP使Java代碼和特定的預(yù)定義動(dòng)作可以嵌入到靜態(tài)頁(yè)面中。JSP句法增加了被稱(chēng)為JSP動(dòng)作的XML標(biāo)簽,它們用來(lái)調(diào)用內(nèi)建功能。另外,可以創(chuàng)建JSP標(biāo)簽庫(kù),然后像使用標(biāo)準(zhǔn)HTML或XML標(biāo)簽一樣使用它們。標(biāo)簽庫(kù)提供了一種和平臺(tái)無(wú)關(guān)的擴(kuò)展服務(wù)器性能的方法。

JSP被JSP編譯器編譯成Java Servlets。一個(gè)JSP編譯器可以把JSP編譯成JAVA代碼寫(xiě)的servlet然后再由JAVA編譯器來(lái)編譯成機(jī)器碼,

也可以直接編譯成二進(jìn)制碼。

示例:

  1. <%@ page language="java" import="java.util.*" contentType="text/html; charset=UTF-8" %> 
  2. <html> 
  3. <head> 
  4. <title>最早的jsp寫(xiě)法</title> 
  5. </head> 
  6. <body> 
  7. <%   
  8. // 控制臺(tái)打印一臺(tái)話  
  9. System.out.println("最早的jsp寫(xiě)法,java做為角本語(yǔ)言加入jsp網(wǎng)頁(yè)當(dāng)中,做相關(guān)的交互工作.");  
  10. %> 
  11.  
  12. <%  
  13. // java語(yǔ)言的循環(huán)  
  14. for(int i=0;i<10;i++)  
  15. {   
  16. %> 
  17.  
  18. test<br> 
  19.  
  20. <%  
  21. }  
  22. %> 
  23. </body> 
  24. </html> 

JSP 介紹之標(biāo)準(zhǔn)標(biāo)記庫(kù)與EL表達(dá)式語(yǔ)言

JSP 標(biāo)準(zhǔn)標(biāo)記庫(kù)(JSP Standard Tag Library,JSTL)是一個(gè)實(shí)現(xiàn) Web 應(yīng)用程序中常見(jiàn)的通用功能的定制標(biāo)記庫(kù)集,這些功能包括

迭代和條件判斷、數(shù)據(jù)管理格式化、XML 操作以及數(shù)據(jù)庫(kù)訪問(wèn)。

EL 提供了一些標(biāo)識(shí)符、存取器和運(yùn)算符,用來(lái)檢索和操作駐留在 JSP 容器中的數(shù)據(jù)。

JSTL語(yǔ)法及參數(shù)

JSTL包含以下的標(biāo)簽:

常用的標(biāo)簽:如<c:out>、<c:remove>、<c:catch>、<c:set>等

條件標(biāo)簽:如<c:if><c:when>、<c:choose>、<c:otherwise>等

URL標(biāo)簽:如<c:import>、<c:redirect>和<c:url>等

XML標(biāo)簽:如<xml:out>等

國(guó)際化輸出標(biāo)簽:如<fmt:timeZone>等

SQL標(biāo)簽:如<sql:query>、<sql:update>、<sql:transaction>等

一般用途的標(biāo)簽:

1.<c:out>

沒(méi)有Body時(shí)的語(yǔ)法

<c:out value=”value” [escapeXml=”{true|false}”] [default=”defaultValue”]/>

有Body時(shí)的語(yǔ)法

<c:out value=”value” [escapeXml=”{true|false}”]>

這里是Body部分

</c:out>

名字 類(lèi)型 描述

value Object 將要輸出的表達(dá)式

escapeXml boolean 確定以下字符:<,>,&,’,”在字符串中是否被除數(shù),默認(rèn)為true

default Object 如果vaule計(jì)算后的結(jié)果是null,那么輸出這個(gè)默認(rèn)值

2.<c:set>

這個(gè)標(biāo)簽用于在某個(gè)范圍(page、request、session、application等)中使用某個(gè)名字設(shè)定特定的值,或者設(shè)定某個(gè)已經(jīng)存在的

javabean對(duì)象的屬性。他類(lèi)似于<%request.setAttrbute(“name”,”value”);%>

語(yǔ)法1:使用value屬性設(shè)定一個(gè)特定范圍中的屬性。

<c:set value=”value” var=”varName” [scope=”{page|request|session|application}”]/>

語(yǔ)法2:使用value屬性設(shè)定一個(gè)特定范圍中的屬性,并帶有一個(gè)Body。

<c:set var=”varName” [scope=”{page|request|session|application}”]>

Body部分

</c:set>

語(yǔ)法3:設(shè)置某個(gè)特定對(duì)象的一個(gè)屬性。

<c:set value=”value” target=”target” property=”propertyName”/>

語(yǔ)法4:設(shè)置某個(gè)特定對(duì)象的一個(gè)屬性,并帶有一個(gè)Body。

<c:set target=”target” property=”propertyName”>

Body部分

</c:set>

名字 類(lèi)型 描述

value Object 將要計(jì)算的表到式。

var String 用于表示value 值的屬性,如果要在其他標(biāo)簽中使用,就是通過(guò)這 個(gè)var指定的值來(lái)進(jìn)行的。它相當(dāng)于在標(biāo)簽定義了一

個(gè)變量,并且這個(gè)變量只能在標(biāo)簽中的一個(gè)。

scope String var的有效范圍,可以是page|request|session|application中的一個(gè)

target String 將要設(shè)置屬性的對(duì)象,它必須是javabean或則java.util.Map對(duì)象

property Object 待設(shè)定的Target對(duì)象中的屬性名字,比如在javabean中有個(gè)name屬性,提供了setUserId方法,那么這里填userId

。

3.<c:remove>

<c:remove var=”varName” [scope=”{page|request|session|application}”]/>

4.<c:catch>

這個(gè)標(biāo)簽相當(dāng)于捕獲在它里邊的標(biāo)簽拋出的異常對(duì)象

<c:catch [var=”varName”]> //var是異常的名字

內(nèi)容

</c:catch>

條件標(biāo)簽

1. <c:if>

語(yǔ)法1:無(wú)Body情況

<c:if test=”testCondition” var=”varName” [scope=”page|request|session|application”]/>

語(yǔ)法2:有Body的情況

<c:if test=”testCondition” var=”varName” [scope=”page|request|session|application”]>

Body內(nèi)容

</c:if>

名字 類(lèi)型 描述

test Boolean 表達(dá)式的條件,相當(dāng)于if()中的條件判斷語(yǔ)句。

var String 表示這個(gè)語(yǔ)句的名字。

scope String var這個(gè)變量的作用范圍。

2.<c:choose>

語(yǔ)法:<c:choose>

Body內(nèi)容(<c:when>和<c:otherwise>子標(biāo)簽)

</c:choose>

注意:它的Body只能由以下元素組成:

1) 空格

2) 0或多個(gè)<c:when>子標(biāo)簽,<c:when>必須在<c:otherwise>標(biāo)簽之前出現(xiàn).

3) 0個(gè)或多個(gè)<c:otherwise>子標(biāo)簽。

3.<c:when>

代表的是<c:choose>的一個(gè)條件分支,只能在<c:choose>中使用

語(yǔ)法:<c:when test=”testCondition”> //test是boolean類(lèi)型,用于判斷條件真假

Body語(yǔ)句

</c:when>

4.<c:otherwise>

代表的是<c:choose>中的***選擇。必須在***出現(xiàn)

<c:otherwise>

內(nèi)容

</c:otherwise>

迭代標(biāo)簽

1.<c:forEach>

語(yǔ)法1:在Collection中迭代

<c:forEach[var=”varName”] items=”collection” [varStatus=”varStatusName”]

[begin=”begin”] [end=”end”] [step=”step”]

Body內(nèi)容

</c:foeEach>

語(yǔ)法2:迭代固定的次數(shù).

<c:forEach [var=”varName”] [varStatus=”varStatusName”]

[begin=”begin”] [end=”end”] [step=”step”]

Body內(nèi)容

</c:foeEach>

名字 類(lèi)型 描述

var String 迭代的參數(shù),它是標(biāo)簽參數(shù),在其他標(biāo)簽中通過(guò)它來(lái)引用這個(gè)標(biāo)簽中的內(nèi)容。

Items Collection、ArrayList、 要迭代的items集合.

Iterator、Map、String、

Eunmeration等

VarStatus String 表示迭代的狀態(tài),可以訪問(wèn)迭代自身的信息

Begin int 表示開(kāi)始迭代的位置。

End int 表示結(jié)束迭代的位置。

Step int 表示迭代移動(dòng)的步長(zhǎng),默認(rèn)為1。

URL相關(guān)的標(biāo)簽

1.<c:import>

語(yǔ)法1:資源的內(nèi)容使用String對(duì)象向外暴露

<c:import url=”url” [context=”context”]

[var=”varName”] [scope=”{page|request|session|application}”] [charEncoding=”charEncoding”]>

內(nèi)容

</c:import>

語(yǔ)法2:資源的內(nèi)容使用Reader對(duì)象向外暴露。

<c:import url=”url” [context=”context”]

varReader=”varReaderName” [charEncoding=”charEncoding”]>

內(nèi)容

</c:import>

名字 類(lèi)型 描述

url String 待導(dǎo)入資源的URL,可以是相對(duì)路徑和絕對(duì)路徑,并且可以導(dǎo)入其他主機(jī)資源

context String 當(dāng)使用相對(duì)路徑訪問(wèn)外部context資源時(shí),context指定了這個(gè)資源的名字。

var String 參數(shù)的名字。

scope String var參數(shù)的作用范圍。

cahrEncoding String 輸入資源的字符編碼。

varReader String 這個(gè)參數(shù)的類(lèi)型是Reader,用于讀取資源。

2.<c:redirct>

語(yǔ)法1:沒(méi)有Body的情況.

<c:redirect url=”value” [context=”context”]/>

語(yǔ)法2:有Body情況下,在Body中指定查詢(xún)的參數(shù)

<c:redirect url=”value” [context=”context”]>

<c:param name=”name” value=”value”/>

</c:redirect>

3.<c:url>

語(yǔ)法1:沒(méi)有Body

<c:url value=”value” [context=”context”] [var=”varName”] [scope=”{page|request|session+application}”]/>

語(yǔ)法2:有Body

<c:url value=”value” [context=”context”] [var=”varName”] [scope=”{page|request|session+application}”]>

<c:param name=”name” value=”value”/>

</c:url>

名字 類(lèi)型 描述

value String URL值

context String 當(dāng)使用相對(duì)路徑訪問(wèn)外部context資源時(shí),context指定了這個(gè)資源的名字

var String 標(biāo)識(shí)這個(gè)URL標(biāo)量。

Scope String 變量作用范圍。

SQL相關(guān)的標(biāo)簽

1.<sql:setDataSource>

2.<sql:query>

3.<sql:update>

4.<transaction>

5.<param>

示例:

  1. <%@ page language="java" contentType="text/html; charset=UTF-8" %> 
  2. <%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %> 
  3. <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> 
  4. <%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %> 
  5. <html> 
  6. <head> 
  7. <title>jstl的jsp寫(xiě)法</title> 
  8. </head> 
  9. <body> 
  10. <!-- 設(shè)置變量testset --> 
  11. <c:set var="testset" value="ok" /> 
  12.  
  13. <!-- 判斷變量testset是否與ok值相等,如果相等就顯示“判斷成功” --> 
  14. <c:if test="${testset == 'ok'}"> 
  15. 判斷成功<br> 
  16. </c:if> 
  17.  
  18. <!-- 循環(huán)標(biāo)簽以0開(kāi)始10結(jié)束,每循環(huán)的增量是1,并把當(dāng)前的值賦值給變量bl --> 
  19. <c:forEach begin="0" end="10" step="1" var="bl"> 
  20.  ${bl} test<br>                                  
  21. </c:forEach> 
  22.  
  23. </body> 
  24. </html> 

JSP介紹就到這里。

【編輯推薦】

  1. JSP開(kāi)發(fā)環(huán)境的搭建
  2. 簡(jiǎn)單介紹JSP環(huán)境配置
  3. JSP、ASP和PHP安全編程
  4. 整合Apache中JSP和PHP
  5. JSP和Servlet應(yīng)用的安全問(wèn)題
責(zé)任編輯:彭凡 來(lái)源: CSDN
相關(guān)推薦

2009-07-06 10:10:43

MyJSP

2009-07-02 08:50:01

JSP標(biāo)簽庫(kù)

2009-07-02 12:56:01

JSP技術(shù)

2009-07-03 10:19:29

JSP相關(guān)軟件

2009-07-02 10:27:20

JSP技術(shù)JSP入門(mén)

2009-07-07 14:04:55

JSP入門(mén)

2010-03-23 14:12:43

Python開(kāi)發(fā)Win

2009-07-06 15:31:42

JSP Action

2009-07-03 16:21:43

2009-07-06 14:43:30

JSP元素

2023-05-26 00:14:38

PythonJinJa2

2009-07-01 10:12:40

JSP環(huán)境配置JSP引擎

2009-07-02 10:13:47

ASP和JSPJSP頁(yè)面

2009-06-30 17:26:56

JSP頁(yè)面

2009-09-02 09:44:01

JSP和JavaBea

2009-07-03 18:31:04

JSP表達(dá)式

2023-05-29 09:18:28

.NET網(wǎng)絡(luò)通信

2009-07-03 11:21:43

Servlet和JSPJSP路徑

2011-07-08 16:54:39

JspCookies

2009-07-01 11:08:14

JSP DestoryJSP Init數(shù)據(jù)庫(kù)鏈接
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)