Spring獲取管理對(duì)象常用方法詳解
網(wǎng)上方法很多種,我說(shuō)一些J2EE開發(fā)中會(huì)用到的方法。
第一種:
直接初始化Spring容器,獲得對(duì)象
ApplicationContext applicationContext = new ClassPathXmlApplicationContext("applicationContext.xml");
applicationContext.getBean("beanId");
關(guān)于配置文件的讀取也有好多種,我用到的是配置文件在SRC下面。
這樣會(huì)初始化Spring容器,然后再得到配置的對(duì)象。
第二種:
通過(guò)環(huán)境來(lái)獲得
ApplicationContext ac1 = WebApplicationContextUtils.getRequiredWebApplicationContext(request.getSession().getServletContext());
ApplicationContext ac2 = WebApplicationContextUtils.getWebApplicationContext(request.getSession().getServletContext());
ac1.getBean("beanId");
ac2.getBean("beanId");
區(qū)別是前者會(huì)拋異常,而后者沒(méi)有時(shí)返回NULL
第三種:
實(shí)現(xiàn)ApplicationContextAware接口
下面給出實(shí)現(xiàn)類,這也是我用的方法
import org.springframework.beans.BeansException;
import org.springframework.context.ApplicationContext;
import org.springframework.context.ApplicationContextAware;
/**
* @說(shuō)明 獲得Spring配置中的某個(gè)對(duì)象
* @author 崔素強(qiáng)
* @see
*/
public class SpringFactory implements ApplicationContextAware {
private static ApplicationContext context;
@SuppressWarnings("static-access")
@Override
public void setApplicationContext(ApplicationContext applicationContext)
throws BeansException {
this.context = applicationContext;
}
public static Object getObject(String id) {
Object object = null;
object = context.getBean(id);
return object;
}
}
這是WEB開發(fā)中可以用到的集中方法,當(dāng)然還有其他方法,歡迎大家積極提供!
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- SpringBoot中使用Quartz管理定時(shí)任務(wù)的方法
- SpringBoot2 整合MinIO中間件實(shí)現(xiàn)文件便捷管理功能
- Spring Boot Admin 進(jìn)行項(xiàng)目監(jiān)控管理的方法
- SpringBoot2.x的依賴管理配置
- Spring Boot集群管理工具KafkaAdminClient使用方法解析
- 基于SpringBoot框架管理Excel和PDF文件類型
- 詳解SpringBoot中Controller接收對(duì)象列表實(shí)現(xiàn)
- springboot集成rabbitMQ之對(duì)象傳輸?shù)姆椒?/a>
相關(guān)文章
Java static方法用法實(shí)戰(zhàn)案例總結(jié)
這篇文章主要介紹了Java static方法用法,結(jié)合具體案例形式總結(jié)分析了java static方法功能、使用方法及相關(guān)操作注意事項(xiàng),需要的朋友可以參考下2019-09-09
idea兩側(cè)的maven-project-structure圖標(biāo)不見了如何解決
這篇文章主要介紹了如何解決idea兩側(cè)的maven-project-structure圖標(biāo)不見了問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-07-07
Spring Boot創(chuàng)建可執(zhí)行jar包的實(shí)例教程
這篇文章主要介紹了Spring Boot創(chuàng)建可執(zhí)行jar包的實(shí)例教程,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-02-02
Java使用Callable和Future創(chuàng)建線程操作示例
這篇文章主要介紹了Java使用Callable和Future創(chuàng)建線程操作,結(jié)合實(shí)例形式分析了java使用Callable接口和Future類創(chuàng)建線程的相關(guān)操作技巧與注意事項(xiàng),需要的朋友可以參考下2019-09-09
Java中將UUID存儲(chǔ)為Base64字符串的方法實(shí)現(xiàn)
使用Base64編碼來(lái)對(duì)UUID存儲(chǔ)在一些特定的場(chǎng)合被廣泛的使用,本文主要介紹了Java中將UUID存儲(chǔ)為Base64字符串的方法實(shí)現(xiàn),具有一定的參考價(jià)值,感興趣的可以了解一下2024-04-04
SpringBoot項(xiàng)目打包成jar后獲取classpath下文件失敗的解決
這篇文章主要介紹了SpringBoot項(xiàng)目打包成jar后獲取classpath下文件失敗的解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-07-07
IntelliJ IDEA cmd和idea Terminal查看java版本不一致的解決
原來(lái)win10電腦上安裝的是jdk8的版本,因某些原因,現(xiàn)在想換成jdk7的版本,修改環(huán)境變量后,在cmd中執(zhí)行 [java -version]命令,顯示的是7的版本,遇到這樣的問(wèn)題如何解決呢?下面小編給大家分享IntelliJ IDEA cmd和idea Terminal查看java版本不一致的解決方案,一起看看吧2023-09-09
Sharding-Jdbc 自定義復(fù)合分片的實(shí)現(xiàn)(分庫(kù)分表)
本文主要介紹了Sharding-Jdbc 自定義復(fù)合分片的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-07-07

