spring boot 配置AOP时不生效

星辰海 星辰海 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
最近在学习了springboot,但是遇到了这样一个问题,我搭建完架构后,想加上一个请求日志打印和响应日志打印,这无疑就用到了spring的AOP机制了,但是我配置完了之后,确是没有生效。我也百度了,但是看配置都和我差不多,但是我的却不生效,这令我百思不得其解,希望大家帮我看看。我的代码如下:

/**
* 这配置AOP的代码
*/
@Aspect
@Component
public class HttpAspect{

private Logger logger = LoggerFactory.getLogger(HttpAspect.class);

public HttpAspect(){
logger.info("=============初始化AOP===============");
}

@Pointcut("execution(public * com.springboot.mybatis.controller.*.*(..))")
public void log(){
}

/**
*
* 获取请求的信息
*/
@Before("log()")
public void doBefore(JoinPoint joinPoint){

ServletRequestAttributes arrt = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes();
HttpServletRequest request = arrt.getRequest();
logger.info("请求地址 url:{}",request.getRequestURL());
logger.info("请求方式 :{}",request.getMethod());
logger.info("请求者ip地址:{}",request.getRemoteAddr());
logger.info("访问的类与方法:{}",joinPoint.getSignature().getDeclaringTypeName()+"."
+joinPoint.getSignature().getName());
logger.info("请求参数:{}",joinPoint.getArgs());
}

/**
* 获取响应的信息
* @param object
*/
@AfterReturning(returning = "object", argNames = "object", pointcut = "log()")
public void doAfterReturning(Object object){

logger.info("响应信息如下:");
logger.info("response:{}",object.toString());
}
}


/**
* 这是启动应用的代码
*/
@SpringBootApplication(scanBasePackages = "com")
@MapperScan(basePackages = "com.springboot.mybatis.dao")
public class SpringbootMybatisApplication {

public static void main(String[] args) {
SpringApplication.run(SpringbootMybatisApplication.class, args);
}
}


#这是我的配置文件
server:
port: 8080
context-path: /sbm

spring:
profiles:
active: dev
#数据库配置
datasource:
url: jdbc:mysql://localhost:3306/testaclec?useUnicode=true&characterEncoding=utf-8&useSSL=false
username: root
password: 123456
type: com.alibaba.druid.pool.DruidDataSource
driver-class-name: com.mysql.jdbc.Driver
#页面跳转配置
mvc:
view:
prefix: /view/
suffix: .html

#mybatis 配置
mybatis:
mapper-locations: classpath:mapper/*.xml
type-aliases-package: com.springboot.mybatis.model

#分页插件配置
pagehelper:
helperDialect: mysql
reasonable: true
supportMethodsArguments: true
params: count=countSql

logging:
config: classpath:logback-spring.xml

...全文

相关推荐

评论 16
收藏 已收藏
分享
返回顶部
星辰海
Java EE 67,535 成员 225,843 内容