我的标签有问题。
List<Book> searchResultList = bookService.searchBook(bookBean.getSearchText());
ModelAndView modelView = new ModelAndView("searchResults");
if (null!=searchResultList)
{
modelView.addObject("searchResultList", searchResultList);
System.out.println("========"+searchResultList.get(0).getBookTitle());
return new ModelAndView("searchResults");
}
<c:forEach items="${searchResultList}" var="res">
<p>${res.bookTitle}</p>
</c:forEach>
我能够在控制器代码中打印记录。 但它不是从JSP打印出来的。 我通过论坛搜索,尝试了不同的解决方案,但无法解决。
感谢您的任何帮助。
答案 0 :(得分:0)
我认为你的foreach循环中存在一些语法错误。请尝试以下代码段:
<c:forEach items="${searchResultList}" var="res">
<p><c:out value="${res.bookTitle}" /></p>
</c:forEach>
此外,您还必须在JSP页面中包含以下标记库。
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
如果遇到问题,请告诉我。
您的代码存在问题。将ArrayList
打印为System.out.println("========...
后,当您返回ModelAndView
对象时,您将创建一个新对象,这将返回一个新对象,而不是您要设置{{1}的对象对象。
请返回ArrayList
变量。请参阅下面的代码段:
modelView
在pom.xml文件中添加if (null!=searchResultList){
modelView.addObject("searchResultList", searchResultList);
return modelView;
}
依赖项。保持版本与其他Spring模块依赖项相同。请参阅下面的代码段:
spring-expression