JSP/EL表达式

本文详细介绍了EL表达式和JSTL在Web开发中的使用方法,包括算数表达式、条件表达式、字符串运算表达式等,并通过实例展示了如何访问数组、JavaBean以及内置变量。此外,还讲解了JSTL的标签库及其用法,如`<c:choose>`、`<c:forEach>`等,并提供了具体的代码示例。

EL表达式/JSTL

EL表达式分类

1 算数表达式

2 条件表达式

3 字符串运算表达式

4 JSP标签函数

EL访问数组的语法:${ 数组变量名[ 序号] }

EL访问java.utl.Map的语法: ${ Map对象名.Key }

EL访问javaBean的语法:${ Bean名称.属性名称}

除了使用标签定义的变量JavaBean变量外,EL中还包括许多预先设定好的变量,称为内置变量,其变量名称和对应的类型如下

pageScope             java.util.Map

requestScope         java.util.Map

sessionScope         java.util.Map

applicationScope    java.util.Map

param                     String组成的Map

paramValues          String数组组成的Map

header                    String组成的Map

headerValues         String数组组成的Map

Cookie                    java.util.Map

initParam                java.util.Map

pageContext           javax.servlet.jsp.PageContext

标签库

JSP的tag包装在标签库里。

将标签库引进页面的语法是<%@  taglib prefix="前缀名称"  uri="标签库URL" %>

java standard tag  library(JSTL) 标准化的扩展标签库

JSTL扩展了内置标签库的内容

安装JSTL

http://tomcat.apache.org处 下载JSTL

下载后解压文件

将解压后的子目录lib中的standard.jar 和jstl.jar 复制到站点根目录\WEB-INF\lib目录里,如果lib目录下没有,则创建它

在页面中使用JSTL

JSTL的标签在使用前必须先将标签库引进页面中,使用<%@ taglib %>指令将需要使用到的某标签库引进,如:

<%@ taglib prefix="c" uri="/WEB-INF/tld/c.tld"%>

<%@ taglib prefix="c" uri = http://java.sun.com/jsp/jstl/core%>

 

JSTL 标签中一个<c:choose>,与java中的if else作用相同

<c:choose>

           <c:when test="${item.useFlag == 'Y' }" >

               <td width="20"><input type="checkbox" name="box" checked="checked" id="box${stat.index }" />

                </td>

           </c:when>

           <c:otherwise>

               <td width="20"><input type="checkbox" name="box" id="box${stat.index }"/>

               </td>

           </c:otherwise>

</c:choose>

 

JSTL标签中的一个

 <c:forEach var="line" items="${userDto.line }">

    <c:if test="${factory.displayLineCd == line.displayLineCd}">

        ${line.companyCd }

    </c:if>

</c:forEach>

 

JSTL中<c:forEach varStatus="status">属性值问题

<c:forEach varStatus="status">中 varStatus的属性值

${status.index }  输出行号,从0开始。

${status.count } 输出行号,从1开始。

 

current 当前这次迭代的项

index    当前这次迭代从0开始的迭代计数

count   当前这次迭代从1开始的迭代计数

first      用来表明当前这轮迭代是否为第一次迭代的标志

last      用来表明当前这轮迭代是否为最后一次迭代的标志

begin   begin属性值

end     end属性值

step     step属性值

 

 

 

 

 

 

 

   

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值