optimize 框架组件的api尽量用本地实现类,提升执行效率

This commit is contained in:
1351515658@qq.com
2024-07-30 11:33:12 +08:00
parent 77e082c17c
commit 0431201141
5 changed files with 45 additions and 5 deletions

View File

@@ -1,5 +1,6 @@
package cn.iocoder.yudao.framework.apilog.config;
import cn.hutool.extra.spring.SpringUtil;
import cn.iocoder.yudao.framework.apilog.core.filter.ApiAccessLogFilter;
import cn.iocoder.yudao.framework.apilog.core.interceptor.ApiAccessLogInterceptor;
import cn.iocoder.yudao.framework.apilog.core.service.ApiAccessLogFrameworkService;
@@ -26,12 +27,26 @@ public class YudaoApiLogAutoConfiguration implements WebMvcConfigurer {
@Bean
@SuppressWarnings("SpringJavaInjectionPointsAutowiringInspection")
public ApiAccessLogFrameworkService apiAccessLogFrameworkService(ApiAccessLogApi apiAccessLogApi) {
// Cloud 专属逻辑:优先使用本地的 apiAccessLogApiImpl 实现类,而不是 Feign 调用
try {
ApiAccessLogApi apiImpl = SpringUtil.getBean("apiAccessLogApiImpl", ApiAccessLogApi.class);
if (apiImpl != null) {
apiAccessLogApi = apiImpl;
}
} catch (Exception ignored) {}
return new ApiAccessLogFrameworkServiceImpl(apiAccessLogApi);
}
@Bean
@SuppressWarnings("SpringJavaInjectionPointsAutowiringInspection")
public ApiErrorLogFrameworkService apiErrorLogFrameworkService(ApiErrorLogApi apiErrorLogApi) {
// Cloud 专属逻辑:优先使用本地的 apiErrorLogApiImpl 实现类,而不是 Feign 调用
try {
ApiErrorLogApi apiImpl = SpringUtil.getBean("apiErrorLogApiImpl", ApiErrorLogApi.class);
if (apiImpl != null) {
apiErrorLogApi = apiImpl;
}
} catch (Exception ignored) {}
return new ApiErrorLogFrameworkServiceImpl(apiErrorLogApi);
}