SpringBoot返回类型封装
返回类型封装的工具类
//把返回值封装成工具类,方便调用
public class ResultMapUtils {
//常量,代表后台调用的结果:成功、失败和异常
public static final String SUCCESS = "success";
public static final String FAIL = "fail";
public static final String ERROR = "error";
/**
* @param map 返回给前端的需要构造的map对象,required
* @param result 调用接口的结果,sucess、fail和error,required
* @param message 调用接口失败或异常的反馈信息
* @param tag 给要返回的对象添加便签,key值
* @param data 要返回给前端的数据,value值
* @Description message,tag,data视情况而定,可以传null
*/
public static void makeResultMap(Map<String,Object> map,String result,String message,String tag,Object data){
map.put("result",result);
if(!isNullOrEmpty(message)){
map.put("message",message);
}
if(!isNullOrEmpty(tag)){
map.put(tag,data);
}
}
//判断字符串是否为空
private static boolean isNullOrEmpty(String str){
return (null == str || "".equals(str));
}
}
工具类的调用
//controller层调用方法,这里只是简单的使用例子,没有做复杂的处理
@RestController //相当于@Controller和@ResponseBody
@CrossOrigin //跨域
@RequestMapping("/user")
public class UserApi {
@Autowired
private UserService userService;
@RequestMapping(value="/getUser",method = RequestMethod.GET)
public Map<String,Object> getAllUsers(){
Map<String,Object> mapResult = new HashMap<>();
List<Users> users = userService.getAllUsers();
ResultMapUtils.makeResultMap(mapResult,ResultMapUtils.SUCCESS,"获取所有用户信息成功","data",users);
return mapResult;
}
}
总结
这种工具类的编写形式简单,调用也很方便,能一定程度上简化开发。个人觉得比较简便,让代码变得简短而优雅。
自我推荐
这个是我的微信公众号,欢迎扫码关注,谢谢!