C語言中文網 目錄
JSP教程
1 JSP是什么
2 JSP的特點與工作流程
3 JSP與ASP、PHP的比較
4 JSP頁面的組成及其元素
5 JSP開發環境搭建
6 第一個JSP程序
7 JSP注釋
8 JSP聲明
9 JSP中嵌入Java代碼
10 JSP表達式
11 JSP開發模式
12 JSP常見錯誤
13 JSP指令
14 JSP page指令
15 JSP include指令
16 JSP指令應用實例
17 JSP動作
18 JSP include動作
19 JSP param動作
20 JSP forward動作
21 JSP plugin動作
22 JSP useBean動作
23 JSP setProperty動作
24 JSP getProperty動作
25 JSP application 對象
26 JSP out對象
27 JSP request對象
28 JSP response對象
29 JSP session對象
30 JSP pageContext對象
31 JSP page對象
32 JSP config對象
33 JSP獲取并顯示字符串長度
34 什么是JavaBean
35 JavaBean工具
36 JavaBean規范
37 JavaBean屬性
38 JavaBean Scope屬性
39 JavaBean事件
40 JavaBean實現用戶登錄界面
41 Servlet是什么
42 Servlet生命周期
43 Servlet的類和方法
44 Servlet客戶端跳轉
45 EL是什么
46 EL表達式的基本語法及運算符的優先級
47 JSP EL 點(.)運算符和下標([])運算符
48 JSP EL算數運算符
49 JSP EL關系運算符
50 JSP EL邏輯運算符
51 JSP EL條件運算符
52 JSP EL empty空運算符
53 EL表達式中的常量與變量
54 EL表達式的保留字
55 EL表達式的內置對象及其作用域
56 使用EL表達式訪問JavaBean
57 使用EL表達式訪問集合
58 EL表達式內置對象param和paramValues
59 EL表達式內置對象cookie
60 EL表達式內置對象initParam
61 JDBC 的定義及產品組件
62 建立JDBC連接
63 利用JDBC發送SQL語句
64 JDBC API ResultSet接口
65 JDBC RowSet接口
66 JDBC BaseRowSet類和CachedRowSet類
67 填充CachedRowSet對象記錄集
68 File類
69 使用字節流讀/寫文件
70 RandomAccessFile 類
71 JSP文件上傳
72 XML是什么
73 XML的基本語法
74 JDK 中的 XML API
75 DOM解析XML
76 SAX解析XML
77 DOM4j解析XML
首頁 > JSP教程 閱讀:373

EL表達式內置對象param和paramValues

除了 page、request、session 和 application 4 種內置對象作用域外,EL 表達式還定義了一些其他的內置對象,可以使用它們完成程序中數據的快速調用。其他的常用內置對象如表 1 所示,其中,比較常見的是 param、cookie、initParam 三種內置對象。

表1 其他常用內置對象
內置對象 說明
param 獲取單個表單參數
parmValues 獲取捆綁數組參數
cookie 獲取 cookie 中的值
initParam 獲取 web.xml 文件中的參數值

本文首先介紹 param 和 paramValues 對象,在后面的教程中我們再逐一介紹 cookie 對象和 initParam 對象。

param 對象用于獲取某個請求參數的值,它是 Map 類型,與 request.getParameter() 方法相同,在 EL 獲取參數時,如果參數不存在,則返回空字符串。param 對象的使用方法如下:

${param.username}


【例1】EL 表達式中 param 對象的使用。

在 param-1.jsp 頁面定義一個帶 username 和 userpassword 兩個參數的超級鏈接,鏈接到 param-2.jsp 上,在 param-2.jsp 上通過 EL 表達式接收這兩個參數。代碼如下:
<!--param-1.jsp-->
<%@ page contentType="text/html;charset=utf-8" %>
<html>
<body>
<a href="param-2.jsp?username=Mike&userpassword=888888" />
    鏈接到param-2.jsp頁面
</a>
</body>
</html>
<!--param-2.jsp-->
<%@ page contentType="text/html;charset=utf-8" %>
<html>
<body>
<h1>利用 param 對象獲得請求參數</h1>
<hr/>
<h3>${param.username}</h3>
<h3>${param.userpassword}</h3>
</body>
</html>

程序運行結果如圖 1 和圖 2 所示。

帶參數鏈接的頁面
圖1 帶參數鏈接的頁面

帶參數鏈接的頁面
圖2 參數通過param對象獲取

與 param 對象類似,paramValues 對象返回請求參數的所有值,該對象用于返回請求參數所有值組成的數組,如果想獲取某個請求參數的第一個值,可以使用如下代碼:
${paramValues.nums[0]}

【例1】通過 paramValues 對象獲取請求參數的值(paramValues.jsp):
<%@ page language="java"  contentType="text/html;charset=utf-8 " pageEncoding="utf-8" %>
<html>
<head></head>
<body style="text-align:center;">
<form action="${pageContext.request.contextPath}/info.jsp">
    num1:<input  type="text"  name="num"> <br>
    num2:<input  type="text"  name="num"> <br>
<br>
<input type="submit" value="提交" />&nbsp;&nbsp;
<input type="reset" value="重置" /> <p> <hr>
    num1:${paramValues.num[0]}<br>
    num2:${paramValues.num[1]}<br>
</form>
</body>
</html>

程序運行結果如圖 3 所示。

paramValues對象獲取請求參數的值
圖3 paramValues對象獲取請求參數的值

提示:

表單的 action 屬性也是一個 EL 表達式。${pageContext.request.contextPath} 等價于 <%=request.getContextPath()%>,或者可以說是 <%=request.getContextPath()%> 的 EL 版,意思就是取出部署的應用程序名,或者是當前的項目名稱。項目名稱是 pro01,在瀏覽器中輸入“http://localhost:8080/pro01/login.jsp”。${pageContext.request.contextPath} 或 <%=Tequest.getContextPath()%> 取出來的就是 /pro01,而代表的含義就是 http://localhost:8080。因此,項目中應該這樣寫:${pageContext.request.contextPath}/login.jsp。

精美而實用的網站,提供C語言C++STLLinuxShellJavaGo語言等教程,以及socketGCCviSwing設計模式JSP等專題。

Copyright ?2011-2018 biancheng.net, 陜ICP備15000209號

底部Logo