ApplicationContext applicationContext = new ClassPathXmlApplicationContext(xmlPath);app
此處applicationContext會有警告出現,根據警告的英文意思翻譯成中文就是「applicationContext沒有關閉」,和Scanner,DB,IO相似,用完即關,因此咱們要把applicationContext關閉。而applicationContext沒有直接提供關閉的方法,在它的子類「ConfigurableApplicationContext」中,則提供了close()方法,因而能夠用((ConfigurableApplicationContext)applicationContext).close();spa
警告則再也不出現。翻譯
固然,比較裝逼的寫法也有:applicationContext.getClass().getMethod("close").invoke(applicationContext);xml
或者既然都要獲取bean,要去new「ClassPathXmlApplicationContext」了,那何不把「ApplicationContext applicationContext = new ClassPathXmlApplicationContext(xmlPath);」整句修改了,把ApplicationContext直接替換成ClassPathXmlApplicationContext,更爲直接明瞭呢,因而能夠修改爲以下:生命週期
ClassPathXmlApplicationContext applicationContext = new ClassPathXmlApplicationContext(xmlPath);get
applicationContext.close(); // 注:好像Spring高版本不能夠如此使用io
能夠了解Spring的生命週期以便更清晰的瞭解方法