⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 paginatedallmemberscontroller.java

📁 一些很有用的spring的书籍
💻 JAVA
字号:
package com.apress.springbook.chapter08.web;

import java.util.List;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.springframework.web.bind.ServletRequestUtils;

import org.springframework.web.servlet.ModelAndView;

import org.springframework.web.servlet.mvc.AbstractController;

import org.displaytag.pagination.PaginatedList;

import org.displaytag.properties.SortOrderEnum;

import com.apress.springbook.chapter08.domain.Member;
import com.apress.springbook.chapter08.domain.MembershipService;

public class PaginatedAllMembersController extends AbstractController {

  private MembershipService membership;
  private static final int PAGE_LENGTH = 5;
  private int pageLength = PAGE_LENGTH;
    
  public PaginatedAllMembersController() {
    setSupportedMethods(new String[]{"GET"});
  }
    
  public void setPageLength(int pageLength) {
    this.pageLength = pageLength;
  }

  public void setMembershipService(MembershipService membershipService) {
    this.membership = membershipService;
  }

  @Override
  protected ModelAndView handleRequestInternal(HttpServletRequest request,
            HttpServletResponse response) throws Exception {
    final int pageNumber = ServletRequestUtils.getIntParameter(request, "page", 1);
    final String sortOrder = ServletRequestUtils.getStringParameter(request, "dir", "asc");
    final String sortCriterion = 
      ServletRequestUtils.getStringParameter(request, "sort", null);
        
    final List<Member> members = membership.getAllMembers(
                (pageNumber-1)*pageLength,
                pageLength, sortOrder, sortCriterion);
    final int numberMembers = membership.getNumberMembers();
        
    ModelAndView mav = new ModelAndView();
    mav.addObject("memberList", new PaginatedList() {

      public List getList() {
        return members;
      }

      public int getPageNumber() {
        return pageNumber;
      }

      public int getObjectsPerPage() {
        return pageLength;
      }

      public int getFullListSize() {
        return numberMembers;
      }

      public String getSortCriterion() {
        return sortCriterion;
      }

      public SortOrderEnum getSortDirection() {
        return sortOrder.equals("asc") ? SortOrderEnum.ASCENDING :
          SortOrderEnum.DESCENDING;
      }

      public String getSearchId() {
        return null;
      }
            
    });
    return mav;
  }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -