spring boot配置跨域、全域性異常處理、page分頁配置、統一返回MessageResult
1、跨域配置
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.cors.CorsConfiguration;
import org.springframework.web.cors.UrlBasedCorsConfigurationSource;
import org.springframework.web.filter.CorsFilter;
/**
* @description: 跨域配置
* @author: huangkailong
* @create: 2020-10-30
**/
@Configuration
public class CorsConfig {
private CorsConfiguration buildConfig() {
CorsConfiguration corsConfiguration = new CorsConfiguration();
corsConfiguration.addAllowedOrigin("*"); //允許任何域名
corsConfiguration.addAllowedHeader("*"); //允許任何頭
corsConfiguration.addAllowedMethod("*"); //允許任何方法
return corsConfiguration;
}
@Bean
public CorsFilter corsFilter() {
UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource();
source.registerCorsConfiguration("/**", buildConfig()); //註冊
return new CorsFilter(source);
}
}
2、全域性異常處理
import com.wc.robotapi.common.MessageResult;
import org.springframework.web.bind.annotation.ExceptionHandler;
import org.springframework.web.bind.annotation.RestControllerAdvice;
@RestControllerAdvice
public class APIExceptionHandler {
/**
* @description: 全域性異常處理配置
* @author: huangkailong
* @create: 2020-10-30
**/
@ExceptionHandler(value =Exception.class)
public MessageResult exceptionHandler(Exception e){
return MessageResult.error(e.getMessage());
}
}
3、使用page分頁配置
import com.baomidou.mybatisplus.extension.plugins.PaginationInterceptor;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
@Configuration
public class MybatisPlusConfig {
//分頁配置
@Bean
public PaginationInterceptor paginationInterceptor(){
return new PaginationInterceptor();
}
}
4、返回MessageResult物件
package com.wc.robotapi.common;
public class MessageResult<T> {
private boolean Result;
private String ErrorMessage;
private T KeyValue;
public static <T> MessageResult<T> success(T data){
return new MessageResult<T>(data);
}
public static <T> MessageResult<T> success(){
return new MessageResult<T>();
}
public static <T> MessageResult error(String _ErrorMessage){
return new MessageResult<T>(_ErrorMessage);
}
private MessageResult(T data){
this.Result = true;
this.ErrorMessage = "SUCCESS";
this.KeyValue = data;
}
private MessageResult(){
this.Result = true;
this.ErrorMessage = "SUCCESS";
}
private MessageResult(String _ErrorMessage){
// if (_Result) {
// return;
// }
this.Result = false;
this.ErrorMessage = _ErrorMessage;
}
public boolean getResult() {
return Result;
}
public void setResult(Boolean Result) {
this.Result = Result;
}
public String getMessage() {
return ErrorMessage;
}
public void setMessage(String ErrorMessage) {
this.ErrorMessage = ErrorMessage;
}
public T getKeyValue() {
return KeyValue;
}
public void setKeyValue(T KeyValue) {
this.KeyValue = KeyValue;
}
}
相關文章
- Spring Boot 2 Webflux的全域性異常處理Spring BootWebUX
- spring-boot-route(四)全域性異常處理Springboot
- Spring Boot乾貨系列:(十三)Spring Boot全域性異常處理整理Spring Boot
- spring boot 統一異常處理Spring Boot
- Spring Boot GraphQL 實戰 03_分頁、全域性異常處理和非同步載入Spring Boot非同步
- SpringBoot處理全域性統一異常Spring Boot
- Spring Cloud Gateway的全域性異常處理SpringCloudGateway
- 簡單的全域性異常統一處理
- Spring Boot 異常處理Spring Boot
- springboot 配置錯誤頁面及全域性異常Spring Boot
- spring boot 實現監聽器、過濾器、全域性異常處理Spring Boot過濾器
- 實戰Spring Boot 2.0系列(二) - 全域性異常處理和測試Spring Boot
- Spring Boot統一異常處理最佳實踐Spring Boot
- springboot全域性異常處理Spring Boot
- .netcore全域性異常處理NetCore
- Spring Boot實戰系列(4)統一異常處理Spring Boot
- NETCORE - 全域性異常處理(Exception)NetCoreException
- SpringBoot之全域性異常處理Spring Boot
- 【SpringBoot】全域性異常處理@ControllerAdviceSpring BootController
- 統一返回物件和異常處理(一)物件
- 設計一個全域性異常處理器
- Spring Boot統一異常處理以及引數校驗Spring Boot
- springboot下新增全域性異常處理和自定義異常處理Spring Boot
- 基於SpringBoot的後臺管理系統(Enchache配置、全域性異常處理(重點))(四)Spring Boot
- dotNet8 全域性異常處理
- SpringBoot中的全域性異常處理Spring Boot
- spring boot解決跨域訪問配置Spring Boot跨域
- 只需一步,在Spring Boot中統一Restful API返回值格式與統一處理異常Spring BootRESTAPI
- 統一返回物件和異常處理(二)物件
- SpringBoot優雅的全域性異常處理Spring Boot
- springboot統一異常處理及返回資料的處理Spring Boot
- spring中的統一異常處理Spring
- Spring boot 解決跨域問題配置類Spring Boot跨域
- NetCore實現全域性模型繫結異常資訊統一處理NetCore模型
- 8 Spring Boot返回資料及異常統一封裝Spring Boot封裝
- Spring Boot優雅地處理404異常Spring Boot
- nuxt使用axios的跨域處理配置UXiOS跨域
- Spring @ControllerAdvice+@ExceptionHandler統一異常處理SpringControllerException