springboot aop 切到service层,不生效

今天发现一个问题,使用aop切到service层方法上,idea会有切成功的标志,编译也不报错,但就是不生效。研究了下发现,是因为我切的方法被同一个service中的其他方法调用,这样的话就不生效了,暂不清楚原因,解决方法时切到调用它的方法上,这只是切点不生效的一种情况,希望能给到大家参考。

AOP文件:

    //注释掉的是原来不生效的方式
    //@AfterReturning("execution( * cn.qdcares.fodmonitor.web.api.fodmonitor.fodtask.service.impl.FodTaskServiceImpl.radarSubmitFodTask(..))")
    @AfterReturning("execution( * cn.qdcares.fodmonitor.web.api.fodmonitor.fodtask.service.impl.FodTaskServiceImpl.refreshRadarFodTask(..))")
    public void createFodAfterReturning(JoinPoint joinPoint){

service文件二者关系:

    //切到这里生效
    @Override
    public int refreshRadarFodTask(RadarFod radarFod) {
        //判断数据库中是否存在数据
        //从而进行新增或更新操作
        Optional<FodTask> optional = fodTaskRepository.findByFodId(radarFod.getId());
        if (optional.isPresent()){
            updateFodTaskByFodId(radarFod);
            return 1;
        }
        radarSubmitFodTask(radarFod);
        return 1;

    }
    //切到这里不生效	
    @Override
    public int radarSubmitFodTask(RadarFod radarFod) {
 
        return 1;
    }

热门文章

暂无图片
编程学习 ·

java后端重点

java基础,设计模式,jvm原理,spring+springmvc原理及源码,linux,mysql事务隔离与锁机制,mongodb,http/tcp,多线程,分布式架构(dubbo,dubbox,spring cloud),弹性计算架构,微服务架构(springboot+zookeeper+docker+jenkins),java性能优化,以及相关的项目管理等…
暂无图片
编程学习 ·

Fincy究竟如何成为东南亚值得信赖的首选支付平台?

“去中心化”的区块链网络提供了低成本的信用解决机制,基础规则在被写入区块链协议后,可以一直保障链上合约按规则运行,而不需要特定的中心化机构维护。区块链技术带来的“共同账簿”有潜力实现全球市场的跨场所实时结算,大幅提高交易后处理环节的运行效率,为全球支付的拓…
暂无图片
编程学习 ·

Simulink中定义全局向量

Simulink中定义全局数组变量定义全局变量定义其为Data Dtore Memory创建Data Dtore Memory模块完成 最近在使用simulink时需要用到全局向量,但是在网上搜索到的都是一维的全局变量,也就是一个数,因此自己摸索了一段时间做出这篇总结。 定义全局变量 首先在matlab function中…
暂无图片
编程学习 ·

销售分析 II

题目描述:Table: Product+--------------+---------+ | Column Name | Type | +--------------+---------+ | product_id | int | | product_name | varchar | | unit_price | int | +--------------+---------+ product_id 是这张表的主键 Table: Sales+----…
暂无图片
编程学习 ·

DAY14 Javaweb Servlet、Response、Request

以下讲的都是最底层的内容,以后会被新的方法顶替掉一、Servlet,是sun公司开发的一门技术,如果要开发sevlet程序(网页java),只需要1、实现这个接口就可以 2、把开发好的java类部署到web服务器中。把实现了Servlet接口的Java程序叫做Servlet,一个请求地址对应一个servlet…
暂无图片
编程学习 ·

centos7.5通过yum安装docker

1.docker安装 1.安装docker yum install -y yum-utils device-mapper-persistent-data lvm2 yum-utils:yum管理工具包 device-mapper-persistent-data:设备映射包 lvm2:lvm包 2.安装docker源 yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/cent…
暂无图片
编程学习 ·

如何重命名data.frame中的单个列?

本文翻译自:How to rename a single column in a data.frame? I know if I have a data frame with more than 1 column, I can use 我知道如果我有一个多于一列的数据框,我可以使用 colnames(x) <- c("col1","col2")to rename the columns. 重命名…
暂无图片
编程学习 ·

贪心:P2240 【深基12.例1】部分背包问题(洛谷)

贪心算法的讲解: 贪心算法 本题链接 第一种:结构体解题 #include<bits/stdc++.h> using namespace std; struct node {double w;//重量double v;//价值double p;//均价 }a[101]; int N; double T,sum; bool cmp(node a, node b) {return a.p > b.p; } int main() {…
暂无图片
编程学习 ·

新能源汽车车载智能终端T-BOX

新能源汽车车载智能终端T-BOX技术解决方案包括:用户端 + 运营后台系统 + 车辆网平台 + 车载终端等总体架构:“端+网”解决方案智能信TBOX终端硬件,TBOX终端与汽车共享、网约及分时租赁商业应用相结合,实现远程开锁,GPS追踪、动力控制管理、闪灯鸣笛寻车等功能。同时,提供…
暂无图片
编程学习 ·

springboot aop 切到service层,不生效

今天发现一个问题,使用aop切到service层方法上,idea会有切成功的标志,编译也不报错,但就是不生效。研究了下发现,是因为我切的方法被同一个service中的其他方法调用,这样的话就不生效了,暂不清楚原因,解决方法时切到调用它的方法上,这只是切点不生效的一种情况,希望能…
暂无图片
编程学习 ·

mPaaS 插件正式上架 Jetbrains Market Place

今天 mPaaS 插件终于正式上架 Jetbrains Market Place 啦!!!它从一个简单的集成工具开始慢慢变成了围绕 mPaaS SDK 为核心的周边生态。越来越自信地开始以「产品」的形式展现在开发者面前。下载链接:https://plugins.jetbrains.com/plugin/14486-mpaasmPaaS for Android St…
暂无图片
编程学习 ·

数据表的规范

数据库的设计范式 六种范式 1. 第一范式 2. 第二范式 3. 第三范式 4. BCNF 巴斯-科德范式 5. 第四范式 6. 第五范式 完美范式 * 范式设计越高阶,冗余度越低。数据表中的键 1. 超键: 能唯一标识元组的属性集叫超键 2. 候选键:如果超键不包括多余的属性,这个超键就是候选键 …
暂无图片
编程学习 ·

CSV文件转Excel后数字自动转换成科学计数法的解决方法

CSV文件用Excel打开后,长度超过11位的数字自动转换成科学计数法显示,末尾数字变成“0000”,如何解决这一问题?以“老劳模系统数据.CSV”为例,身份证码是科学计数法了第一步:新建excel,用 office excel 打开第二步:点击“数据”---“从文本/cvs”如果乱码,则选择编码第…
暂无图片
编程学习 ·

屏蔽系统更新

win+r services.msc 改为禁用 恢复 -> 全改为无操作win + r gpedit.msc 找到windows 更新 中的 配置自动更新禁用掉注: 家庭版无法打开gpedit.msc 新建一个文本文档,名字随便取,编辑以下批处理内容,保存后将后缀名改为.bat ,右键使用管理员权限执行: @echo of…
暂无图片
编程学习 ·

Go 结构体内存分配机制

结构体内存分配机制我们定义一个Person结构体(包括名字,年龄)我们看看下面一段代码,输出什么内容?var p1 Person p1.Name = "小明" var p2 Person = p1 fmt.Printin(p2.Age)p2.Name = "tom" fmt.Printf("p2.Name=%v p1.Name=%v",p2.Name,…
暂无图片
编程学习 ·

typescript学习笔记

typescript是微软开发的一个javascript的一个超集。支持es6规范。它可以编译成纯 JavaScript,编译出来的 JavaScript 可以运行在任何浏览器上。es是客户端脚本的规范,es5,es6是这些规范的不同版本。JavaScript与typescript是两种客户端脚本语言,JavaScript实现了es5规范,t…
暂无图片
编程学习 ·

vue-cli的4.x版本命令行创建项目(node.js下载、cnpm安装)

前言(日常废话) 因为之前用的一直是vue-cli的2.9.6版本,这段时间将电脑上的2.x版本给卸了,装上了4.4.6版本。害,脑子不好使,总是记不住,好记性不如烂笔头,搁这儿做一下记录,见下: 正文 一、前期准备工作 node.js的10.0.0以上版本(必须)、cnpm(淘宝镜像)(可选)、vue-c…