切换导航条
此项目
正在载入...
登录
message_bus
/
message_bus_service
·
提交
转到一个项目
GitLab
转到群组
项目
活动
文件
提交
管道
0
构建
0
图表
里程碑
问题
0
合并请求
0
成员
标记
维基
派生
网络
创建新的问题
下载为
邮件补丁
差异文件
浏览文件
作者
王勇
5 years ago
提交
fac3b77bde016441029d032e1e34310f27457b60
1 个父辈
de70ef6c
简单封装自定义异常,未完善
隐藏空白字符变更
内嵌
并排对比
正在显示
4 个修改的文件
包含
151 行增加
和
10 行删除
src/main/java/com/sunyo/wlpt/message/bus/service/exception/CustomException.java
src/main/java/com/sunyo/wlpt/message/bus/service/exception/CustomExceptionType.java
src/main/java/com/sunyo/wlpt/message/bus/service/exception/GlobalExceptionHandler.java
src/main/java/com/sunyo/wlpt/message/bus/service/response/ResultJson.java
src/main/java/com/sunyo/wlpt/message/bus/service/exception/CustomException.java
0 → 100644
查看文件 @
fac3b77
package
com
.
sunyo
.
wlpt
.
message
.
bus
.
service
.
exception
;
/**
* @author 子诚
* Description:
* 时间:2020/7/17 16:43
*/
public
class
CustomException
extends
RuntimeException
{
private
static
final
long
serialVersionUID
=
6098063244016154220L
;
/**
* 异常错误编码
*/
private
String
code
;
/**
* 异常信息
*/
private
String
message
;
public
CustomException
(
CustomExceptionType
exceptionTypeEnum
,
String
message
)
{
this
.
code
=
exceptionTypeEnum
.
getCode
();
this
.
message
=
message
;
}
public
String
getCode
()
{
return
code
;
}
@Override
public
String
getMessage
()
{
return
message
;
}
}
...
...
src/main/java/com/sunyo/wlpt/message/bus/service/exception/CustomExceptionType.java
0 → 100644
查看文件 @
fac3b77
package
com
.
sunyo
.
wlpt
.
message
.
bus
.
service
.
exception
;
/**
* @author 子诚
* Description:枚举,定制异常类型
* 时间:2020/7/17 16:27
*/
public
enum
CustomExceptionType
{
CLIENT_ERROR
(
"400"
,
"客户端异常"
),
SYSTEM_ERROR
(
"500"
,
"系统服务异常"
),
OTHER_ERROR
(
"999"
,
"其他未知异常"
);
/**
* 响应业务状态
*/
private
String
code
;
/**
* 响应消息
*/
private
String
msg
;
CustomExceptionType
(
String
code
,
String
msg
)
{
this
.
code
=
code
;
this
.
msg
=
msg
;
}
public
String
getCode
()
{
return
code
;
}
public
String
getMsg
()
{
return
msg
;
}
}
...
...
src/main/java/com/sunyo/wlpt/message/bus/service/exception/GlobalExceptionHandler.java
0 → 100644
查看文件 @
fac3b77
package
com
.
sunyo
.
wlpt
.
message
.
bus
.
service
.
exception
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.springframework.web.bind.annotation.ControllerAdvice
;
/**
* @author 子诚
* Description:自定义全局异常处理类
* 时间:2020/7/17 17:44
*/
@ControllerAdvice
public
class
GlobalExceptionHandler
{
private
static
final
Logger
logger
=
LoggerFactory
.
getLogger
(
GlobalExceptionHandler
.
class
);
}
...
...
src/main/java/com/sunyo/wlpt/message/bus/service/response/ResultJson.java
查看文件 @
fac3b77
package
com
.
sunyo
.
wlpt
.
message
.
bus
.
service
.
response
;
import
com.sunyo.wlpt.message.bus.service.exception.CustomException
;
import
com.sunyo.wlpt.message.bus.service.exception.CustomExceptionType
;
import
lombok.Data
;
import
java.io.Serializable
;
...
...
@@ -46,25 +48,76 @@ public class ResultJson<T> implements Serializable {
}
/**
* 有参,构造方法;
* 重载
* 定义有参构造器
*
* @param code 响应状态
* @param msg 响应消息
*/
public
ResultJson
(
String
code
)
{
this
.
code
=
code
;
}
public
ResultJson
(
T
data
)
{
this
.
data
=
data
;
}
public
ResultJson
(
String
code
,
String
msg
)
{
this
.
code
=
code
;
this
.
msg
=
msg
;
}
/**
* 定义有参构造器
*
* @param code 响应状态
* @param msg 响应消息
* @param data 响应数据
*/
public
ResultJson
(
String
code
,
String
msg
,
T
data
)
{
this
.
code
=
code
;
this
.
msg
=
msg
;
this
.
data
=
data
;
}
/**
* 定义静态、成功方法(重载)
*
* @return 成功(没有响应数据)
*/
public
static
ResultJson
success
()
{
return
new
ResultJson
<>(
"200"
,
"success"
);
}
/**
* 定义静态、成功方法(重载)
*
* @return 成功(响应数据)
*/
public
static
ResultJson
success
(
Object
data
)
{
return
new
ResultJson
<>(
"200"
,
"success"
,
data
);
}
/**
* 请求出现异常时的响应数据封装
*
* @param e 自定义异常类
* @return 返回异常信息
*/
public
static
ResultJson
error
(
CustomException
e
)
{
ResultJson
result
=
new
ResultJson
<>();
result
.
setCode
(
e
.
getCode
());
if
(
e
.
getCode
()
==
CustomExceptionType
.
CLIENT_ERROR
.
getCode
())
{
result
.
setMsg
(
e
.
getMessage
());
}
else
if
(
e
.
getCode
()
==
CustomExceptionType
.
SYSTEM_ERROR
.
getCode
())
{
result
.
setMsg
(
e
.
getMessage
()
+
";请将该异常发送给管理员"
);
}
else
{
result
.
setMsg
(
"系统出现未知异常,请联系管理员!"
);
}
// 可以尝试着做异常信息持久化
return
result
;
}
/**
* 请求出现异常时的响应数据封装
*
* @param customExceptionType 自定义异常枚举中的异常
* @param errorMessage 错误信息
* @return 返回异常信息
*/
public
static
ResultJson
error
(
CustomExceptionType
customExceptionType
,
String
errorMessage
)
{
return
new
ResultJson
<>(
customExceptionType
.
getCode
(),
errorMessage
);
}
}
...
...
请
注册
或
登录
后发表评论