原创

JSP中表达式基本使用方法讲解

        JSP表达式语言(EL)使得访问存储在JavaBean中的数据变得非常简单。JSP EL既可以用来创建算术表达式也可以用来创建逻辑表达式。在JSP EL表达式内可以使用整型数,浮点数,字符串,常量true、false,还有null。在JSP标签中指定一个属性值时,只需要简单地使用字符串即可:

<jsp:setProperty name="box" property="perimeter" value="100"/>


JSP EL支持下表列出的隐含对象:

隐含对象           描述

pageScope page 作用域

requestScope request 作用域

sessionScope session 作用域

applicationScope application 作用域

param Request 对象的参数,字符串

paramValues Request对象的参数,字符串集合

header HTTP 信息头,字符串

headerValues HTTP 信息头,字符串集合

initParam 上下文初始化参数

cookie Cookie值

pageContext 当前页面的pageContext

可以在表达式中使用上述这些对象,就像使用变量一样。接下来会给出几个例子来更好的理解这个概念。


pageContext对象

pageContext对象是JSP中pageContext对象的引用。通过pageContext对象,您可以访问request对象。比如,访问request对象传入的查询字符串,就像这样:

${pageContext.request.queryString}


Scope对象

pageScope,requestScope,sessionScope,applicationScope变量用来访问存储在各个作用域层次的变量。

举例来说,如果您需要显式访问在applicationScope层的box变量,可以这样来访问:applicationScope.box。


param和paramValues对象

param和paramValues对象用来访问参数值,通过使用request.getParameter方法和request.getParameterValues方法。

举例来说,访问一个名为order的参数,可以这样使用表达式:${param.order},或者${param["order"]}。

接下来的例子表明了如何访问request中的username参数:

<%@ page import="java.io.*,java.util.*" %>
<%
    String title = "Accessing Request Param";
%>
<html>
<head>
<title><% out.print(title); %></title>
</head>
<body>
<center>
<h1><% out.print(title); %></h1>
</center>
<div align="center">
<p>${param["username"]}</p>
</div>
</body>
</html>

param对象返回单一的字符串,而paramValues对象则返回一个字符串数组。


header和headerValues对象

header和headerValues对象用来访问信息头,通过使用 request.getHeader方法和request.getHeaders方法。

举例来说,要访问一个名为user-agent的信息头,可以这样使用表达式:${header.user-agent},或者${header["user-agent"]}。

接下来的例子表明了如何访问user-agent信息头:

<%@ page import="java.io.*,java.util.*" %>
<%
    String title = "User Agent Example";
%>
<html>
<head>
<title><% out.print(title); %></title>
</head>
<body>
<center>
<h1><% out.print(title); %></h1>
</center>
<div align="center">
<p>${header["user-agent"]}</p>
</div>
</body>
</html>


JSP表达式用于向页面中输出信息,其语法格式如下:

<%= 表达式 %>

可以是任何Java语音的完整表达式。该表达式的最终运算结果将被转换为字符串。下面举一简单示例:

<html> 
<head> 
</head> 
<body> 
  <!-- 输出变量 --> 
  <% 
    String url = "www.yoodb.com"; 
  %> 
  素文宅官网:<%=url %> 
  <%="素文宅官网:" + url %> 
  <!-- 输出表达式计算结果 --> 
  <%=1 + 2%> 
  <!-- 执行Java代码 --> 
  <% 
    int x = 10; 
    out.println(x); 
  %> 
  <!-- 将表达式插入到HTML标记中--> 
  <% 
    String image = "logo.png"; 
  %> 
  <img src="images/<%=image %>" /> 
  <br> 
  <!-- 输出系统时间 --> 
  <%=new Date()%> 
  <!-- 执行多个片断 --> 
  <% 
    for (int i = 0; i < 5; i++) { 
  %> 
  <H2>http://blog.yoodb.com/</H2> 
  <% 
    } 
  %> 
</body> 
</html>

以上所述是本站为大家介绍的JSP表达式的基本使用方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,站长会及时回复大家的。在此也非常感谢大家对素文宅 - 博客频道网站的支持!

关注下方微信公众号“Java精选”(w_z90110),回复关键字领取资料:如HadoopDubboCAS源码等等,免费领取资料视频和项目。 

涵盖:程序人生、搞笑视频、算法与数据结构、黑客技术与网络安全、前端开发、Java、Python、Redis缓存、Spring源码、各大主流框架、Web开发、大数据技术、Storm、Hadoop、MapReduce、Spark、elasticsearch、单点登录统一认证、分布式框架、集群、安卓开发、iOS开发、C/C++、.NET、Linux、Mysql、Oracle、NoSQL非关系型数据库、运维等。

评论

分享:

支付宝

微信