大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

專注Java教育14年 全國咨詢/投訴熱線:400-8080-105
動力節(jié)點LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 hot資訊 SSM框架分頁的實現(xiàn)方法

SSM框架分頁的實現(xiàn)方法

更新時間:2021-06-24 13:38:53 來源:動力節(jié)點 瀏覽1531次

1.首先創(chuàng)建一個分頁的工具類

package cn.page.po; 
import java.io.Serializable; 
public class Page implements Serializable {
    private static final long serialVersionUID = -3198048449643774660L;        
    private int pageNow = 1; // 當(dāng)前頁數(shù)    
    private int pageSize = 4; // 每頁顯示記錄的條數(shù)    
    private int totalCount; // 總的記錄條數(shù)    
    private int totalPageCount; // 總的頁數(shù)    
    @SuppressWarnings("unused") 
    private int startPos; // 開始位置,從0開始         
    /**
     * 通過構(gòu)造函數(shù) 傳入  總記錄數(shù)  和  當(dāng)前頁
     * @param totalCount
     * @param pageNow
     */ 
    public Page(int totalCount, int pageNow) { 
        this.totalCount = totalCount; 
        this.pageNow = pageNow; 
    }        
    /**
     * 取得總頁數(shù),總頁數(shù)=總記錄數(shù)/每頁顯示記錄的條數(shù)  
     * @return
     */ 
    public int getTotalPageCount() { 
        totalPageCount = getTotalCount() / getPageSize(); 
        return (totalCount % pageSize == 0) ? totalPageCount  //總頁數(shù)
                : totalPageCount + 1; 
    }    
    public void setTotalPageCount(int totalPageCount) { 
        this.totalPageCount = totalPageCount; 
    }    
    public int getPageNow() { 
        return pageNow; 
    }    
    public void setPageNow(int pageNow) { 
        this.pageNow = pageNow; 
    }    
    public int getPageSize() { 
        return pageSize; 
    }    
    public void setPageSize(int pageSize) { 
        this.pageSize = pageSize; 
    }    
    public int getTotalCount() { 
        return totalCount; 
    }    
    public void setTotalCount(int totalCount) { 
        this.totalCount = totalCount; 
    } 
    /**
     * 取得選擇記錄的初始位置
     * @return
     */ 
    public int getStartPos() { 
        return (pageNow - 1) * pageSize; 
    }    
    public void setStartPos(int startPos) { 
        this.startPos = startPos; 
    }    
}

2.寫mapper.xml文件

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="cn.page.mapper.UserMapper">
<resultMap type="cn.page.po.User" id="userMap">
        <id property="id" column="id" />
        <result property="emplnumb" column="emplnumb" />
        <result property="username" column="username" />
        <result property="password" column="password" />
        <result property="address" column="address" />     
</resultMap>
    <!-- 分頁SQL語句 --> 
    <select id="selectUserByPage" resultMap="userMap"> 
        select * 
        from user limit #{startPos},#{pageSize}  
    </select> 
<!-- 取得記錄的總數(shù) --> 
<select id="getUserCount" resultType="long">
        SELECT COUNT(*) FROM user  
</select>
</mapper>

3.mapper接口

/**
 * 使用注解方式傳入多個參數(shù)
 * @param page
 * @return startPos},#{pageSize}
 */
public List<User> selectUserByPage(@Param(value="startPos") Integer startPos,
        @Param(value="pageSize") Integer pageSize); 
/**
 * 用戶總數(shù)
 */
public long getUserCount();

4.service接口與實現(xiàn)類

void showUserByPage(HttpServletRequest request,Model model); 
@Autowired
private UserMapper userMapper;
    @Override
    public void showUserByPage(HttpServletRequest request, Model model) {
        // TODO Auto-generated method stub
        String pageNow = request.getParameter("pageNow");            
        Page page = null;        
        List<User> user = new ArrayList<User>(); 
      //查詢用戶總數(shù)
        int totalCount = (int) userMapper.getUserCount();       
        if (pageNow != null) { 
            page = new Page(totalCount, Integer.parseInt(pageNow)); 
            user = this.userMapper.selectUserByPage(page.getStartPos(), page.getPageSize()); 
        } else { 
            page = new Page(totalCount, 1); 
            user = this.userMapper.selectUserByPage(page.getStartPos(), page.getPageSize()); 
        }        
        model.addAttribute("user", user); 
        model.addAttribute("page", page); 
    }

