web 通用的代码块
package com.ruoyi.common.core.controller;
import java.beans.PropertyEditorSupport;
import java.util.Date;
import java.util.List;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.web.bind.WebDataBinder;
import org.springframework.web.bind.annotation.InitBinder;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import com.ruoyi.common.constant.HttpStatus;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.core.page.PageDomain;
import com.ruoyi.common.core.page.TableDataInfo;
import com.ruoyi.common.core.page.TableSupport;
import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.common.utils.sql.SqlUtil;
/**
* web 层通用数据处理
*
* @author ruoyi
*/public class BaseController
{protected final Logger logger = LoggerFactory.getLogger(BaseController.class);
/**
* 将前台传递过去的日期格局的字符串,主动转化为 Date 类型
*/
@InitBinder
public void initBinder(WebDataBinder binder)
{
// Date 类型转换
binder.registerCustomEditor(Date.class, new PropertyEditorSupport()
{
@Override
public void setAsText(String text)
{setValue(DateUtils.parseDate(text));
}
});
}
/**
* 设置请求分页数据
*/
protected void startPage()
{PageDomain pageDomain = TableSupport.buildPageRequest();
Integer pageNum = pageDomain.getPageNum();
Integer pageSize = pageDomain.getPageSize();
if (StringUtils.isNotNull(pageNum) && StringUtils.isNotNull(pageSize))
{String orderBy = SqlUtil.escapeOrderBySql(pageDomain.getOrderBy());
PageHelper.startPage(pageNum, pageSize, orderBy);
}
}
/**
* 响应请求分页数据
*/
@SuppressWarnings({"rawtypes", "unchecked"})
protected TableDataInfo getDataTable(List<?> list)
{TableDataInfo rspData = new TableDataInfo();
rspData.setCode(HttpStatus.SUCCESS);
rspData.setMsg("查问胜利");
rspData.setRows(list);
rspData.setTotal(new PageInfo(list).getTotal());
return rspData;
}
/**
* 响应返回后果
*
* @param rows 影响行数
* @return 操作后果
*/
protected AjaxResult toAjax(int rows)
{return rows > 0 ? AjaxResult.success() : AjaxResult.error();}
/**
* 页面跳转
*/
public String redirect(String url)
{return StringUtils.format("redirect:{}", url);
}
}
分页
package com.ruoyi.common.core.page;
import com.ruoyi.common.utils.StringUtils;
/**
* 分页数据
*
* @author ruoyi
*/public class PageDomain
{
/** 以后记录起始索引 */
private Integer pageNum;
/** 每页显示记录数 */
private Integer pageSize;
/** 排序列 */
private String orderByColumn;
/** 排序的方向 desc 或者 asc */
private String isAsc = "asc";
public String getOrderBy()
{if (StringUtils.isEmpty(orderByColumn))
{return "";}
return StringUtils.toUnderScoreCase(orderByColumn) + " " + isAsc;
}
public Integer getPageNum()
{return pageNum;}
public void setPageNum(Integer pageNum)
{this.pageNum = pageNum;}
public Integer getPageSize()
{return pageSize;}
public void setPageSize(Integer pageSize)
{this.pageSize = pageSize;}
public String getOrderByColumn()
{return orderByColumn;}
public void setOrderByColumn(String orderByColumn)
{this.orderByColumn = orderByColumn;}
public String getIsAsc()
{return isAsc;}
public void setIsAsc(String isAsc)
{this.isAsc = isAsc;}
}