JSP标签 jstl 的常用方法

简介:

使用Java Web开发时,会经常使用jstl,它是一个轻量级的标签库,不像struts2 那样庞大.

现在总结jstl的常用场景

(1)如何在页面中引入jstl库

Java代码   收藏代码
  1. <%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>  
  2. <%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions"%>  

 

(2)截取字符串

Java代码   收藏代码
  1. <td>${fn:substring(ordersDetail.toothOrders.inDate,0,19)   }</td>  

 

(3)判断用户是否已经登录

Java代码   收藏代码
  1.  <c:if test="${sessionScope.logined!=null && sessionScope.user.role_id=='1'}">  
  2.             <a href="<%=path%>/orders/export" class="daoc"  onclick="return com.whuang.hsj.confirmDelete('确定要导出吗?')"  >导 出(快)</a>&nbsp;  
  3. <a href="<%=path%>/orders/exportSlow" class="daoc"  onclick="return com.whuang.hsj.confirmDelete('确定要导出吗(包含产品详情)?')" >导 出(慢)</a>  
  4. </c:if>  

 

(4)判断变量

Java代码   收藏代码
  1. <c:choose>  
  2.           
  3.                     <c:when test="${view.totalRecords==0}"><font color="#df625c">0</font> </c:when>  
  4.                     <c:otherwise>  
  5.                         ${view.totalRecords }  
  6.                     </c:otherwise>  
  7.                 </c:choose>  
  8.   
  9. <c:choose>  
  10.                     <c:when test="${fn:length(ordersDetail.valid)==0 ||fn:length(fn:trim(ordersDetail.valid))==0 }">无</c:when>  
  11.                     <c:otherwise>${ordersDetail.valid }</c:otherwise>  
  12.                 </c:choose>  

 (5)c:forEach 的begin 是从零开始的

注意:c:forEach 的begin 不是从1 开始的

Java代码   收藏代码
  1. <table class="frontproductTable" >  
  2. <tr>  
  3. <c:forEach  begin="1" end="2"   varStatus="status">  
  4. <td class="frontproduct" >  
  5.                 <table  cellspacing="0" border="0">  
  6.                         <c:forEach var="orders" begin="${(status.count-1)*5 }" end="${(status.count)*5-1 }"  items="${view.recordList}"  
  7.                             varStatus="status">  
  8.                             <tr>  
  9.                                 <td rowspan="1">  
  10.                                 <a href="<%=path%>/index/product_detail?id=${orders.id }" >  
  11.                                 <img width="280px" alt=""  
  12.                                     src="<%=path%>${orders.picPath }" style="width:300px; height:300px; margin:0 20px 10px 10px; border:1px solid #ccc; float:left;">  
  13.                                 </a>  
  14.                                 </td>  
  15.                                 <td rowspan="1">  
  16.                                     <table  >  
  17.                                       
  18.                                       
  19.                                         <tr>  
  20.                                             <td valign="top"><strong>产品名称:</strong></td>  
  21.                                             <td>${orders.itemname }</td>  
  22.                                         </tr>  
  23.                                           
  24.                                         <tr>  
  25.                                             <td colspan="2" ><strong>产品详情:</strong></td>  
  26.                                               
  27.                                         </tr>  
  28.                                         <tr>  
  29.                                               
  30.                                             <td colspan="2" >${orders.desc }</td>  
  31.                                         </tr>  
  32.                                     </table>  
  33.                                 </td>  
  34.                             </tr>  
  35.                         </c:forEach>  
  36.   
  37.   
  38.   
  39.                     </table></td>  
  40.   
  41. </c:forEach>  
  42.     </tr>  
  43. </table>  

 

(6)获取ArrayList的第一个元素

Html代码   收藏代码
  1. <div class="slider-item"><img src="<%=path%>${carouselDiagrams[0].picPath}"/></div>  
  2.              <c:forEach var="carouselDiagram" begin="1" items="${carouselDiagrams}" varStatus="status">  
  3.          <div class="slider-item"><img id="img_id_${status.count}" />  </div>  
  4.          
  5.                 </c:forEach>  

 

(7)获取List的长度

Html代码   收藏代码
  1. <ul id="slider_nav">  
  2.                          <c:forEach begin="1" step="1"  end="${fn:length(carouselDiagrams) }" >  
  3.                            <li><a href="#"></a></li>  
  4.                            </c:forEach>  
  5.                          </ul>  

注意:fn:length 在<%@ taglib prefix="fn" uri="http://Java.sun.com/jsp/jstl/functions"%>中.

 (8)让c:forEach 按照顺序输出

Html代码   收藏代码
  1. <c:forEach    begin="1" step="1"  end="${fn:length(list) }" varStatus="status" >  
  2.         <li>  
  3.          <label>${list[status.count-1].description }:</label>  
  4.          ${list[status.count-1].value }   
  5.          <label>  </label>  
  6.      </li>  
  7.         </c:forEach>  

 (9)循环

Html代码   收藏代码
  1. <c:forEach      items="${commonDictionaries }" var="commonDictionary"  varStatus="status" >  
  2.                             <section  >  
  3.                                 <a href="#" ><h3>${commonDictionary.value } <span style="display: none" >></span> </h3></a>  
  4.                             </section>  
  5.                             </c:forEach>   

 