5.controller方法

@Controller
public class UserController {
    @Autowired
    private UserService userService;
    @RequestMapping("/pagingUser.action")
    public String pagingUser(HttpServletRequest request,Model model){
        userService.showUserByPage(request, model);
        return "pagingUser";         
    }
}

6.頁面顯示

<c:forEach items="${user }" var="user">
        <tr>
            <td>${user.emplnumb }</td>
            <td>${user.username }</td>
            <td>${user.address }</td>
            <td>${user.telephone }</td>
        </tr>
    </c:forEach>
</table> 
 <div align="center"> 
        <font size="2">共 ${page.totalPageCount} 頁</font> <font size="2">第 
            ${page.pageNow} 頁</font> <a href="${pageContext.request.contextPath}/pagingUser.action?pageNow=1">首頁</a> 
        <c:choose> 
            <c:when test="${page.pageNow - 1 > 0}"> 
                <a href="${pageContext.request.contextPath}/pagingUser.action?pageNow=${page.pageNow - 1}">上一頁</a> 
            </c:when> 
            <c:when test="${page.pageNow - 1 <= 0}"> 
                <a href="${pageContext.request.contextPath}/pagingUser.action?pageNow=1">上一頁</a> 
            </c:when> 
        </c:choose> 
        <c:choose> 
            <c:when test="${page.totalPageCount==0}"> 
                <a href="${pageContext.request.contextPath}/pagingUser.action?pageNow=${page.pageNow}">下一頁</a> 
            </c:when> 
            <c:when test="${page.pageNow + 1 < page.totalPageCount}"> 
                <a href="${pageContext.request.contextPath}/pagingUser.action?pageNow=${page.pageNow + 1}">下一頁</a> 
            </c:when> 
            <c:when test="${page.pageNow + 1 >= page.totalPageCount}"> 
                <a href="${pageContext.request.contextPath}/pagingUser.action?pageNow=${page.totalPageCount}">下一頁</a> 
            </c:when> 
        </c:choose> 
        <c:choose> 
            <c:when test="${page.totalPageCount==0}"> 
                <a href="${pageContext.request.contextPath}/pagingUser.action?pageNow=${page.pageNow}">尾頁</a> 
            </c:when> 
            <c:otherwise> 
                <a href="${pageContext.request.contextPath}/pagingUser.action?pageNow=${page.totalPageCount}">尾頁</a> 
            </c:otherwise> 
        </c:choose> 
    </div> 

以上就是動力節(jié)點小編介紹的"SSM框架分頁的實現(xiàn)方法",希望對大家有幫助,想了解更多可觀看SSM實戰(zhàn)視頻教程學(xué)習(xí),如有疑問,請在線咨詢,有專業(yè)老師隨時為您服務(wù)。

提交申請后,顧問老師會電話與您溝通安排學(xué)習(xí)

免費課程推薦 >>
技術(shù)文檔推薦 >>
主站蜘蛛池模板: 国产欧美曰韩一区二区三区 | 久久成人激情视频 | 日本精品视频在线 | 日本免费的一级v一片 | 欧美日韩国产在线成人网 | 精品久久久久久中文字幕专区 | 日本一级高清不卡视频在线 | 精品国产免费一区二区三区五区 | 亚洲人成绝费网站色ww | a亚洲欧美中文日韩在线v日本 | 福利视频不卡 | 激情亚洲综合网 | 美女福利视频一区二区 | 中文字幕不卡免费视频 | 麻豆精品久久久一区二区 | 青草久| a毛片在线还看免费网站 | 亚洲最大成人 | 亚洲免费在线视频播放 | 五月天中文字幕 | 久热免费 | 国产精品美女免费视频大全 | 在线麻豆 | 久青草国产视频 | 好色亚洲 | 精品在线一区二区三区 | 国内精品一级毛片免费看 | 日韩久久一级毛片 | 国产色吧 | 亚洲激情在线 | 寡妇一级a毛片免费播放 | 亚洲视频二区 | 你懂的国产 | 久久99热久久精品91 | 99精品国产久热在线观看66 | 亚洲国产精品二区久久 | 亚洲视频在线网站 | 亚洲精品国产第一区二区图片 | 久久精品国产线看观看亚洲 | 国产福利在线观看视频 | 日韩精品一区二区在线观看 |