SpringBoot配置全局的异常捕获 - 同时兼容web与ajax,面试必备知识点
**@Description: 将json结果集转化为LeeJSONResult对象@return@date 2016年4月22日 下午8:34:58*/> clazz) {try {if (clazz!= null) {/**@Description: 没有object对象的转化@return@date 2016年4月22日 下午8:35:21*/try {/**
return new HlvyJSONResult(502, msg, null);
}
public static HlvyJSONResult errorException(String msg) {
return new HlvyJSONResult(555, msg, null);
}
public HlvyJSONResult() {
}
// public static LeeJSONResult build(Integer status, String msg) {
// return new LeeJSONResult(status, msg, null);
// }
public HlvyJSONResult(Integer status, String msg, Object data) {
this.status = status;
this.msg = msg;
this.data = data;
}
public HlvyJSONResult(Object data) {
this.status = 200;
this.msg = “OK”;
this.data = data;
}
public Boolean isOK() {
return this.status == 200;
}
public Integer getStatus() {
return status;
}
public void setStatus(Integer status) {
this.status = status;
}
public String getMsg() {
return msg;
}
public void setMsg(String msg) {
this.msg = msg;
}
public Object getData() {
return data;
}
public void setData(Object data) {
this.data = data;
}
/**
-
@Description: 将json结果集转化为LeeJSONResult对象
-
需要转换的对象是一个类 -
@param jsonData
-
@param clazz
-
@return
-
@author leechenxiang
-
@date 2016年4月22日 下午8:34:58
*/
public static HlvyJSONResult formatToPojo(String jsonData, Class<?> clazz) {
try {
if (clazz == null) {
return MAPPER.readValue(jsonData, HlvyJSONResult.class);
}
JsonNode jsonNode = MAPPER.readTree(jsonData);
JsonNode data = jsonNode.get(“data”);
Object obj = null;
if (clazz != null) {
if (data.isObject()) {
obj = MAPPER.readValue(data.traverse(), clazz);
} else if (data.isTextual()) {
obj = MAPPER.readValue(data.asText(), clazz);
}
}
return build(jsonNode.get(“status”).intValue(), jsonNode.get(“msg”).asText(), obj);
} catch (Exception e) {
return null;
}
}
/**
-
@Description: 没有object对象的转化
-
@param json
-
@return
-
@author leechenxiang
-
@date 2016年4月22日 下午8:35:21
*/
public static HlvyJSONResult format(String json) {
try {
return MAPPER.readValue(json, HlvyJSONResult.class);
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
/**
-
@Description: Object是集合转化
-
需要转换的对象是一个list -
@param jsonData
-
@param clazz
-
@return
-
@author leechenxiang
-
@date 2016年4月22日 下午8:35:31
*/
public static HlvyJSONResult formatToList(String jsonData, Class<?> clazz) {
try {
JsonNode jsonNode = MAPPER.readTree(jsonData);
JsonNode data = jsonNode.get(“data”);
Object obj = null;
if (data.isArray() && data.size() > 0) {
obj = MAPPER.readValue(data.traverse(),
MAPPER.getTypeFactory().constructCollectionType(List.class, clazz));
}
return build(jsonNode.get(“status”).intValue(), jsonNode.get(“msg”).asText(), obj);
} catch (Exception e) {
return null;
}
}
public String getOk() {
return ok;
}
public void setOk(String ok) {
this.ok = ok;
}
}
web跳转html页面:
ajax html页面
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数前端工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年Web前端开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。




既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上前端开发知识点,真正体系化!


由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新
如果你觉得这些内容对你有帮助,可以添加V:vip1024c 备注前端获取(资料价值较高,非无偿)
学习分享,共勉
题外话,毕竟我工作多年,深知技术改革和创新的方向,Flutter作为跨平台开发技术、Flutter以其美观、快速、高效、开放等优势迅速俘获人心
开源分享:【大厂前端面试题解析+核心总结学习笔记+真实项目实战+最新讲解视频】
[外链图片转存中…(img-fxkRZOoo-1711582884829)]
由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新
如果你觉得这些内容对你有帮助,可以添加V:vip1024c 备注前端获取(资料价值较高,非无偿)
[外链图片转存中…(img-85YwoUZb-1711582884829)]
学习分享,共勉
题外话,毕竟我工作多年,深知技术改革和创新的方向,Flutter作为跨平台开发技术、Flutter以其美观、快速、高效、开放等优势迅速俘获人心
开源分享:【大厂前端面试题解析+核心总结学习笔记+真实项目实战+最新讲解视频】

更多推荐



所有评论(0)