做一个搜索功能的,根据输入的条件每次读取10条数据来显示,一个JSP显示页面和一个Servlet,现在是搜索出来了点下一页之后输入的条件没了直接查询全部了,输入的条件怎么也保存不下来,我是把输入的条件放到session中的,在页面的文本框中一直显示,但是点下一页返回Servlet,在执行查询就取不到值了
     怎么才能实现搜索出来能点下一页的,显示全部的上下页做好了   绝对新手,给点意见啊,指导指导啊

解决方案 »

  1.   

    分頁可以查一次,然後每次部分顯示,另一種就是一次只查分頁內容。
    不管是哪一種,都必須記住查詢條件。最簡單的方法就是把查詢條件寫在查詢欄位,按下一頁時,除了帶查詢條件,還多帶分頁頁碼。
    要注意的是如果查詢條件改變了,要回到第一頁。不想自己做分頁的話,AJAX的方法可以用ExtJs等有表格分頁處理的套件,server端的有
    displayTag 或 eXtremeTable  可用。
      

  2.   

    看你SQL怎么写的了
    select top 5* from Type where id not in(select id from Type where id=(5*1))
    大概是这样 你下去好好研究下
      

  3.   


    //page一页显示几条数据 newPage是当前页数
    public List<Object> search(int page,int newPage) {
         int pageSize = 0;
          if (newPage > 1) {
               pageSize = page*(newPage - 1);
          }
        String sql = "select top "+ page +"* from Type where 
                      id not in(select top "+pageSize+" id from Type order by 一般以时
                         间排序)order by 一般以时间排序";
    }
    //总数
    /page一页显示几条数据
    public int count(int page) {
           String sql = "select count(0) as pageSize";
           当得到总数pageCount后
            int count = pageCount / page;
           if (pageCount % page != 0) {
               count += 1;
           }
          reutrn count;
     }在servlet里判断
        int page = 1;
        if (null != request.getParameter("page")) {
           page = request.getParameter("page");  // 这是你上一页下一页传来的值
        }
      
       int newPage =  page + 1;//下一页
       if (newPage >= count) { //count是count()的返回值
          newPgae = count;
       } 
       int nextPage = page;  //上一页
       if (paeg > 1) {
          nextPage = page - 1;
       }