版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/flower_CSDN/article/details/81628015
后台
/**
* 跳转到最新上架页面
* @return
*/
@RequestMapping(value="newBookMore",method=RequestMethod.GET)
public String newBookMore(int currentPage,HttpServletRequest request) {
request.setAttribute("currentPage", currentPage);//传递总页数
Page<TBook> page=PageHelper.startPage(currentPage, 8);
List<TBook> newBookList=bookServ.orderByOnlineTime();
request.setAttribute("total", page.getPages());//传递总页数
//每本书作为键,值为对应的分类,Map集合具有去重性,如果将两者反过来,那么由于分类会重复,书就会被覆盖掉
Map<TBook,List<String>> bookMap=new HashMap<TBook,List<String>>();
for(TBook book:newBookList) {
List<String> typeList=typeServ.selectNameById(book.getId());
bookMap.put(book,typeList);
}
request.setAttribute("bookMap", bookMap);
// request.getServletContext().setAttribute("total", page.getTotal());
StringBuffer sb = new StringBuffer();
//通过循环构建分页条,在后台构建分页条以简化jsp页面
for(int i=1;i<=page.getPages();i++){
if(i==currentPage){ //判断是否为当前页
sb.append("『"+i+"』"); //构建分页条
}else{
sb.append("<a href='newBookMore?currentPage="+i+"'>"+i+"</a>"); //构建分页条
}
sb.append(" ");
}
request.setAttribute("pageBar", sb.toString());;
return "book/newBookMore";
}
Jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>最新上架</title>
<script type="text/javascript" src="jslib/jquery.js"></script>
<script type="text/javascript" src="js/newBookMore.js"></script>
<style>
.listTitle {
font: "微软雅黑";
font-style: oblique;
font-size: 29px;
color: coral;
margin: 0px 620px;
}
#page {
width: auto;
height: 20px;
margin-top: 20px;
margin-left: 1380px;
margin-bottom: 20px;
float: right;
}
#newBooks {
margin-top: 22px;
font-size: 10;
width: 100%;
height: 100%;
}
#mbook {
width: 20%;
float: left;
margin-left: 45px;
}
/*去除下划线*/
a {
TEXT-DECORATION: none
}
a.xh {
TEXT-DECORATION: none
}
a:hover.xh {
TEXT-DECORATION: underline
}
</style>
</head>
<body>
<div id="middle">
<span class="listTitle"><font><strong>最新上架</strong></font></span>
<div id="newBooks">
<c:if test="${bookMap.size()>0}">
<c:forEach items="${bookMap}" var="bookmap">
<div id="mbook">
<a href="bookDetail?bookId=${bookmap.key.id}"><img src="img/girl.jpg" width="85%" height="340px" /></a>
<font>
<br />书名:<a href="bookDetail?bookId=${bookmap.key.id}"> <<${bookmap.key.name}>></a>
<br />作者:<a href="">${bookmap.key.auth}</a>
<br />分类: <c:if test="${bookmap.value.size()>0}">
<c:forEach items="${bookmap.value}" var="type" varStatus="xh">
<a href="">${type}</a>
<!--xh.count从1开始,xh.index从0开始 -->
<c:if test="${xh.count!=bookmap.value.size()}">
<!-- 如果不是 最后一个元素,就加上逗号进行分隔-->
,
</c:if>
</c:forEach>
</c:if> <br />更新时间:<fmt:formatDate type="date"
value="${bookmap.key.onlinetime}" /> <br />简介:${bookmap.key.brief}
</font>
</div>
</c:forEach>
</c:if>
</div>
<div id="page">
<c:if test="${total>0}">
<a href="newBookMore?currentPage=1">首页</a>
</c:if>
<c:if test="${currentPage>1}">
<a href="newBookMore?currentPage=${currentPage-1}">上一页</a>
${pageBar}
<c:if test="${currentPage<total}">
<a href="newBookMore?currentPage=${currentPage+1}">下一页</a>
</c:if>
</c:if>
<c:if test="${currentPage<=1}">
${pageBar}
<c:if test="${currentPage<total}">
<a href="newBookMore?currentPage=${currentPage+1}">下一页</a>
</c:if>
</c:if>
<c:if test="${total>0}">
<a href="newBookMore?currentPage=${total}">末页</a>
</c:if>
</div>
</div>
</body>
</html>