在咱們的工做中,常常會遇到須要在普通類中使用放在Spring容器中的類的狀況。最多見的狀況大概就是有一個類他的屬性的是經過spring的配置文件讀取的。這樣這個類必然要交給Spring容器進行管理。這個時候若是咱們在普通類中直接new這個類是不能夠拿到的。屬性值不會加載成功。下面介紹一個方法。spring
咱們獲取spring容器中的類,都從這個工具類裏面來獲取。springboot
import org.springframework.context.ConfigurableApplicationContext; public class BeanUtil { public static ConfigurableApplicationContext applicationContext; public static <T> T getBean(Class<T> c){ return applicationContext.getBean(c); } }
public class Application { public static void main(String[] args) { ConfigurableApplicationContext run = SpringApplication.run(InformationApplication.class, args); BeanUtil.applicationContext = run; } }
咱們獲取一個FileUploadUtil。app
FileUploadUtil fileUploadUtil = BeanUtil.getBean(FileUploadUtil.class);