Returns the value of the deal

In the development, which often need to return the data to the page, then how the data to the page it? This paper presents a specification:

1. Customize the interface enumeration results

public interface BSBaseResult {
    String getCode();
    String getDesc();
}

2. Write an enumeration class that implements the above interfaces

public enum BSBaseResultEnum implements BSBaseResult {
    SUCCESS("1000", "操作成功"),
    FAIL("1001", "操作失败");
    
    private String code;
    private String desc;
    
    BSBaseResultEnum(String code,String desc){
        this.code = code;
        this.desc = desc;
    }
    
    public String getCode(){ return this.code; }
    public String getDesc(){ return this.desc; }
    
	@Override
	public String toString() {
		return "ErrorCodeEnum{" + "code='" + code + '\'' + ", desc='" + desc + '\'' + '}';
	}
}

3. Write the return value of the entity classes

@Data
@AllArgsConstructor
@NoArgsConstructor
public class ReturnData<T> implements Serializable {
    private String code;
    private String desc;
    private T data;
}

4. Return value written tools BSResultUtil

public class BSResultUtil {
	/**
     * 成功返回
     */
	public static <T> ReturnData<T> returnSuccess(T data, BSBaseResultEnum enum){
        ReturnData<T> result = new ReturnData<>();
        result.setCode(enum.getCode());
        result.setDesc(enum.getDesc());
        result.setData(data);
        return result;
    }
    
	/**
     * 错误返回
     */
	public static <T> ReturnData<T> returnError(BSBaseResultEnum enum){
        ReturnData<T> result = new ReturnData<>();
        result.setCode(enum.getCode());
        result.setDesc(enum.getDesc());
        return result;
    }
    
	/**
     * 错误返回
     */
	public static <T> ReturnData<T> returnError(String code, String desc){
        ReturnData<T> result = new ReturnData<>();
        result.setCode(code);
        result.setDesc(desc);
        return result;
    }
}

5. Use

BSResultUtil.returnSuccess(data,BSBaseResultEnum.SUCCESS)
Published 81 original articles · won praise 124 · views 380 000 +

Guess you like

Origin blog.csdn.net/qq_38697437/article/details/102974664
Recommended