今天简单做了一个SSM框架的分页查询
action代码:
private static final Integer MAX=4;
private Integer page=1;
private Integer endpage;
private List<Person> personList;
private PersonService personService;
public Integer getPage() {
return page;
}
public void setPage(Integer page) {
this.page = page;
}
public Integer getEndpage() {
return endpage;
}
public void setEndpage(Integer endpage) {
this.endpage = endpage;
}
public List<Person> getPersonList() {
return personList;
}
public void setPersonList(List<Person> personList) {
this.personList = personList;
}
public static Integer getMax() {
return MAX;
}
public PersonService getPersonService() {
return personService;
}
public void setPersonService(PersonService personService) {
this.personService = personService;
}
public String queryList()
{
Integer RowCount = personService.queryAllPersonRowCount();
endpage= RowCount%MAX==0?RowCount/MAX:RowCount/MAX+1;
if(page<1){
page=1;
}
if(page>endpage){
page=endpage;
}
Integer start = (page-1)*MAX+1;
this.personList = this.personService.queryPersonByPage(start, MAX);
for(Person p:personList)
{
System.out.println("ps_name:"+p.getPs_name());
}
return SUCCESS;
}
然后是mybatis代码
<select id="queryPersonByPage" parameterType="java.util.Map" resultType="com.java.bean.Person" >
select ps_name,ps_username,ps_password,ps_sex,ps_phone,ps_age,ps_birthday,ps_comment from (
select t_person.*, row_number()over (order by rowid)rn from t_person) where rn between #{start} and #{end}
</select>
下面是jsp页面代码:
<p class="paging">
<s:if test="%{page == 1}">
<<首页 <上一页
</s:if>
<s:else>
<<<a href="queryPerson!queryList?page=1">首页</a> <
<a href="queryPerson!queryList?page=${page-1}">上一页</a>
</s:else>
<strong>第${page}页/共${endpage}页</strong>
<s:if test ="%{page == endpage}">
下一页 >末页 >>
</s:if>
<s:else>
<a href="queryPerson!queryList?page=${page+1}"> 下一页 ></a>
<a href="queryPerson!queryList?page=${endpage}">末页 >></a>
</s:else>
<%-- <form action="queryPerson!queryList?page=${skip}" method="get">
<input type ="text" maxlength="5" name="skip" width="20px" height="20px">
<input type ="submit" value = "跳转">
</form> --%>
<input type ="text" maxlength="5" name="skip" id="skip" width="20px" height="20px" >
<input type ="submit" value = "跳转" onclick="pageSkip()" >
</p>
简单的分页查询大致就是以上步骤