建立獲取Springbean物件工具類
需求: 建立一個工具類,可以根據beanId獲取spring的bean物件.
1.在web.xml配置監聽器
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<listener>
<listener-class>org.springframework.web.context.request.RequestContextListener</listener-class>
</listener>
<listener>
<listener-class>
com.demo.utils.SpringBeanGetter
</listener-class>
</listener>
2.建立監聽器實現類,實現ServletContextListener
public class SpringBeanGetter implements ServletContextListener
{
public SpringBeanGetter()
{
}
public void contextDestroyed(ServletContextEvent arg0)
{
setContext(null);
}
public void contextInitialized(ServletContextEvent arg0)
{
setContext(arg0.getServletContext());
}
private static final void setContext(ServletContext context)
{
context = context;
}
public static final Object getBean(String beanId)
{
WebApplicationContext application;
for(application = WebApplicationContextUtils.getWebApplicationContext(context); application == null && errorCount < 5;)
try
{
Thread.currentThread();
Thread.sleep(3000L);
application = WebApplicationContextUtils.getWebApplicationContext(context);
logger.error(" \u672A\u627E\u5230applicationContext \u5BF9\u8C61");
errorCount++;
}
catch(InterruptedException e)
{
e.printStackTrace();
}
if(null != application)
return application.getBean(beanId);
else
return null;
}
private static ServletContext context = null;
private static final Logger logger = Logger.getLogger(com/huawei/ecommerce/common/base/utils/SpringBeanGetter);
private static int errorCount = 0;
}
相關文章
- 反射獲取注入到spring中的類物件的工具類反射Spring物件
- 如何建立和獲取正則物件?物件
- 通過反射獲取私有內部類物件反射物件
- 物件獲取原型物件物件原型
- Java 中建立子類物件會建立父類物件麼?Java物件
- java獲取專案路徑工具類Java
- Java service層獲取HttpServletRequest的工具類JavaHTTPServlet
- Spring boot 獲取yml檔案工具類Spring Boot
- Oracle獲取資料庫中的物件建立語句Oracle資料庫物件
- 在spring中獲取代理物件代理的目標物件工具類Spring物件
- 類與物件的建立物件
- 獲取行政區劃資訊(省、市)工具類
- Java實現獲取本機Ip的工具類Java
- Hyperf 獲取 Swoole\Server 的物件以及函式類的封裝Server物件函式封裝
- Java String類,字串常量池,建立方法,字串的獲取,擷取,轉換,分割。Java字串
- Unity通過子物件獲取父物件例子Unity物件
- 反射--Class物件功能--獲取Method反射物件
- 獲取 Class 物件的 3 種方法物件
- JavaScript 通過class獲取元素物件JavaScript物件
- Java獲取Spring的各種物件JavaSpring物件
- Grails通過sessionId獲取session物件AISession物件
- JavaScript獲取物件資料型別JavaScript物件資料型別
- 獲取類屬性值,當前類,父類
- 獲取類名稱的方法
- PHP --反射 --獲取類的方法PHP反射
- 父類和子類物件的獲取值的方式驗證,透過父類屬性的方式獲取不到值,需要使用get方法物件
- three.js獲取物件的材質JS物件
- 遞迴遍歷物件獲取value值遞迴物件
- Vue事件獲取觸發事件物件和繫結事件物件Vue事件物件
- Springbean定義SpringBean
- .net core 靜態類獲取appsettingsAPP
- 關於類的物件建立與初始化物件
- Java獲取Class物件的方式和例項化物件的方式Java物件
- Java中獲取Class物件的三種方式Java物件
- MogDB/openGauss學習筆記-獲取物件DDL筆記物件
- 獲取Spring容器中Bean例項的工具類(Java泛型方法實現)SpringBeanJava泛型
- ros|TF工具獲取IMU資料ROS
- 驗證物件是否為空的工具類物件