之前学的时候没有记笔记,从aop这一个技术开始,写下自己的思考
1.使用思路
考虑到数据表中有类似于更新者、更新时间这样重复的公共字段,因此为了避免每次在mapper层写sql语句时出现大量重复代码,这里引入了aop。
2.AOP是什么
aop是spring的知识,即面向切面编程。一般来说,很多功能流程中有重复的步骤,在苍穹外卖的项目中,修改和新增操作都需要修改数据表中的create_user,create_time,update_user,update_time这几个数据,因此利用aop,我们可以自定义注解来实现这个公共字段的填充,即将注解AutoFill注入到接口的某个地方。
3.AOP的相关概念和使用方法
4.代码具体实现
aspect声明:
joint point:
spring的aspectj依赖中有
pointcut:
这里是设置@AutoFill(...)为切入点
最后,在切入时,进行公共字段赋值
ps:在公共字段赋值的方法中,因为该项目,需要定义接口在进行何种操作时要切入公共字段赋值,这里是检测数据库改和查时要赋值,因此在common包中定义枚举类即哪些需要aop的操作
最后,在接口处添加注释