springboot 项目配置事务

tip:配置切面 执行相关操作

一:添加依赖

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-aop</artifactId>
        </dependency>

二:编写控制类

@RestController

public class HelloController {

    @RequestMapping("/add")  
    public String addData(Menu menu) {
        return "success";
    }

    @RequestMapping("/update")  
    public String updateData(Menu menu) {
        return "success";
    }
    @RequestMapping("/delete")  
    public String deleteData(String Id) {
        return "success";
    }
    
}

三:配置切面

package com.hyhh.microcloud.config;

import com.hyhh.microcloud.util.EHCacheUtil;
import net.sf.ehcache.Cache;
import org.aspectj.lang.annotation.After;
import org.aspectj.lang.annotation.Aspect;
import org.aspectj.lang.annotation.Pointcut;
import org.springframework.stereotype.Component;

@Component
@Aspect
public class AuthorityAopConfig {

    @Pointcut(""execution(public * com.example.demo.controller.HelloController.add*(..))"")
    public void AopRRDelete(){}

   @Pointcut("execution(* com.example.demo.controller.HelloController.update*(..))")
    public void AopAopRRUpdate(){}


    @Pointcut("execution(* com.example.demo.controller.HelloController.delete*(..))")
    public void AopMuneDelete(){}

    @Pointcut("AopRRDelete()||AopAopRRUpdate()||AopRRAdd()")
    public void AopConfig4(){}


    @After("AopConfig4()")
    public void fun1() throws Throwable {
        EHCacheUtil.removeAll("UserLogin");
        Cache userLogin = EHCacheUtil.getCache("UserLogin");
        System.out.println("完成切面"+userLogin.getSize());
    }





}

四:只要调用这个HelloController 中的这几个方法  然后执行清除缓存的操作  就ok

发布了75 篇原创文章 · 获赞 9 · 访问量 5万+

猜你喜欢

转载自blog.csdn.net/zy1471162851/article/details/90753710