Skip to content

消除以spring为基础的项目中的try-catch异常处理,并统一响应格式

License

Notifications You must be signed in to change notification settings

benxincaomu/discard-try

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

19 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

discard-try

消除以springframework为基础的项目中的try-catch异常处理,并统一响应格式

效果

将相应格式包装成如下格式

{
    "code":200,
    "message":"请求成功",
    "data":{
        // 真实业务数据
    }
    
}

使用场景

满足以下场景时才可以使用

  1. 请求响应的是数据而非页面

  2. 请求头中的ACCEPT应当为application/jsonapplication/json;charset=UTF-8text/xml(同时需要使用的HttpMessageConverter支持)

用法

Spring 配置

depoly

先将相关jar部署到maven本地库中或者先depoly到私有maven库,然后在pom中引入

spring mvc引入

<dependency>
	<groupId>com.github.benxincaomu</groupId>
	<artifactId>discard-try-mvc</artifactId>
    <version>1.0.0</version>
</dependency>

spring-webflux引入

<dependency>
	<groupId>com.github.benxincaomu</groupId>
	<artifactId>discard-try-flux</artifactId>
    <version>1.0.0</version>
</dependency>

配置

建议使用注解是spring扫描com.github.benxincaomu.notry

@Configuration
@ComponentScan("com.github.benxincaomu.notry")
public class Config{
    
}

正常流程

业务接口只需要正常返回需要的结果即可,无需关注响应格式,由框架进行统一处理。

业务异常

使用com.github.benxincaomu.notry.utils.Asserts工具类中提供的方法进行简单判断并抛出异常,框架捕获异常,并使用传入的响应码包装为固定格式响应给调用方。

嵌入示例

见demo/try-demo

About

消除以spring为基础的项目中的try-catch异常处理,并统一响应格式

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages