<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                # 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。運行后得到以下結果: ![](https://box.kancloud.cn/2015-12-15_566fe6fde5207.jpg) ## 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 ``` 不同情況下使用注釋的語法規則: | **語法** | 描述 | | --- | --- | | &lt;%-- 注釋 --%&gt; | JSP注釋,注釋內容不會被發送至瀏覽器甚至不會被編譯 | | &lt;!-- 注釋 --&gt; | HTML注釋,通過瀏覽器查看網頁源代碼時可以看見注釋內容 | | &lt;\% | 代表靜態 &lt;%常量 | | %\&gt; | 代表靜態 %&gt; 常量 | | \' | 在屬性中使用的單引號 | | \" | 在屬性中使用的雙引號 | ## JSP指令 JSP指令用來設置與整個JSP頁面相關的屬性。 JSP指令語法格式: ``` <%@ directive attribute="value" %> ``` 這里有三種指令標簽: | **指令** | **描述** | | --- | --- | | &lt;%@ page ... %&gt; | 定義頁面的依賴屬性,比如腳本語言、error頁面、緩存需求等等 | | &lt;%@ include ... %&gt; | 包含其他文件 | | &lt;%@ taglib ... %&gt; | 引入標簽庫的定義,可以是自定義標簽 | ## 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常見運算符,優先級從高到底: | **類別** | **操作符** | **結合性** | | --- | --- | --- | | 后綴 | () [] . (點運算符) | 左到右 | | 一元 | ++ - - ! ~ | 右到左 | | 可乘性 | * / %? | 左到右 | | 可加性 | + -? | 左到右 | | 移位 | >> >>> << ? | 左到右? | | 關系 | > >= < <= ? | 左到右 | | 相等/不等 | == !=? | 左到右 | | 位與 | &? | 左到右 | | 位異或 | ^? | 左到右 | | 位或 | &#124;? | 左到右 | | 邏輯與 | &&? | 左到右 | | 邏輯或 | &#124;&#124;? | 左到右 | | 條件判斷 | ?:? | 右到左 | | 賦值 | = += -= *= /= %= >>= <<= &= ^= &#124;=? | 右到左 | | 逗號? | ,? | 左到右? | ## JSP常量 JSP語言定義了以下幾個常量: * Boolean:true and false * Integer:與Java中的一樣 * Floating point:與Java中的一樣 * String:以單引號或雙引號開始和結束。 " 被轉義成 \",'被轉義成 \', \ 被轉義成\\ * Null:null
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看