1. 程式人生 > >jsp頁面中JSTL/EL標籤引用java後臺靜態static欄位的方法總結

jsp頁面中JSTL/EL標籤引用java後臺靜態static欄位的方法總結

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow

也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!

                       

為什麼使用該功能?


專案中的每個頁面都包含產品名稱、Logo、版本等資訊,我希望修改一處,其它所有的全部跟著變。
有同學會說那就都引用一個頁面“”就Ok了;但是我希望這些資訊都是可以通過後臺程式碼修改的,修改後儲存到資料庫和一個靜態類中;其實後臺直接讀寫這個引用 的頁面或者儲存到屬性檔案(properties)中也是可以的,我覺得還是存到資料庫中好一些。
還有同學會說直接使用“<%=com.xunge.base.constant.PlatInfo.title%>”就好了,但這個太長了,不容易記,每個頁面都引用這一長串的東西你不覺得煩麼?

可用的方法


方法一:
推薦使用此方法,首先在頁面中加入:
<% request.setAttribute(“title”, com.xunge.base.constant.PlatInfo.title); %>
之後就可以通過“${title}”來使用了。
方法二:
首先在頁面中加入:
<c:set var=”title” value=”<%=com.xunge.base.constant.PlatInfo.title%>” />
之後就可以通過“${title}”來使用了。
注意:百分號和等號之間不能有空格,否則將不會被解析,如下圖:
這裡寫圖片描述
也不會產生“

HTTP Status 500 - Unable to compile class for JSP:Syntax error on token “=”, @ expected”的錯誤;
方法三:
首先在頁面中加入:
<% String title = com.xunge.base.constant.PlatInfo.title; %>
之後就可以通過“${title}”來使用了。
但這個方法存在一個問題:
如果一個頁面中引用的多個jsp頁面中都包含該語句,那麼就會出現以下錯誤:
HTTP Status 500 - Unable to compile class for JSP:Duplicate local variable title

不可用的方法


直接使用以下語句是取不到值的,即使加入“<%@page import=”com.xunge.base.constant.PlatInfo” %>也無濟於事”:
${com.xunge.base.constant.PlatInfo.title}

下面這句百分號和等號有空格,是不會被解析的,是面說過了。
<c:set var=”title” value=”<% =com.xunge.base.constant.PlatInfo.title%>” />

           

給我老師的人工智慧教程打call!http://blog.csdn.net/jiangjunshow

這裡寫圖片描述