- 浏览: 60021 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (93)
- java (3)
- ios (9)
- wp (15)
- android (0)
- js (1)
- 服务器 (0)
- db (0)
- linux (1)
- python (0)
- xcode (0)
- ide (2)
- maven (0)
- spring (0)
- sql (0)
- 第三方 (1)
- nexus (0)
- nginx (11)
- tomcat (0)
- jenkins (0)
- zookeeper (1)
- git (1)
- svn (0)
- uml (0)
- redis (4)
- activemq (1)
- flume (0)
- kafka (0)
- mysql (1)
- memcached (0)
- mybatis (0)
- mac (0)
- mongo (1)
- docker (6)
- cache (0)
- jvm (0)
- markdown (0)
- springboot (24)
- mycat (3)
- LTS (3)
- 运维 (0)
- opts (1)
- netty (1)
- tcc (0)
- ffmpeg (2)
- 直播 (6)
- cxf (0)
- nodejs (0)
- storm (0)
- elasticjob (0)
- php (0)
最新评论
全局异常拦截
//@ControllerAdvice(annotations=TestController.class)
//@ControllerAdvice(basePackages={"com.aaa","com.bbb"})
@ControllerAdvice
public class GlobalExceptionHandler {
@ExceptionHandler(ServiceException.class)
@ResponseStatus(HttpStatus.INTERNAL_SERVER_ERROR)
// @ExceptionHandler(value={RuntimeException.class,MyRuntimeException.class})
// @ExceptionHandler//处理所有异常
@ResponseBody
public APIResponse handleException(HttpServletRequest request, Exception ex) {
String message = ex.getMessage();
return APIResponse.build(HttpStatus.INTERNAL_SERVER_ERROR.value(), message);
}
// @ExceptionHandler(SQLException.class)
// @ResponseStatus(HttpStatus.INTERNAL_SERVER_ERROR)
// @ResponseBody
// public APIResponse handleSQLException(HttpServletRequest request, Exception ex) {
// String message = ex.getMessage();
// return APIResponse.build(HttpStatus.INTERNAL_SERVER_ERROR.value(), message);
// }
// @ResponseStatus(value=HttpStatus.NOT_FOUND, reason="IOException occured")
// @ExceptionHandler(IOException.class)
// @ResponseBody
// public void handleIOException(){
// //returning 404 error code
// }
//
// @ResponseStatus(HttpStatus.BAD_REQUEST)
// @ResponseBody
// @ExceptionHandler(SignException.class)
// public APIResponse signException(SignException ex) {
// return ex.getEr();
// }
}
//@ControllerAdvice(annotations=TestController.class)
//@ControllerAdvice(basePackages={"com.aaa","com.bbb"})
@ControllerAdvice
public class GlobalExceptionHandler {
@ExceptionHandler(ServiceException.class)
@ResponseStatus(HttpStatus.INTERNAL_SERVER_ERROR)
// @ExceptionHandler(value={RuntimeException.class,MyRuntimeException.class})
// @ExceptionHandler//处理所有异常
@ResponseBody
public APIResponse handleException(HttpServletRequest request, Exception ex) {
String message = ex.getMessage();
return APIResponse.build(HttpStatus.INTERNAL_SERVER_ERROR.value(), message);
}
// @ExceptionHandler(SQLException.class)
// @ResponseStatus(HttpStatus.INTERNAL_SERVER_ERROR)
// @ResponseBody
// public APIResponse handleSQLException(HttpServletRequest request, Exception ex) {
// String message = ex.getMessage();
// return APIResponse.build(HttpStatus.INTERNAL_SERVER_ERROR.value(), message);
// }
// @ResponseStatus(value=HttpStatus.NOT_FOUND, reason="IOException occured")
// @ExceptionHandler(IOException.class)
// @ResponseBody
// public void handleIOException(){
// //returning 404 error code
// }
//
// @ResponseStatus(HttpStatus.BAD_REQUEST)
// @ResponseBody
// @ExceptionHandler(SignException.class)
// public APIResponse signException(SignException ex) {
// return ex.getEr();
// }
}
发表评论
-
springboot:condition
2017-07-26 11:10 360public class LinuxCondition imp ... -
springboot:tomcat启动
2017-07-20 15:02 9201.在pom.xml里设置 <packaging> ... -
springboot:shiro
2017-07-13 15:52 964第一次学习系统学习shiro 并将shiro集成到sprin ... -
springboot:upload
2017-07-06 10:25 750FileUploadConfiguration.java == ... -
springboot:servlet
2017-07-06 10:17 504Application.java ============== ... -
springboot:freemarker
2017-07-05 17:33 556pom.xml ======================= ... -
springboot:task
2017-07-05 12:11 441TaskPool.java ================= ... -
springboot:热部署
2017-07-05 11:23 355pom.xml: ====================== ... -
springboot:注解
2017-07-04 11:36 624@EnableAutoConfiguration注解 excl ... -
springboot:server属性配置
2017-07-04 10:05 750server配置 ====================== ... -
springboot:memcached
2017-07-03 17:23 925pom.xml ======================= ... -
springboot:health
2017-07-03 16:43 396<dependency> ... -
springboot:mongodb
2017-07-03 15:38 1561pom.xml ======================= ... -
springboot:quartz集群
2017-07-02 20:40 998pom.xml ======================= ... -
springboot:dubbo
2017-07-02 10:40 500server: ======================= ... -
springboot:amq
2017-07-01 22:20 466pom.xml ======================= ... -
springboot:redis(jedis)
2017-07-01 14:10 904application.properties ======== ... -
springboot:mybatis&druid&pagehelper
2017-07-01 13:35 411=============================== ... -
springboot:logback
2017-06-30 16:20 553=============================== ... -
springboot:interceptor
2017-06-30 14:04 630IncpConfig.java 增加拦截器config 继承W ...
相关推荐
9. **错误处理**: 自定义全局异常处理器,通过`@ExceptionHandler`或`@ControllerAdvice`注解捕获和处理异常,返回统一的错误响应。 10. **安全控制(Security)**: 可能使用Spring Security来保护API,设置权限,...
6. **ExceptionHandler(错误消息统一处理)**:在SpringBoot应用中,通过全局异常处理器(@ControllerAdvice + @ExceptionHandler)可以统一处理所有控制器层的异常,提供友好的错误提示,同时便于日志记录和问题...
8. **异常处理**:SpringBoot支持全局异常处理,可以通过定义`@ControllerAdvice`和`@ExceptionHandler`注解来捕获并处理可能出现的异常。 9. **安全框架**:可能使用Spring Security或Apache Shiro实现系统的权限...
在SpringBoot中,我们可以利用@ControllerAdvice和@ExceptionHandler来实现全局的异常处理。@ControllerAdvice注解标记的类会作为全局的异常处理器,@ExceptionHandler注解的方法会捕获特定类型的异常并进行处理。...
7. **异常处理**:使用Spring的@ControllerAdvice进行全局异常处理。 8. **测试**:使用JUnit和Mockito进行单元测试,保证代码质量。 这个系统是一个完整的前后端分离的Web应用,结合了SpringBoot的强大学术背景和...
- **异常处理**:使用@ControllerAdvice和@ExceptionHandler注解来统一处理全局异常。 - **验证**:使用JSR-303/JSR-349 Bean Validation进行数据校验。 - **事务管理**:SpringBoot的@Transactional注解可以方便地...
- 全局异常处理注解:如@ControllerAdvice和@ExceptionHandler,用于捕获并处理全局的异常情况。 2. Vue.js框架 Vue.js是一个轻量级的前端JavaScript框架,以其易学易用和组件化开发著称。Vue的核心库专注于视图...
3. 自定义异常处理:通过@ControllerAdvice和@ExceptionHandler注解,统一处理全局异常,提高用户体验。 4. 安全控制:使用Spring Security或OAuth2实现用户认证与授权,保护系统资源安全。 5. 日志记录:集成...
4. **统一异常处理**:在SpringBoot应用中,使用@ControllerAdvice可以定义一个全局的异常处理器。这个控制器顾问类会捕获所有Controller层的异常,然后根据异常类型返回自定义的响应,这样可以保持接口返回的统一性...
使用SpringBoot的`@ControllerAdvice`和`@ExceptionHandler`可以全局处理异常。对于多语言支持,SpringBoot提供了国际化配置,可以在静态资源目录下创建相应的语言文件。 总结,SpringBoot和MyBatis的结合为Java...
通过`@ControllerAdvice`和`@ExceptionHandler`可以全局处理异常。同时,通过i18n资源文件可以实现国际化。 9. **安全控制** SpringBoot集成了Spring Security,可以方便地实现登录、权限控制等功能。通过`@...
5. 错误处理:SpringBoot提供全局异常处理机制,可以使用`@ExceptionHandler`、`@ControllerAdvice`等注解实现统一错误处理。 五、进阶实践 1. 定制配置:通过实现`WebMvcConfigurer`接口,可以定制SpringMVC的行为...
SpringBoot提供了Spring MVC的异常处理器@ControllerAdvice和自定义异常类,以及Spring Security进行权限管理。日志方面,SpringBoot默认集成了Logback或Log4j2,可以通过配置文件调整日志级别和输出位置。 此外,...
在SpringBoot应用中,接口的安全性至关重要,尤其是在与客户端交互时。为了保护敏感信息,我们需要对接口的请求参数和响应结果进行加密解密处理。在本文中,我们将深入探讨如何在SpringBoot中实现接口的加密解密统一...
1. 自定义异常处理:SpringBoot的@ControllerAdvice可以全局捕获异常,统一返回格式化的错误信息。 2. 使用Logback或Log4j记录日志,便于排查问题和系统监控。 七、单元测试与持续集成 1. JUnit和Mockito进行单元...
- 全局异常处理可以使用@ControllerAdvice和@ExceptionHandler进行定义,统一处理程序中的异常。 7. **数据访问** - SpringBoot可以方便地集成JdbcTemplate、MyBatis、Spring Data JPA等数据访问技术。 - 对于多...
10. **全局异常处理**: 使用`@ControllerAdvice`和`@ExceptionHandler`注解实现全局异常处理。 11. **配置静态资源**: 在`application.properties`或`application.yml`中配置静态资源路径,让SpringBoot能够正确地...
SpringBoot提供了@ControllerAdvice注解,可以创建一个全局异常处理器,将所有未被特定异常处理器处理的异常统一捕获,返回友好的错误信息给用户。 对于数据的增删查改(CRUD),项目可能使用了JPA(Java ...
- **@ControllerAdvice**:用于定义全局异常处理类。 - **@ExceptionHandler**:用于处理特定类型的异常。 #### 配置多环境 SpringBoot支持多环境配置,可以通过`spring.profiles.active`属性指定当前激活的环境...
5. 异常处理:SpringBoot提供了统一的异常处理机制,通过@ControllerAdvice和@ExceptionHandler注解,可以全局处理可能出现的异常,提高系统的健壮性。 6. 日志管理:利用SpringBoot的日志组件,如Logback或Log4j,...