zoukankan      html  css  js  c++  java
  • 测试

    Entity

    public class Entry {
        private int entryID;
        private boolean asDraft;
        private String title;
        private String content;
        
        
        /**
         * For further extension
         */
        private boolean setTop;
        
        /**
         * For further extension, make it easy to be searched by google
         */
        private String staticLinkURL;
    
        public int getEntryID() {
            return entryID;
        }
    
        public void setEntryID(int entryID) {
            this.entryID = entryID;
        }
    
        public boolean isAsDraft() {
            return asDraft;
        }
    
        public void setAsDraft(boolean asDraft) {
            this.asDraft = asDraft;
        }
    
        public String getTitle() {
            return title;
        }
    
        public void setTitle(String title) {
            this.title = title;
        }
    
        public String getContent() {
            return content;
        }
    
        public void setContent(String content) {
            this.content = content;
        }
    
        
        public boolean isSetTop() {
            return setTop;
        }
    
        public void setSetTop(boolean setTop) {
            this.setTop = setTop;
        }
    
        public String getStaticLinkURL() {
            return staticLinkURL;
        }
    
        public void setStaticLinkURL(String staticLinkURL) {
            this.staticLinkURL = staticLinkURL;
        }
        
        
    }

    Servlet

    import java.io.IOException;
    import java.util.List;
    
    import javax.servlet.ServletException;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    
    /**
     * Servlet implementation class PostsServlet
     */
    public class PostsServlet extends HttpServlet {
        private static final long serialVersionUID = 1L;
           
        /**
         * @see HttpServlet#HttpServlet()
         */
        public PostsServlet() {
            super();
            // TODO Auto-generated constructor stub
        }
    
        /**
         * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
         */
        protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
            String pageNumberStr = request.getParameter("pageNumber");
            int pageNumber = 1;
            if(pageNumberStr!=null && !pageNumberStr.isEmpty())
            {
                pageNumber = Integer.parseInt(pageNumberStr);
            }
            
            int pageSize = 10; //分页大小
            int totalPosts = PagingDAO.entryList.size(); //总文章数
            int totalPages = totalPosts/pageSize + ((totalPosts%pageSize)>0?1:0); //计算得出的总页数
            
            request.setAttribute("pageSize", pageSize);
            request.setAttribute("totalPosts", totalPosts);
            request.setAttribute("pageNumber", pageNumber);
            request.setAttribute("totalPages", totalPages);
            
            List<Entry> entryList = PagingDAO.getEntryList(pageNumber, pageSize);
            System.out.println("entryList:"+ entryList.size());
            request.setAttribute("entryList", entryList);
            
            request.getRequestDispatcher("index.jsp").forward(request, response);        
        }
    
    }

    dao

    import java.util.ArrayList;
    import java.util.List;
    
    public class PagingDAO {
    
        public static List<Entry> entryList = new ArrayList<Entry>();
    
        static {
            for (int i = 0; i < 116; i++) {
                Entry e = new Entry();
                e.setEntryID(i);
                e.setTitle("The title for the article " + i + " ");
                entryList.add(e);
            }
        }
    
        public static List<Entry> getEntryList(int pageNum, int pageSize) {
            System.out.println(pageNum+";"+pageSize);
            List<Entry> ret = new ArrayList<Entry>();
            int start = (pageNum - 1) * pageSize;
            int end = start + pageSize - 1;
            System.out.println(start+"-"+end);
            if (start >= entryList.size())
                return ret;
            
            for (int i = start; i <= end; i++) {
                if (i < entryList.size())
                    ret.add(entryList.get(i));
            }
            
            return ret;
        }
    }

    index.jsp

    <%@ page language="java" contentType="text/html; charset=UTF-8"    pageEncoding="UTF-8"%>
    <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
    
    page Size : ${pageSize}
    <br />
    Total Posts: ${totalPosts}
    <br />
    Total Pages: ${totalPages}
    <br />
    Current Page: ${pageNumber}
    <hr />
    
    <table>
        <thead>
            <tr align="center">
                <td width="10%">Article ID</td>
                <td width="70%">Article Title</td>
                <td colspan="3">Actions</td>
            </tr>
        </thead>
        <tbody>
            <c:forEach items="${entryList}" var="entry">
                <tr align="center">
                    <td>${entry.entryID}</td>
                    <td>${entry.title}</td>
                    <td><a href="viewEntry?entryID=${entry.entryID}">View</a></td>
                    <td><a href="editEntry?entryID=${entry.entryID}">Edit</a></td>
                    <td><a href="deleteEntry?entryID=${entry.entryID}">Delete</a></td>
                </tr>
            </c:forEach>
        </tbody>
        <tfoot>
            <tr align="center">
                <td colspan="5">
                    <jsp:include page="paging_footer.jsp"></jsp:include>
                </td>
            </tr>
        </tfoot>
    </table>
    
    <hr/>

    paging_footer.jsp

    <%@ page language="java" contentType="text/html; charset=UTF-8"    pageEncoding="UTF-8"%>
    <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
    
    <script type="text/javascript">
    function gotoSelectedPage()
    {
        var x = document.getElementById("navigatorForm");
        //alert("Original action: " + x.action)
        x.submit();
    }
    </script>
    <form action="Posts" method="get" id="navigatorForm">
        <a href="Posts?pageNumber=1">首页</a> 
        <c:if test="${pageNumber>1}">
            <a href="Posts?pageNumber=${pageNumber-1}">上一页</a>
        </c:if> 
        跳转到第 <select name="pageNumber" onchange="gotoSelectedPage();">
        <c:forEach begin="1" end="${totalPages}" step="1" var="pageIndex">
            <c:choose>
                <c:when test="${pageIndex eq pageNumber}">
                    <option value="${pageIndex}" selected="selected">${pageIndex}</option>
                </c:when>
                <c:otherwise>
                    <option value="${pageIndex}">${pageIndex}</option>
                </c:otherwise>
            </c:choose>
        </c:forEach>
        </select><c:if test="${pageNumber<totalPages}">
            <a href="Posts?pageNumber=${pageNumber+1}">下一页</a>
        </c:if> 
        <a href="Posts?pageNumber=${totalPages}">末页</a>
    </form>
  • 相关阅读:
    安卓中期小作业
    安卓大作业UI预定搞
    实验3
    实验一总结
    实验8 SQLite数据库操作
    实验6 在应用程序中播放音频和视频
    实验4 颜色、字符串资源的使用
    实验四
    实验三
    实验二
  • 原文地址:https://www.cnblogs.com/chenyongblog/p/3601572.html
Copyright © 2011-2022 走看看