Html代码   收藏代码
  1. <c:forEach varStatus="status" items="${view.recordList }"  
  2.             var="paperNews">  
  3.             <li style="margin-right: 10px"><!--<a href="#"><img src="${paperNews.pic }"  
  4.                     alt="${paperNews.title }" class="alignleft" /></a>  
  5.                 <p>  
  6.                     <span>发表日期${paperNews.releaseTimeStr }</span> <a href="#">${paperNews.title }</a>  
  7.                 </p>  <span class="rating"><span style="width: 80%;"></span></span> -->  
  8.                 <img src="${paperNews.pic }" alt="${paperNews.title }" class="alignleft aHref"  onclick="tabSelect('<%=path%>/news/${paperNews.id }?1=1',this,false)"  />  
  9.                                     <h6 class="regular"><a  class="aHref" onclick="tabSelect('<%=path%>/news/${paperNews.id }?1=1',this,false)"  >${paperNews.title }</a></h6>  
  10.                                     <span class="meta">${paperNews.releaseTimeStr }   <!-- \\   <a href="#">World News.</a>   \\   <a href="#">No Coments.</a> --></span>  
  11.                                     <p>${fn:substring(paperNews.content,0,60)}...</p>  
  12.                 </li>  
  13.                   
  14.                   
  15.         </c:forEach>  

 

相关文章
|
4月前
|
SQL XML Java
JSP 教程 之 JSP 标准标签库(JSTL) 4
**JSP的JSTL是用于简化Web开发的标签库,包括核心、格式化、SQL、XML和函数5个部分。SQL标签库允许与数据库交互,如设定数据源、执行查询和更新,以及处理参数。例如, `&lt;sql:setDataSource&gt;` 定义数据源, `&lt;sql:query&gt;` 执行查询。通过使用JSTL,开发者能更整洁地处理JSP页面。**
37 8
|
4月前
|
XML SQL Java
JSP 教程 之 JSP 标准标签库(JSTL) 1
JSP的JSTL是用于简化页面逻辑的标签库,涵盖核心、格式化、SQL、XML和函数五大类标签。要安装,下载Apache的JSTL包,将jar文件放入WEB-INF/lib,tld文件复制到WEB-INF,并在web.xml中配置相应的taglib信息。JSTL促进了JSP页面的清洁和结构化。
30 5
|
4月前
|
XML SQL Java
JSP 教程 之 JSP 标准标签库(JSTL) 5
JSP的JSTL是用于简化JSP开发的标签库,包括核心、格式化、SQL、XML和函数五大标签集。XML标签库处理XML文档,如`&lt;x:out&gt;`显示XML数据,`&lt;x:parse&gt;`解析XML,`&lt;x:forEach&gt;`遍历节点。使用前需添加XercesImpl.jar和xalan.jar到Tomcat的lib目录。
31 6
|
4月前
|
XML SQL Java
JSP 教程 之 JSP 标准标签库(JSTL) 6
**JSP JSTL 摘要:** JSTL是JSP的标签库,包含核心、格式化、SQL、XML和函数5类标签。它用于执行常见任务,如迭代、条件判断和XML操作。JSTL函数库提供字符串处理函数,如`contains()`, `endsWith()`, `escapeXml()`等,方便XML和HTML处理。通过`&lt;%@ taglib %&gt;`导入,如`fn:trim()`用于去除字符串两端空白。
30 5
|
4月前
|
Java 应用服务中间件 Android开发
完成你的自定义JSP Tag标签-Basic Coustom Tag
完成你的自定义JSP Tag标签-Basic Coustom Tag
26 0
|
5月前
|
存储 XML SQL
jsp、EL表达式、Jstl使用
jsp、EL表达式、Jstl使用
|
5月前
|
Java 应用服务中间件
解决tomcat启动报错:无法在web.xml或使用此应用程序部署的jar文件中解析绝对的url [http:java.sun.com/jsp/jstl/core]
解决tomcat启动报错:无法在web.xml或使用此应用程序部署的jar文件中解析绝对的url [http:java.sun.com/jsp/jstl/core]
1063 1
|
5月前
|
Java
jsp页面中使用jstl标签报错:javax.servlet.jsp.JspTagException
jsp页面中使用jstl标签报错:javax.servlet.jsp.JspTagException
66 0
|
2月前
|
SQL Java 数据库
jsp中使用Servlet查询SQLSERVER数据库中的表的信息,并且打印在屏幕上
该博客文章介绍了在JSP应用中使用Servlet查询SQL Server数据库的表信息,并通过JavaBean封装图书信息,将查询结果展示在Web页面上的方法。
jsp中使用Servlet查询SQLSERVER数据库中的表的信息,并且打印在屏幕上
|
2月前
|
供应链 前端开发 Java
JSP+servlet+mybatis+layui服装库存管理系统(大三上学期课程设计)
这篇文章通过一个服装库存管理系统的实例,展示了在Spring Boot项目中使用Ajax、JSON、layui、MVC架构和iframe等技术,涵盖了注册登录、权限管理、用户管理、库存管理等功能,并提供了系统运行环境和技术要求的详细说明。
JSP+servlet+mybatis+layui服装库存管理系统(大三上学期课程设计)