枚举
package com.cc.member.base;
import lombok.AllArgsConstructor;
import lombok.Getter;
@Getter
@AllArgsConstructor
public enum ResultEnum {
SUCCESS(2000,"成功"),
ERROR(999,"失败");
private Integer Code;
private String Desc;
}
使用
package com.cc.member.base;
import com.alibaba.fastjson.JSON;
import lombok.Data;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.io.Serializable;
@Data
public class Result implements Serializable {
static Logger logger= LoggerFactory.getLogger(Result.class);
private static final long serialVersionUID = 1L;
/**
* 响应业务状态码
*/
private Integer code;
/**
* 是否正常
*/
private Boolean flag;
/**
* 响应信息
*/
private String message;
/**
* 响应中的数据
* */
private Object data;
public Result(Integer code, String message, Object data) {
this.code = code;
this.message = message;
this.data = data;
this.flag = code == ResultEnum.SUCCESS.getCode() ? true: false;
}
public static Result ok() {
return new Result(ResultEnum.SUCCESS.getCode(), ResultEnum.SUCCESS.getDesc(),
null);
}
public static Result ok(Object data) {
return new Result(ResultEnum.SUCCESS.getCode(), ResultEnum.SUCCESS.getDesc(),
data);
}
public static Result ok(String message, Object data) {
return new Result(ResultEnum.SUCCESS.getCode(), message, data);
}
public static Result error(String message) {
logger.debug("返回错误:code={}, message={}", ResultEnum.ERROR.getCode(), message); return new Result(ResultEnum.ERROR.getCode(), message, null);
}
public static Result build(int code, String message) {
logger.debug("返回结果:code={}, message={}", code, message); return new Result(code, message, null);
}
public static Result build(ResultEnum resultEnum) {
logger.debug("返回结果:code={}, message={}", resultEnum.getCode(), resultEnum.getDesc());
return new Result(resultEnum.getCode(), resultEnum.getDesc(), null);
}
public String toString() {
return JSON.toJSONString(this);
}
}
这个博客介绍了如何在Java中使用枚举(Enum)来定义业务状态,并创建了一个名为`Result`的响应对象,该对象包含了状态码、是否成功、响应信息和数据字段。`Result`类提供了静态工厂方法用于快速构建成功或错误的响应,同时具备将对象转换为JSON字符串的能力。
&spm=1001.2101.3001.5002&articleId=124338053&d=1&t=3&u=8ad4b9b921254163b598f160dfc5687b)
6066

被折叠的 条评论
为什么被折叠?



