zoukankan      html  css  js  c++  java
  • 分页处理

    package cn.xhsd.util.split;
    
    import javax.servlet.http.HttpServletRequest;
    
    import cn.xhsd.action.abs.AbstractAction;
    
    public class SplitUtil {
    	private int cp = 1;
    	private int ls = 3;
    	private String col;
    	private String kw;
    	private AbstractAction action;
    
    	
    	public SplitUtil(AbstractAction action) { // 取得公共的Action
    		this.action = action;
    	}
    
    	public void setCp(String cp) {
    		try {
    			this.cp = Integer.parseInt(cp);
    		} catch (Exception e) {
    		}
    	}
    
    	public void setLs(String ls) {
    		try {
    			this.ls = Integer.parseInt(ls);
    		} catch (Exception e) {
    		}
    	}
    
    	public void setCol(String col) {
    		if (col == null || "".equals(col)) {
    			this.col = this.action.getDefaultColumn();
    		} else {
    			this.col = col;
    		}
    	}
    
    	public void setKw(String kw) {
    		if ("".equals(kw) || kw == null) {
    			this.kw = "";
    		} else {
    			this.kw = kw;
    		}
    	}
    
    	public int getCurrentPage() {
    		return cp;
    	}
    
    	public int getLineSize() {
    		return ls;
    	}
    
    	public String getColumn() {
    		return col;
    	}
    
    	public String getKeyword() {
    		return kw;
    	}
     
    	/**
    	 * 将查询的数据和记录数据设置到页面中
    	 * @param request
    	 * @param allRecorders
    	 * @param url
    	 * @param paramA
    	 * @param valueA
    	 * @param paramB
    	 * @param valueB
    	 */
    	public void setAttribute(HttpServletRequest request, Object allRecorders,
    			String url, String paramA, Object valueA, String paramB,
    			Object valueB) {
    		
    		request.setAttribute("allRecorders", allRecorders);
    		request.setAttribute("url", url);
    		request.setAttribute("paramName", paramA);
    		request.setAttribute("paramValue", valueA);
    		request.setAttribute("paramNameB", paramB);
    		request.setAttribute("paramValueB", valueB);
    	}
    }
    
    
    
    /**
     * 专门抽取action中公有的属性或方法
     * @author fy
     * @version 1.0
     */
    public abstract class AbstractAction {
    
    	/**
    	 * SpringMVC 分页
    	 * @param request
    	 * @param currentPage
    	 * @param lineSize
    	 * @param column
    	 * @param keyWord
    	 * @param split
    	 */
    	public void handleSplit1(HttpServletRequest request,Integer currentPage,Integer lineSize,String column,String keyWord,SplitUtil split) {
    		split.setCp(String.valueOf(currentPage));
    		split.setLs(String.valueOf(lineSize));
    		split.setKw(keyWord);
    		split.setCol(column);
    		
    		
    		// 将这些内容传递到JSP页面上
    		request.setAttribute("currentPage", split.getCurrentPage());
    		request.setAttribute("lineSize", split.getLineSize());
    		request.setAttribute("column", split.getColumn());
    		request.setAttribute("keyWord", split.getKeyword());
    		request.setAttribute("columnData", this.getColumnData());
    	}
    
    
    	@RequestMapping("listBySplit")
    	public ModelAndView listBySplit( 
    			     @RequestParam(value="cp",defaultValue="1") Integer currentPage,
    			     @RequestParam(value="ls",defaultValue="3") Integer lineSize,
    			     @RequestParam(value="col",defaultValue="title") String column,
    			     @RequestParam(value="kw",defaultValue="") String keyWord,
    			     HttpServletRequest request
    			){
    		ModelAndView mav=new ModelAndView();
    		Map<String,Object> map = this.bikeBackService.listBySplit(currentPage,lineSize,column,keyWord);
    		@SuppressWarnings("unchecked")
    		List<Bike> allBikes=(List<Bike>)map.get("allBikes");
    		Integer allCounts=(Integer)map.get(("allCounts"));
    		
    		System.out.println("counts= "+allCounts);
    		
    		//此操作是将分页数据和筛选数据回填返回到页面
    		SplitUtil splitUtil = new SplitUtil(this);	
    		super.handleSplit1(request, currentPage, lineSize, column, keyWord, splitUtil);
    		//此操作是将查询的数据和记录数返回到页面
    		splitUtil.setAttribute(request, allCounts, "BikeBackAction/listBySplit.action", null, null, null, null);
    		mav.setViewName("/pages/bike/bike_list.jsp");
    		mav.addObject("allBikes",allBikes);
    		return mav;
    		
    	}
    

      

  • 相关阅读:
    Octave/Matlab初步学习
    week_3
    week_2
    week_1
    清除input[type=number]的默认样式
    js,获取和设置cookie、 localStorage
    php表单提交时获取不到post数据的解决方法
    console.log 简写
    JS合并两个数组的方法
    javascript ES5、ES6的一些知识
  • 原文地址:https://www.cnblogs.com/yuefeng123/p/8549198.html
Copyright © 2011-2022 走看看