【Java】若以框架(ruoyi-master)——10.BaseController源码了解
BaseController通用方法
Web层的通用数据。所有接口继承此方法。里面有一些各个接口会用到的通用方法。比如分页、返回消息、设置或获取一些登录信息,某些操作的时候,将日志写入或返回。
方法归类 | 方法名称 | 说明 |
---|---|---|
请求参数预处理 | initBinder() | 将前台传递过来的日期格式的字符串,自动转化为Date类型 |
分页相关方法 | startPage() | 设置请求分页数据 |
startOrderBy() | 设置请求排序数据 | |
clearPage() | 清理分页的线程变量 | |
返回相关方法 | getDataTable(List<?> ) | 响应请求分页数据 |
success() | 返回成功信息 | |
error() | 返回失败信息 | |
success(String) | 返回成功消息 | |
success(Object) | 返回成功消息 | |
error(String) | 返回失败消息 | |
error(Object) | 返回失败消息 | |
toAjax(int)/toAjax(boolean) | 响应返回结果 | |
登录相关方法 | redirect(String) | 页面跳转 |
getLoginName() | 获取登录用户名 | |
getUserId() | 获取登录用户Id | |
getSysUser() | 获取用户缓存信息 | |
setSysUser(SysUser) | 设置用户缓存信息 |
getDataTable 分析
getDataTable(List<?> list)
响应分页请求可以。
TableDataInfo对象
public class TableDataInfo {
private long total; /** 总记录数 */
private List<?> rows; /** 列表数据 */
private int code; /** 消息状态码 */
private String msg; /** 消息内容 */
}
返回样式:
AjaxResult 返回消息格式
public class AjaxResult extends HashMap<String, Object>{
/** 状态码 */
public static final String CODE_TAG = "code";
/** 返回内容 */
public static final String MSG_TAG = "msg";
/** 数据对象 */
public static final String DATA_TAG = "data";
}
BaseEntity
BaseEntity基类。其他demo继承他。(减少通用字段,时间格式的写入)
public class BaseEntity implements Serializable
{
/** 搜索值 */
@JsonIgnore
private String searchValue;
/** 创建者 */
private String createBy;
/** 创建时间 */
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date createTime;
/** 更新者 */
private String updateBy;
/** 更新时间 */
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date updateTime;
/** 备注 */
private String remark;
/** 请求参数 */
@JsonInclude(JsonInclude.Include.NON_EMPTY)
private Map<String, Object> params;
}
有志者,事竟成,破釜沉舟,百二秦关终属楚; 苦心人,天不负,卧薪尝胆,三千越甲可吞吴。