使用@ControllerAdvice来拦截响应信息,并重新封装响应信息结构。

简介: 使用@ControllerAdvice来拦截响应信息,并重新封装响应信息结构。
/*** 处理响应结构数据* <p>* basePackageClasses: 排除不需要处理的Controller*/@ControllerAdvice(basePackageClasses= {})
publicclassCommonResponseAdviceimplementsResponseBodyAdvice {
// 可以注入需要的Bean/*** 处理响应信息结构的方法* @param o 响应信息结构* @param methodParameter* @param mediaType* @param aClass* @param serverHttpRequest* @param serverHttpResponse* @return*/@OverridepublicObjectbeforeBodyWrite(Objecto, MethodParametermethodParameter, MediaTypemediaType, ClassaClass, ServerHttpRequestserverHttpRequest, ServerHttpResponseserverHttpResponse) {
// 获取类上的请求的路径String[] value=methodParameter.getContainingClass().getAnnotation(RequestMapping.class).value();
// 获取方法上的请求的路径String[] methodPathArray=methodParameter.getMethodAnnotation(RequestMapping.class).value();
// 获取请求的方式StringrequestMethod=serverHttpRequest.getMethodValue();
// 对响应信息进行处理// ....returno;
    }
@Overridepublicbooleansupports(MethodParametermethodParameter, ClassaClass) {
returntrue;
    }
}
目录
相关文章
|
搜索推荐 Java API
如何在 Java 中反转 ArrayList
【8月更文挑战第23天】
346 1
|
算法 搜索推荐 Java
【面试题精讲】Java Stream排序的实现方式
【面试题精讲】Java Stream排序的实现方式
|
关系型数据库 MySQL
灵活排序策略:发现 MySQL 中的 ORDER BY IF 和 ORDER BY IN
灵活排序策略:发现 MySQL 中的 ORDER BY IF 和 ORDER BY IN
505 0
|
SQL 缓存 数据库
淘宝购物车扩容与性能优化(上)
淘宝购物车扩容与性能优化(上)
654 2
|
缓存 Java 双11
jvm性能调优 - 16案例实战_每日上亿请求量的电商系统 年轻代垃圾回收参数如何优化
jvm性能调优 - 16案例实战_每日上亿请求量的电商系统 年轻代垃圾回收参数如何优化
209 0
9个服务端提升debug效率的IDEA Debugger技巧(下)
9个服务端提升debug效率的IDEA Debugger技巧(下)
416 0
9个服务端提升debug效率的IDEA Debugger技巧(下)
|
IDE Java 应用服务中间件
Tomcat远程Debug
JVM本身提供可调试运行在虚拟机中的代码的功能。远程调试大致流程为: 1. 在启动的时候设置启动参数以开启和配置调试功能 2. 设置ip白名单或者关闭防火墙,让远端可以访问JVM所在机器 3. IDE中配置远程调试信息 4. 重启Tomcat,在IDE中启动远端调试
673 0
|
消息中间件 算法 Java
用免费的webservice查询天气
用免费的webservice查询天气
338 0
用免费的webservice查询天气
|
存储 Oracle 关系型数据库
高性能 MySQL(四):多版本并发控制(MVCC)
MVCC(Multiversion Concurrency Control)即多版本并发控制,它是数据库系统常用的一种并发控制,用于提升事务内数据的并发性。可以认为 MVCC 是行锁的一个变种,在很多种情况下避免了加锁操作,因此开销更低。 MVCC 的实现,是通过保存数据在某个时间点的**快照**来实现的。也就是说,每个事务读到的数据都是一个历史快照,不管这个事务执行多长时间,事务内看到的数据总是一致的。
497 0