mybatis分页,绝对路径的2种写法

共四步,

1.下载jar包,maven的坐标为

<dependency>
    <groupId>com.github.pagehelper</groupId>
    <artifactId>pagehelper</artifactId>
    <version>5.0.4</version>
</dependency>

 

2. 在mybatis-config.xml里面加入分页插件,注意xml的命名空间顺序,一般他在最后。

  <plugins>
        <plugin interceptor="com.github.pagehelper.PageInterceptor">
            <!--分页参数合理化  -->
            <property name="reasonable" value="true"/>
        </plugin>
    </plugins>

3.在需要引入分页的controller类中,实现他。在查询之前,先设置他的分页的第几页,和分页的大小。在查询后,把他包含到一个pageinfo对象中,并设置好导航条有几个。再返回给springmvc即可。

@RequestMapping("/getAdmins")
    public String getAdmins(@RequestParam(value="pn",defaultValue = "1")  Integer pn,Model model) {
        
        PageHelper.startPage(pn, 10);
        List<Admin> admins = adminService.getAdmins();
        PageInfo<Admin> page =  new PageInfo<Admin>(admins, 7);
        model.addAttribute("pageinfo", page);
        
        return "getAdmins";
    }

4.在前端jsp页面显示,可以简单的用${pageinfo},显示一下所有信息。具体的可以看

<c:forEach items="${pageinfo.list }" var="admins">
<tr>
<td>${admins.id }</td>
<td>${admins.name }</td>
<td>${admins.password }</td>
<td>${admins.email }</td>

<td>${admins.lockFlag }</td>
<td>${admins.role }</td></tr>
</c:forEach>

</table>
共${pageinfo.pages }页
<c:forEach items="${pageinfo.navigatepageNums }" var="nums">
<a href="${pageContext.request.contextPath }/getAdmins?pn=${nums}">${nums }</a>
</c:forEach>

另外在地址导航中如果用全路径导航

一般有两个方法,一个是

<a href="${pageContext.request.contextPath }/abc.jsp“>abc</a>

另一种是

<%   pageContext.setAttribute("APP_PATH", request.getContextPath()); %>

然后再引用他,如:

<script type="text/javascript"  src="${APP_PATH }/static/js/jquery-1.12.4.min.js"></script>

posted @ 2019-12-06 15:11  琴声清幽  阅读(479)  评论(0编辑  收藏  举报