AOP创建的自己的属性取值为null的问题
创始人
2024-09-03 08:00:20
0

要解决这个问题,可以使用ThreadLocal来存储AOP中创建的属性。代码示例如下:

public class AopAspect {

    private ThreadLocal myAttribute = new ThreadLocal<>();

    @Before("execution(* com.example.service.SomeService.doSomething(..))")
    public void beforeDoSomething() {
        myAttribute.set("AopAspect");
    }

    @AfterReturning(value = "execution(* com.example.service.SomeService.doSomething(..))", returning = "returnValue")
    public void afterReturnFromDoSomething(Object returnValue) {
        String myAttributeValue = myAttribute.get();
        // do something with myAttributeValue
        myAttribute.remove();
    }
}

@Service
public class SomeService {

    @Autowired
    private HttpServletRequest request;

    public void doSomething() {
        String requestAttributeValue = (String) request.getAttribute("myAttribute");
        // requestAttributeValue is null
    }
}

在上面的代码片段中,我们使用ThreadLocal来存储AOP中创建的属性。在beforeDoSomething()方法中,我们将属性的值设置为"AopAspect"。在afterReturnFromDoSomething()方法中,我们可以从ThreadLocal中获取AOP创建的属性值,并进一步进行处理。通过这种方式,我们可以解决通过@RequestAttribute获取AOP创建的自己的属性值为null的问题。

相关内容

热门资讯

科普!德州app(wEpoke... 1、科普!德州app(wEpoke)外挂透明挂辅助机制(辅助挂)技巧教程(有人有挂)-哔哩哔哩;详细...
必知教程(wpk机器人)外挂透... 必知教程(wpk机器人)外挂透明挂辅助软件(辅助挂)原来是真的有挂(2021已更新)(哔哩哔哩);支...
透视辅助(德扑之星隐藏)外挂透... 透视辅助(德扑之星隐藏)外挂透明挂辅助APP(透视)辅助透视(有挂头条)-哔哩哔哩,亲,有的,ai轻...
一分钟了解(impoker)外... 一分钟了解(impoker)外挂透明挂辅助器安装(辅助挂)发牌机制(讲解有挂)-哔哩哔哩;impok...
透视安卓版!Wepoke长期(... 透视安卓版!Wepoke长期(wEpoke)外挂透明挂辅助软件(透视)2024版教程(有挂技巧)-哔...
一分钟教你(聚星扑克德州)外挂... 1、一分钟教你(聚星扑克德州)外挂透明挂辅助app(辅助挂)果真是真的有挂(2021已更新)(哔哩哔...
避坑细节(德州透视)外挂透明挂... 避坑细节(德州透视)外挂透明挂辅助APP(辅助挂)软件透明挂(有挂详细)-哔哩哔哩1、让任何用户在无...
透明辅助(好运大菠萝)外挂透明... 透明辅助(好运大菠萝)外挂透明挂辅助器安装(辅助挂)发牌机制(有挂秘笈)-哔哩哔哩;精心打造了俱乐部...
一分钟揭秘!wepokE(we... 相信很多朋友都在电脑上玩过wepOkE吧,但是很多朋友都在抱怨用电脑玩起来不方便。为此小编给大家带来...
来一盘(wpk胜率)外挂透明挂... 此外,数据分析德州(wpk胜率)辅助神器app还具备辅助透视行为开挂功能,通过对客户wpk胜率透明挂...