首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計綜合問答

JSP 獲取 URL 參數:EL 表達式必須用 param 隱含對象

     編輯:程式設計綜合問答

問題

訪問 https://localhost:8085/test/jsapi.jsp?apple=1,頁面用 ${apple} 取不到值,但另一個項目 https://localhost:8085/my_account/confirmOrder?apple=1 卻能取到。

原因

EL 表達式 ${apple} 查找順序:Page → Request → Session → Application 域屬性,**不會自動查詢請求參數**。另一個項目能取到,是因為 Controller/Servlet 顯式做了 request.setAttribute("apple", ...)。

正確寫法

${param.apple}        
${paramValues.apple}  
${param['apple']}     

param 是 JSP 隱含對象,封裝 request.getParameterMap()。

最佳實踐

  • 後端控制器統一將請求參數設置為請求屬性:request.setAttribute("apple", request.getParameter("apple")),前端才能用 ${apple}。
  • 或直接在 JSP 用 ${param.apple},無需後端額外代碼。

記住:**EL 取參數必須帶 param. 前綴。**

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved