springboot-aop的demo
Posted l1057618497
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了springboot-aop的demo相关的知识,希望对你有一定的参考价值。
- pom中添加aop的maven依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-aop</artifactId>
</dependency>
- 写一个方法来使用aop
package com.lan.bbs.controller;
public String login(User user, HttpSession session){
if(session.getAttribute("user")!=null){
return "already login";
}
User u = userService.selectByAccount(user.gettAccount());
if (u != null && u.gettAccount().equals(user.gettAccount()) &&
u.gettPassword().equals(user.gettPassword())) {
session.setAttribute("user", u);
if(bloomFilter == null) setCounter(100);
if (!bloomFilter.mightContain(u.gettAccount())) {
count ++ ;
}
return "login success";
}
return "密码错误";
}
- 添加一个切面,加上注释
@Aspect
@Component
注意在springboot默认设置中,@Component组件必须要在application类的同级或者同级目录的下级包中才能被扫描到
package com.lan.bbs.test;
import org.aspectj.lang.annotation.After;
import org.aspectj.lang.annotation.Aspect;
import org.aspectj.lang.annotation.Before;
import org.aspectj.lang.annotation.Pointcut;
import org.springframework.stereotype.Component;
@Aspect
@Component
public class NotVeryUsefulAspect {
@Pointcut("execution(public * com.lan.bbs.controller.*.*(..))")// the pointcut expression, 对哪些方法使用这个aop
public void anyOldTransfer() {}// the pointcut signature 方法签名
@Before("com.lan.bbs.test.NotVeryUsefulAspect.anyOldTransfer()") //before-advice
public void before(){
System.out.println("----------aop before -----------------------");
}
@After("com.lan.bbs.test.NotVeryUsefulAspect.anyOldTransfer()")
public void after(){
System.out.println("----------aop after -----------------------");
}
}
- 执行
以上是关于springboot-aop的demo的主要内容,如果未能解决你的问题,请参考以下文章
[vscode]--HTML代码片段(基础版,reactvuejquery)
12mmaction2 行为识别商用级别X3D复现 demo实现 检测自己的视频 Expanding Architecturesfor Efficient Video Recognition(代码片段
[异常解决] Keil安装好nRF51822开发环境,运行DEMO报错:Error:“GPIOTE_CONFIG_NUM_OF_LOW_POWER_ENVENTS” is undefined(代码片段
jquery 对象的 heightinnerHeightouterHeight 的区别以及DOM 元素的 clientHeightoffsetHeightscrollHeightoffset(代码片段