返回结果实体类的封装应用

1.定义返回结果的实体类

package org.sang.bean;

public class RespBean {
    private Integer status;   //状态码
    private String msg;       //返回信息
    private Object obj;       //数据

    private RespBean() {
    }

    public static RespBean build() {
        return new RespBean();
    }

    public static RespBean ok(String msg, Object obj) {
        return new RespBean(200, msg, obj);
    }

    public static RespBean ok(String msg) {
        return new RespBean(200, msg, null);
    }

    public static RespBean error(String msg, Object obj) {
        return new RespBean(500, msg, obj);
    }

    public static RespBean error(String msg) {
        return new RespBean(500, msg, null);
    }

    private RespBean(Integer status, String msg, Object obj) {
        this.status = status;
        this.msg = msg;
        this.obj = obj;
    }

    public Integer getStatus() {

        return status;
    }

    public RespBean setStatus(Integer status) {
        this.status = status;
        return this;
    }

    public String getMsg() {
        return msg;
    }

    public RespBean setMsg(String msg) {
        this.msg = msg;
        return this;
    }

    public Object getObj() {
        return obj;
    }

    public RespBean setObj(Object obj) {
        this.obj = obj;
        return this;
    }
}

应用

RespBean respBean = null;
if (e instanceof BadCredentialsException ||
    e instanceof UsernameNotFoundException) {
    respBean = RespBean.error("账户名或者密码输入错误!");
} else if (e instanceof LockedException) {
    respBean = RespBean.error("账户被锁定,请联系管理员!");
} else if (e instanceof CredentialsExpiredException) {
    respBean = RespBean.error("密码过期,请联系管理员!");
} else if (e instanceof AccountExpiredException) {
    respBean = RespBean.error("账户过期,请联系管理员!");
} else if (e instanceof DisabledException) {
    respBean = RespBean.error("账户被禁用,请联系管理员!");
} else {
    respBean = RespBean.error("登录失败!");
}
resp.setStatus(401);
ObjectMapper om = new ObjectMapper();
PrintWriter out = resp.getWriter();
out.write(om.writeValueAsString(respBean));
out.flush();
out.close();

 

你可能感兴趣的:(JAVA知识回顾,java)