@RequestMapping("")
public String list(Model model, HttpServletRequest request) {
String sqlId = "";
// list = (sqlId, (request));
Page<Object> list = (Page<Object>) (sqlId, (request));
// ("list", new PageInfo(list));
("pageNum", ());
("pages", ());
("list", list);
return "menu/list";
}
@SuppressWarnings("unchecked")
public static <E> List<E> selectListByPage(String sqlId,Object parameter){
Map<String, Object> map = (Map<String, Object>) parameter;
String page = (String) ("page");
int pageNum = 1;
if(page != null && ().length() != 0){
pageNum = (page);
}
(pageNum, , true);
List<Object> result = getSqlSession(sqlId).selectList(sqlId, parameter);
return dealMapResult(result);
}
<c:forEach items="${list}" var="item">
<tr id='<c:out value="${}"/>' align="left">
<td><c:out value="${}"/></td>
<td><c:out value="${}"/></td>
<td><c:out value="${}"/></td>
<td><c:out value="${}"/></td>
<td><c:out value="${}"/></td>
<td><c:out value="${}"/></td>
<td><c:out value="${}"/></td>
<td οnclick='goEdit(<c:out value="${}"/>)'>编辑</td>
<td οnclick='doDelete(<c:out value="${}"/>)'>删除</td>
</tr>
</c:forEach>
<tfoot>
<tr>
<td colspan="9" align="center" class="p">
<c:if test="${pageNum != 1}">
<a href="?query=a&page=${pageNum - 1}">上一页</a>
</c:if>
<c:if test="${pages != 1}">
<c:forEach var="pageIndex" begin="1" end="${pages}">
<c:choose>
<c:when test="${pageNum == pageIndex}">
<a>${pageIndex}</a>
</c:when>
<c:otherwise>
<a href="?query=a&page=${pageIndex}">${pageIndex}</a>
</c:otherwise>
</c:choose>
</c:forEach>
</c:if>
<c:if test="${pageNum != pages}">
<a href="?query=a&page=${pageNum+1}">下一页</a>
</c:if>
</td>
</tr>
</tfoot>
<plugins>
<!-- packageName为PageHelper类所在包名 -->
<plugin interceptor="">
<property name="dialect" value="mysql"/>
</plugin>
</plugins>
统一返回值为
Page<E>
(可以直接按
List
使用),方便在页面使用EL表达式,如
${}
,
${}
对这种方式使用,一种是如果直接用Page包装list,还要单独get出来,再设置回去("pageNum", ());
第二种是使用PageInfo对list再包装一次,页面就可以直接使用("list", new PageInfo(list));
Mybatis_PageHelper