【JSP】(一)JSP基礎語法
阿新 • • 發佈:2019-01-05
efault output ole type ons att dir 定義 發生
【本文展示以下用法】:
1.JSP中文編碼問題, JSP聲明, JSP表達式, JSP註釋,
2.JSP指令,JSP行為,
3.JSP隱含對象
4.控制流語句: 判斷語句,循環語句
5.字面量
6.運算符
一.JSP中文編碼問題, JSP聲明, JSP表達式, JSP註釋
1.中文編碼
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
2.JSP聲明
<%! declaration; [ declaration; ]+ ... %>
3.jsp表達式
<%= 表達式 %>
4.jsp註釋
<%--我是一個註釋--%>
二.JSP指令,JSP行為
1.JSP指令
JSP指令用來設置與整個JSP頁面相關的屬性
<%@ directive attribute="value" %>
這裏有三種指令標簽:
指令 | 描述 |
---|---|
<%@ page ... %> | 定義頁面的依賴屬性,比如腳本語言、error頁面、緩存需求等等 |
<%@ include ... %> | 包含其他文件 |
<%@ taglib ... %> |
引入標簽庫的定義,可以是自定義標簽 |
2.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頁面中對應的異常對象 |
四.控制流語句
1.if-else語句
<%-- 中文顯示 --%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%--聲明一個int型變量--%>
<%! int day = 3; %>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>菜鳥教程(runoob.com)</title>
</head>
<body>
<h3>IF...ELSE 實例</h3>
<% if (day == 1 | day == 7) { %>
<p>今天是周末</p>
<% } else { %>
<p>今天不是周末</p>
<% } %>
</body>
</html>
2.switch語句
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%! int day = 3; %> <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>菜鳥教程(runoob.com)</title> </head> <body> <h3>SWITCH...CASE 實例</h3> <% 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("星期六"); } %> </body> </html>
3.for循環
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%! int fontSize; %> <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>菜鳥教程(runoob.com)</title> </head> <body> <h3>For 循環實例</h3> <%for ( fontSize = 1; fontSize <= 3; fontSize++){ %> <font color="green" size="<%= fontSize %>"> 菜鳥教程 </font><br /> <%}%> </body> </html>
4.while循環
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%! int fontSize=0; %> <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>菜鳥教程(runoob.com)</title> </head> <body> <h3>While 循環實例</h3> <%while ( fontSize <= 3){ %> <font color="green" size="<%= fontSize %>"> 菜鳥教程 </font><br /> <%fontSize++;%> <%}%> </body> </html>
五.字面量
JSP語言定義了以下幾個字面量:
- 布爾值(boolean):true 和 false;
- 整型(int):與 Java 中的一樣;
- 浮點型(float):與 Java 中的一樣;
- 字符串(string):以單引號或雙引號開始和結束;
- Null:null。
六.運算符
下表羅列出了JSP常見運算符,優先級從高到底:
類別 | 操作符 | 結合性 |
---|---|---|
後綴 | () [] . (點運算符) | 左到右 |
一元 | ++ - - ! ~ | 右到左 |
可乘性 | * / % | 左到右 |
可加性 | + - | 左到右 |
移位 | >> >>> << | 左到右 |
關系 | > >= < <= | 左到右 |
相等/不等 | == != | 左到右 |
位與 | & | 左到右 |
位異或 | ^ | 左到右 |
位或 | | | 左到右 |
邏輯與 | && | 左到右 |
邏輯或 | || | 左到右 |
條件判斷 | ?: | 右到左 |
賦值 | = += -= *= /= %= >>= <<= &= ^= |= | 右到左 |
逗號 | , | 左到右 |
鏈接引用:
[runoob]:http://www.runoob.com/jsp/jsp-syntax.html
【JSP】(一)JSP基礎語法