今天调试接口时,遇到的aop拦截,做权限校验,但是有个参数总是没有传,又因为以前这块代码逻辑有问题,总报null指针。所以回家后,研究了aspectj包。
:简单理解,支持切入点表达式等等
:简单理解,支持aop相关注解等等
但是是包含的,所以上面那句话,应该改为:
这里假设你已经有了一个springboot的项目。

启动项目,然后访问接口:
上面的输出结果:
并不是现在就可以执行了,而是我先把结果贴出来
或
也就是如下的情况:
请求URL:
那么从方法中获取的是
也就是说是获取不到和这两个参数的数据。
必须方法上有这两个参数,才会帮你获取到数据。
joinPoint实现类是:,这个类是spring的,它应该是利用反射确定目标方法没有参数,也说也就不会从请求流中去获取这两个参数(值)。
这个问题,因为我的controller参数这么写的:
参数这样是接收不了,所以需要改为:
原因是切面表达式错误
一开始:
改为:也就是多加一个
我们要找到包下子包的类进行运行,而一个代表了运行当前包下所有的方法, 代表运行当前包和子包的方法
参考地址:
No primary or single public constructor found for interface java.util.List - and no default construc
Spring切面编程错误warning no match for this type name:com.xxx.xxx [Xlint:invalidAbsoluteTypeName]
版权声明:
本文来源网络,所有图片文章版权属于原作者,如有侵权,联系删除。
本文网址:https://www.mushiming.com/mjsbk/13124.html