【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; /** 消息内容 */
}

返回样式:image

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";
}

image

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;
}

image

posted @ 2024-10-28 15:01  陆陆无为而治者  阅读(22)  评论(0编辑  收藏  举报