java入参出参_java日志入参出参打印 ServletResponse获取响应体

有个需要日志记录http请求和响应的需求,通过一个logFilter来实现

一、入参打印

JSON.toJSONString(servletRequest.getParameterMap()));

二、出参打印

ServletResponse中将输出流,直接获取流并不能获取流中的数据,只可以改写响应流,替换响应内容;

所以需要重写ServletResponse来保存传到输出流的内容;

com.github.isrsal.logging.ResponseWrapper 则实现了这个需求,将输出流的内容保存在了字节数组缓冲区;

需要引入的依赖:

com.github.isrsal

spring-mvc-logger

0.2

log4j

log4j

javax.servlet

servlet-api

org.slf4j

slf4j-log4j12

获取出参的方法:

ResponseWrapper responseWrapper = new ResponseWrapper(Thread.currentThread().getId(), (HttpServletResponse) servletResponse);

filterChain.doFilter(servletRequest, responseWrapper);

String str = new String(responseWrapper.toByteArray(), responseWrapper.getCharacterEncoding());

三、完整的出入参打印

importcom.alibab

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值