spring - spring boot 中常用代码在哪里写
问题描述
我想编写应该在每个方法之前执行的通用代码,我在哪里可以把这个代码放在春天。
提前致谢。
解决方案
你应该看看Spring AOP。使用 Spring AOP,您可以编写 Aspects,这些 Aspects 可以是在方法之前/之后执行的通用代码。以下示例是一个简单的方面:
@Aspect
public class EmployeeAspect {
@Before("execution(public String getName())")
public void getNameAdvice(){
System.out.println("Executing Advice on getName()");
}
@Before("execution(* your.package.name.*.get*())")
public void getAllAdvice(){
System.out.println("Service method getter called");
}
}
在@Before()
注释中,您可以指定被 Aspect 包围的确切方法,或者使用通配符*
指定更多方法。为此,您应该熟悉Pointcut 表达式。
推荐阅读
- node.js - 我可以在没有任何 GUI 的情况下在 Raspberry pi 上运行 Chromium 中的本地托管网站吗?(仅限 CLI)
- r - 如何将 data.frame 中的列从列表转换为向量?
- javascript - 为什么我的 Google 图表无法在 Safari 上运行?
- reactjs - 如何在功能组件中映射设置器?
- c# - 当涉及外键时,无法邮递员 POST 到 dot net API c#
- javascript - firebase-messaging-sw.js 文件中用于 firebase 应用程序初始化的动态凭据
- java - 如何使用 Spring Data Redis 2.x 通过 Spring Boot 从 redis 缓存中获取所有密钥?
- python - 使用 Python 和 Kivy 的小型纸牌游戏
- python - 清除 vlc media_list_player 的媒体列表将不允许重新启动媒体播放器
- c - C OMP for 并行区域中的循环。非工作共享