最近接触到一些JSTL相关的,查阅了一些资料,备用,文章出处:http://blog.sina.com.cn/s/blog_66f4baca0100jakw.html
1.如果要显示的时间是String类型的,则得先将它转换成Date类型,在对Date类型的时间进行格式化,
因为JSTL只能对Date类型格式化,如果是其它类型就会出错.
建意:时间在数据库里以Date类型保存,而不要以String类型保存.
如下处理:
//先将String类型解析成Date类型,在对Date类型的数据进行格式化
<fmt:parseDate value="${sourceInfo.suploadtime}" var="date" pattern="yyyy-MM-dd HH:mm"/>
<fmt:formatDate value="${date}" pattern= "yyyy-MM-dd HH:mm"/>
2.计算两个参数的余数
<c:set value="${sourceInfo.supnum mod sourceInfo.sconcernnum}" var="scoresS" />
3.简单循环并显示数据
<c:forEach var="i" begin="1" end="${scoresS}" step="1">
<img src="<%=basePath%>/images/detail_r6_star1.gif"/>
</c:forEach>
4.if else的JSTL写法
<c:choose>
<c:when test="${sourceInfo.sconcernnum > 0}">
<c:set value="${sourceInfo.supnum mod sourceInfo.sconcernnum}" var="scoresS" />
<c:forEach var="i" begin="1" end="${scoresS}" step="1">
<img src="<%=basePath%>/images/detail_r6_star1.gif"/>
</c:forEach>
<font color="#FF6600"><b> ${scoresS }分</b></font>
</c:when>
<c:otherwise>
<font color="#FF6600"><b> 0分</b></font>
</c:otherwise>
</c:choose>
5.设置一个变量
<c:set value="${sourceInfo.supnum mod sourceInfo.sconcernnum}" var="scoresS" />
6.如何使用jstl判断集合是否为空
empty( 空串即""、不存在、没有值、 null 等多会被认为是空的 )
${user}为集合,user为集合名
<c:if test="${empty user}">无信息!</c:if>为空
<c:if test="${!empty user}">其它</c:if>非空
7.格式化数据
fmt:fomatNumber 格式化数字):<fmt:formatNumber value="${n}"/>
指定格式:
小数点后没加零 n(pattern="###,###.####"):
<fmt:formatNumber value="${n}" pattern="###,###.####"/>
小数点后会补零 n(pattern="###,###.0000"):
<fmt:formatNumber value="${n}" pattern="###,###.0000"/>
最大整数位和最小整数位 n(maxIntegerDigits="10" minIntegerDigits="9"):
<fmt:formatNumber value="${n}" maxIntegerDigits="10" minIntegerDigits="9"/>
最大小数点后位数和最小小数点后位数 n(maxFractionDigits="8" minFractionDigits="4"):
<fmt:formatNumber value="${n}" maxFractionDigits="8" minFractionDigits="4"/>
用c:forEach 中vaStatus的属性可以获得迭代的自身状态,如:
<c:forEach var="" items="" varStatus="status">
<c:out value="${status.index}"/> 此次迭代的索引
<c:out value="${status.count}"/> 已经迭代的数量
<c:out value="${status.first}"/> 是否是第一个迭代对象
<c:out value="${status.last}"/>
是否是最后一个迭代对象
</c:forEach