博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Spring AOP:自动注入参数值
阅读量:5124 次
发布时间:2019-06-13

本文共 1212 字,大约阅读时间需要 4 分钟。

import org.aspectj.lang.JoinPoint;import org.aspectj.lang.annotation.Aspect;import org.aspectj.lang.annotation.Before;import org.aspectj.lang.annotation.Pointcut;import org.springframework.stereotype.Component;import java.lang.reflect.Method;@Aspect@Componentpublic class HandleParamAop {    @Pointcut("@annotation(org.springframework.web.bind.annotation.RequestMapping)")    public void handleParamAop() {    }    @Before("handleParamAop()")    public void paramHandler(JoinPoint joinPoint) throws Throwable {        Object[] argc = joinPoint.getArgs();        Class clazz;        Method[] methods;        for (Object object : argc) {            if (null == object) {                continue;            }            clazz = object.getClass();            methods = clazz.getMethods();            // 这里的methods会包含父类的public方法,也包括Object类的method            for (Method method : methods) {                if (method.getName().equals("setCreator")) {                    method.invoke(object, 49L);                }                if (method.getName().equals("setModifier")) {                    method.invoke(object, 59L);                }            }        }    }}

 

转载于:https://www.cnblogs.com/yang21/p/9968959.html

你可能感兴趣的文章
vi命令
查看>>
23种设计模式之原型模式代码实例
查看>>
python操作文件
查看>>
Linux系统开发之路 - 下
查看>>
iOS开发网络篇—GET请求和POST请求 分类: ios开发 ...
查看>>
C#学习之按钮点击事件
查看>>
C# 线程手册 第三章 使用线程 Monitor.TryEnter()
查看>>
【Xmail】使用Xmail搭建局域网邮件服务器
查看>>
zoj 4049
查看>>
一个关于数学归纳法的悖论问题-续
查看>>
selenium之截图
查看>>
自己的碎碎念
查看>>
Unity3D 物体移动方法总结
查看>>
MFC中CString.Format的用法
查看>>
【转发】响应式Web设计?怎样进行?
查看>>
iOS项目开发— CoreLocation的定位服务和地理编码与发编码实现
查看>>
springBoot修改代码不需要重启-热部署
查看>>
18.QT-QPlainEdit 信号与槽
查看>>
Linux-使用之vim出现的问题
查看>>
资料收藏夹
查看>>