Maven
Lombok项目是一个Java库,它会自动插入您的编辑器和构建工具中,从而为您的Java增光添彩。
永远不要再编写另一个getter或equals方法,带有一个注释的类将具有功能全面的生成器,自动执行日志记录变量等等。
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<optional>true</optional>
</dependency>
源代码
package com.zstu.metrocity.dto;
import lombok.Data;
/**
* @Author ShenTuZhiGang
* @Version 1.0.0
* @Date 2020-02-10 12:51
*/
@Data
public class ResponseBean {
private Integer status;
private String msg;
private Object data;
public static ResponseBean build() {
return new ResponseBean();
}
public static ResponseBean ok(String msg) {
return new ResponseBean(200, msg, null);
}
public static ResponseBean ok(String msg, Object obj) {
return new ResponseBean(200, msg, obj);
}
public static ResponseBean error(String msg) {
return new ResponseBean(500, msg, null);
}
public static ResponseBean error(String msg, Object obj) {
return new ResponseBean(500, msg, obj);
}
private ResponseBean() {
}
private ResponseBean(Integer status, String msg, Object obj) {
this.status = status;
this.msg = msg;
this.data = obj;
}
}
基于Builder模式
import com.*.web.common.ResponseBeanMessage;
import lombok.Builder;
import lombok.Data;
import java.io.Serializable;
/**
* Response Bean
* @author ShenTuZhiGang
* @version 1.1.0
* @date 2020-02-10 12:51
*/
@Data
@Builder
public class ResponseBean implements Serializable {
private Integer status;
private String msg;
private Object data;
public static ResponseBean success(){
return success(ResponseBeanMessage.SUCCESS);
}
public static ResponseBean success(String msg) {
return success( msg, null);
}
public static ResponseBean success(Object obj){
return success(ResponseBeanMessage.SUCCESS,obj);
}
public static ResponseBean success(String msg, Object obj) {
return new ResponseBean(200, msg, obj);
}
public static ResponseBean ok(String msg) {
return success(msg);
}
public static ResponseBean ok(String msg, Object obj){
return success(msg,obj);
}
public static ResponseBean error(){
return error(ResponseBeanMessage.ERROR);
}
public static ResponseBean error(String msg) {
return error(msg, null);
}
public static ResponseBean error(Object obj) {
return new ResponseBean(500,ResponseBeanMessage.ERROR, obj);
}
public static ResponseBean error(String msg, Object obj) {
return new ResponseBean(500, msg, obj);
}
private ResponseBean() {
}
public ResponseBean(Integer status) {
this.status = status;
}
public ResponseBean(Integer status, String msg) {
this.status = status;
this.msg = msg;
}
private ResponseBean(Integer status, String msg, Object obj) {
this.status = status;
this.msg = msg;
this.data = obj;
}
}