Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jsp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在JSP中编写这个JSTL for循环?找不到明确的方法:类java.lang.Math.min(长,整数)_Java_Jsp_Spring Boot_Jstl - Fatal编程技术网

如何在JSP中编写这个JSTL for循环?找不到明确的方法:类java.lang.Math.min(长,整数)

如何在JSP中编写这个JSTL for循环?找不到明确的方法:类java.lang.Math.min(长,整数),java,jsp,spring-boot,jstl,Java,Jsp,Spring Boot,Jstl,我有以下资料: <c:forEach var="i" begin="${Math.max(1,page-5)}" end="${Math.min(page+5,pages)}"> <a class="btn btn-primary" href="?page=${i}">${i+1}</a> </c:forEach> 但是Eclipse无法解析它。尝试使用pageNo变量名而不是page。变量名页面是问题所在。例如,

我有以下资料:

    <c:forEach var="i" begin="${Math.max(1,page-5)}" end="${Math.min(page+5,pages)}">
        <a class="btn btn-primary" href="?page=${i}">${i+1}</a>
    </c:forEach>

但是Eclipse无法解析它。

尝试使用
pageNo
变量名而不是
page
。变量名
页面
是问题所在。例如,以下工作:

<c:set var="pageNo" value="3"/>
<c:set var="pageCount" value="6"/>
<c:forEach var="i" begin="${Math.max(1, pageNo-5)}" end="${Math.min(pageNo+5, pageCount)}">
        <a class="btn btn-primary" href="?pageNo=${i}">${i+1}</a>
</c:forEach>


输出将每个数字显示为链接(带有HTML
标记):2 3 4 5 6 7



编辑:JSP 2.0规范中的注释:“变量名
页面
的类型为
java.lang.Object
,描述为:处理当前请求页面范围的此页面实现类的实例”。它是JSP页面中可用的隐式对象之一。

由于
pages
是类型
Integer
,请尝试
end=“${Math.min(page+5,pages.longValue())}”
您能不能只计算控制器中的值并添加到模型中?@Andreas谢谢,这很有效。哦,是的,但是我想我忘了提到我正在使用Spring Boot,在控制器方法的底部是
returnnewmodelandview(“displayURL”).addObject(“page”,page)。addObject(“pages”,page)页面
<c:set var="pageNo" value="3"/>
<c:set var="pageCount" value="6"/>
<c:forEach var="i" begin="${Math.max(1, pageNo-5)}" end="${Math.min(pageNo+5, pageCount)}">
        <a class="btn btn-primary" href="?pageNo=${i}">${i+1}</a>
</c:forEach>