欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 汽车 > 时评 > C标签和 EL表达式的在前端界面的应用

C标签和 EL表达式的在前端界面的应用

2025/2/24 21:58:12 来源:https://blog.csdn.net/m0_74124657/article/details/144311918  浏览:    关键词:C标签和 EL表达式的在前端界面的应用

目录

前言

常用的c标签有:

for循环

1 表示 普通的for循环的

2 常在集合中使用

表示 选择关系

 1 简单的表示如果   

2 表示如果。。否则。。

EL表达式

格式 :  ${属性名/对象/ 集合}


前言

本篇博客介绍 c标签和el表达式的使用

  • 使用C标签 要引入 jstl jar包 并且需要引入 jstl 的核心库
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>

大家如果需要可以从百度网盘自行获取

通过百度网盘分享的文件:常用jar包
链接:https://pan.baidu.com/s/13q5UqRhq1nwUgHwGhS_0Fw 
提取码:jpg1

应用场景

C标签一般应用在jsp 前端界面,需要写Java代码时

我们知道在jsp写Java代码是要<%  .....%> 是要在这里面写的

大家请看这段代码

<%Page<Userinfo> page1 = (Page<Userinfo>) request.getAttribute("page");for (int i = 0; i <page1.getPageSize(); i++) {
%><tr><td><input type="checkbox" name="id" value="<%=page1.getRecords().get(i).getId()%>"></td><td><%=i+1%></td><td><%=page1.getRecords().get(i).getName()%></td><td><%=page1.getRecords().get(i).getGender()%></td><td><%=page1.getRecords().get(i).getAge()%></td><td><%=page1.getRecords().get(i).getAddress()%></td><td><%=page1.getRecords().get(i).getQq()%></td><td><%=page1.getRecords().get(i).getEmail()%></td><td><a class="btn btn-default btn-sm" href="/users/checkUpdate?pageIndex=<%=page1.getPageIndex()%>&id=<%=page1.getRecords().get(i).getId()%>">修改</a>&nbsp;<a class="btn btn-default btn-sm" href="/users/delete?pageIndex=<%=page1%>&id=<%=page1.getRecords().get(i).getId()%>">删除</a></td></tr><%}
%>

这段代码的意思是:通过循环遍历的方式获得当前页的数据。

大家会发现jsp前端界面写Java代码 是很麻烦的,当我们写完Java代码 要切换到 写前端界面时,需要 %> 结束,才可以开始写前端代码。因此有没有更加简单的方式,又可以表达Java 代码的意思和可以在前端界面很好的展示呢?

答案:有的。使用jstl 标签

使用 jstl 标签 表示 遍历 获得当前页的数据

   <c:forEach items="${page.records}" var="user" varStatus="s"><tr><td><input type="checkbox" name="id" value="${user.id}"></td><td>${s.count}</td><td>${user.name}</td><td>${user.gender}</td><td>${user.age}</td><td>${user.address}</td><td>${user.qq}</td><td>${user.email}</td><td><a class="btn btn-default btn-sm" href="/users/checkUpdate?pageIndex=${page.pageIndex}&id=${user.id}">修改</a>&nbsp;<a class="btn btn-default btn-sm" href="/users/delete?pageIndex=${page.pageIndex}&id=${user.id}">删除</a></td></tr></c:forEach>

大家就会发现使用 jstl 标签之后,会更加方便,同时我们知道 jstl 标签的 前缀都是C开头的。因此也称之为C标签

常用的c标签有:

for循环

1 表示 普通的for循环的

格式

<c:forEach var="" begin="" end="" step=""> </c:forEach>

这里的var = “i"  在js 中表示 数据声明 变量 i , begin ="1" 表示初始值是1 end  表示不能大于end 后面跟着的值,step 表示每次循环 都加1 

我们可以对照for循环来理解   for(int i=0;i<10;i++){}

实例代码

  <c:forEach var="i" begin="1" end="${page.totalPage}" step="1"><c:choose><c:when test="${i==page.pageIndex}"><li class="active"><span>${i}</span></li></c:when><c:otherwise><li ><a href="/users/listByPage?pageIndex=${i}">${i}</a></li></c:otherwise></c:choose></c:forEach>

2 常在集合中使用

格式

<c:forEach items="" var="" varStatus=""> 。。。 </c:forEach>

这里 item 表示集合 对象  ,var 表示存储的集合的任意一个元素,varStatus 表示 行数

注意: 在表示行数时,count 从1 开始  ; index 从 0开始

我们可以对照 这个来理解:List<Integer> list=new ArrayList<>(); for (Integer i : list) { }

实例代码

  <c:forEach items="${page.records}" var="user" varStatus="s"><tr><td><input type="checkbox" name="id" value="${user.id}"></td><td>${s.index}</td><td>${user.name}</td><td>${user.gender}</td><td>${user.age}</td><td>${user.address}</td><td>${user.qq}</td><td>${user.email}</td><td><a class="btn btn-default btn-sm" href="/users/checkUpdate?pageIndex=${page.pageIndex}&id=${user.id}">修改</a>&nbsp;<a class="btn btn-default btn-sm" href="/users/delete?pageIndex=${page.pageIndex}&id=${user.id}">删除</a></td></tr></c:forEach>

表示 选择关系

 1 简单的表示如果   

​​​​​​​格式

<c:if test="">      </c:if>

实例代码

  <c:if test="${page.pageIndex<page.totalPage}"><li><a href="/users/listByPage?pageIndex=${page.pageIndex+1}" aria-label="Next"><span aria-hidden="true">&raquo;</span></a></li></c:if>

2 表示如果。。否则。。

​​​​​​​格式

<c:choose><c:when test=""></c:when><c:otherwise></c:otherwise>
</c:choose>

实例代码

  <c:choose><c:when test="${i==page.pageIndex}"><li class="active"><span>${i}</span></li></c:when><c:otherwise><li ><a href="/users/listByPage?pageIndex=${i}">${i}</a></li></c:otherwise></c:choose>

EL表达式

格式 :  ${属性名/对象/ 集合}

注意

本质上是 从 request或 session域甚至其他域中拿存储的数据

实例代码

 Page<Userinfo> page1 = (Page<Userinfo>) request.getAttribute("page");Integer pageSize = page1.getPageSize();

如果使用EL表达式

  ${requestScope.page.pageSize}

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词