SpringAOP怎么修改请求参数列表 | 您所在的位置:网站首页 › 修改系统参数 › SpringAOP怎么修改请求参数列表 |
SpringAOP怎么修改请求参数列表
发布时间:2023-03-07 17:21:52
来源:亿速云
阅读:70
作者:iii
栏目:开发技术
这篇“SpringAOP怎么修改请求参数列表”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“SpringAOP怎么修改请求参数列表”文章吧。 SpringAOP修改请求参数列表今天遇到了一个问题,要批量在前端请求之后修改其中的一个参数值。 我使用SpringAop拦截请求去修改参数值,因为Spring Aop是无法直接根据参数名获取参数的,所以使用MethodSignature首先获取当前方法的参数列表,找到对应参数的下标,然后根据下标获取当前参数对应的值。 代码如下: private final String execution = "execution(* com.zxy.test.degitaltool.tree.controller.TestController.*(..))"; /** * @param pjp * @return * @throws Throwable */ @Around(execution) public Object before(ProceedingJoinPoint pjp) throws Throwable { Method method = ((MethodSignature) pjp.getSignature()).getMethod(); Parameter[] parameters = method.getParameters(); int keyIndex = getKeyIndex2(parameters, "treeId"); Object[] args = pjp.getArgs(); if (keyIndex != -1) { String value = args[keyIndex];//找到对应的值 ... } return pjp.proceed(args);//修改参数值 } private int getKeyIndex2(Parameter[] parameters, String key) { for (int i = 0; i |
今日新闻 |
推荐新闻 |
专题文章 |
CopyRight 2018-2019 实验室设备网 版权所有 |