开发者社区 问答 正文

不停服务器情况下怎么动态开启或者关闭spring aop ?

需求是记录指定方法的执行时间存oracle库,我就想到了spring aop 但是需还说,服务启动的时候(在没有好的方法的时候该功能暂且用aop)aop默认
关闭的, 在前端jsp页面有一个开关。用户点击打开该开关的时候 aop才启动记录功能(为了节省服务器资源)。
但是 aop是在启动的时候把切面相关的bean都加载了(cglib里),如果启动的时候不开启aop,是不是这些bean就不加载了,那么再次开启怎么办,据说是需要热部署原理。哪位大神帮忙分析一下怎么实现?

展开
收起
小旋风柴进 2016-03-04 15:12:26 4463 分享 版权
1 条回答
写回答
取消 提交回答
  • 你的AOP切面很多吗?能消耗多少服务器资源
    另外如果使用SpringAOP,项目中的切面如果没有在IOC容器中实例化的话,切面是不起作用的。

    目前能想到的思路是启动时加载切面,可以通过在某个类中存放一个静态方法来确定是否开启AOP,然后通过jsp页面改变变量值

    另外可以试试Spring的动态注册Bean的功能看看能不能实现。

    2019-07-17 18:52:21
    赞同 展开评论