javascript
jsp页面中JSTL/EL标签引用java后台静态static字段的方法总结
轉載自? ?jsp頁面中JSTL/EL標簽引用java后臺靜態static字段的方法總結
為什么使用該功能?
項目中的每個頁面都包含產品名稱、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%>” />
總結
以上是生活随笔為你收集整理的jsp页面中JSTL/EL标签引用java后台静态static字段的方法总结的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 电脑配置2015年(电脑配置2015)
- 下一篇: JSP JavaBean