Spring Boot进阶之Web 2-1 使用AOP处理请求 上

本文介绍了一种编程范式——面向切面编程(AOP),并详细讲解了如何在Spring Boot项目中使用AOP来处理HTTP请求日志。通过在pom.xml中引入spring-boot-starter-aop依赖,创建@Aspect注解的Java类,实现@Before注解来在特定控制器方法执行前打印日志。
摘要由CSDN通过智能技术生成

2-1 使用AOP处理请求 上

视频地址

https://www.imooc.com/video/14343

  • AOP
    AOP是一种编程范式
    与语言无关,是一种程序设计思想
    面向切面(AOP)Aspect Oriented Programming
    面向对象(OOP)Object Oriented Programming
    面向过程(POP)Procedure Oriented Programming
    面向过程到面向对象的区别
    面向过程假如下雨了,我打开了雨伞
    面向对象
    new天气 ——》下雨
    new 我 ——》打伞
    AOP将通用逻辑从业务逻辑中分离出来
    在这里插入图片描述
    使用AOP时步骤:
    记录每一个http请求日志在
  • pom.xml里增加
<dependency>   
<groupId>org.springframework.boot</groupId>  
 <artifactId>spring-boot-starter-aop</artifactId>
 </dependency>
  1. 增加(不需要在启动类上增加注解)

在这里插入图片描述
具体代码入下
创建时应注意创建java类

package com.imooc.girl.aspect;

import org.aspectj.lang.annotation.Aspect;
import org.aspectj.lang.annotation.Before;
import org.springframework.stereotype.Component;

//需增加注解@Aspect
// @Component引入spring容器用
@Aspect
@Component
public class HttpAspect {
//执行com.imooc.girl.controller.GirlController.*(..)下面的所有方法前 输出1111 *的地方可以换成具体的方法名这样只拦截这个方法 
    @Before("execution(public * com.imooc.girl.controller.GirlController.*(..))")    
    //@Before("execution(public * com.imooc.girl.controller.GirlController.girlList(..))") 可以是这样的  ..表示任何参数 都会被拦截  com.imooc.girl.controller.GirlController.*(..) 表示任何方法都会被拦截 befor注解会在执行方法前进行拦截
    public void log(){
        System.out.print(1111);
    }

}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值