mirror of
https://github.com/continew-org/continew-starter.git
synced 2025-09-09 08:57:17 +08:00
feat(core): SpringUtils 工具类新增 getBean(Class<T> clazz, boolean ignoreNoSuchBeanEx) 方法
This commit is contained in:
@@ -17,6 +17,7 @@
|
|||||||
package top.continew.starter.core.util;
|
package top.continew.starter.core.util;
|
||||||
|
|
||||||
import cn.hutool.extra.spring.SpringUtil;
|
import cn.hutool.extra.spring.SpringUtil;
|
||||||
|
import org.springframework.beans.factory.NoSuchBeanDefinitionException;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Spring 工具类
|
* Spring 工具类
|
||||||
@@ -40,4 +41,25 @@ public class SpringUtils {
|
|||||||
public static <T> T getProxy(T target) {
|
public static <T> T getProxy(T target) {
|
||||||
return (T)SpringUtil.getBean(target.getClass());
|
return (T)SpringUtil.getBean(target.getClass());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 通过 class 获取 Bean
|
||||||
|
*
|
||||||
|
* @param <T> Bean类型
|
||||||
|
* @param clazz Bean类
|
||||||
|
* @param ignoreNoSuchBeanEx 是否忽略 {@link NoSuchBeanDefinitionException}
|
||||||
|
* @return Bean对象
|
||||||
|
* @see SpringUtil#getBean(Class)
|
||||||
|
* @since 2.13.1
|
||||||
|
*/
|
||||||
|
public static <T> T getBean(Class<T> clazz, boolean ignoreNoSuchBeanEx) {
|
||||||
|
try {
|
||||||
|
return SpringUtil.getBean(clazz);
|
||||||
|
} catch (NoSuchBeanDefinitionException e) {
|
||||||
|
if (ignoreNoSuchBeanEx) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
throw e;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user