您好,登錄后才能下訂單哦!
利用監聽器怎么對Spring bean id進行唯一校驗?針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。
1.自定義一個ContextLoader
public class MyContextLoader extends ContextLoader { /** * 設置allowBeanDefinitionOverriding屬性為false,spring ioc容器在加載bean的過程中會去判斷beanName 是否有重復,. <br/> * 如果發現重復的話再根據allowBeanDefinitionOverriding 這個成員變量,. <br/> * 如果是false的話則拋出BeanDefinitionStoreException 這個異常,如果為true的話就會覆蓋這個bean的定義. <br/> * @see org.springframework.web.context.ContextLoader#customizeContext(javax.servlet.ServletContext, * org.springframework.web.context.ConfigurableWebApplicationContext) */ @Override protected void customizeContext(ServletContext servletContext, ConfigurableWebApplicationContext applicationContext){ super.customizeContext(servletContext, applicationContext); XmlWebApplicationContext context = (XmlWebApplicationContext) applicationContext; //設置allowBeanDefinitionOverriding屬性為false context.setAllowBeanDefinitionOverriding(false); } }
2.自定義一個ContextLoaderListener
/** * ClassName:MyContextLoaderListener <br/> * Function: 自定義ContextLoaderListener. <br/> * Date: 2013-1-18 下午04:12:00 <br/> * @author chenzhou * @version * @since JDK 1.6 */ public class MyContextLoaderListener extends ContextLoaderListener { @Override protected ContextLoader createContextLoader(){ return new MyContextLoader(); } }
3.修改web.xml文件的監聽器配置
<!-- 自定義的ContextLoaderListener --> <listener> <listener-class>com.chenzhou.examples.erm.util.listener.MyContextLoaderListener</listener-class> </listener>
關于利用監聽器怎么對Spring bean id進行唯一校驗問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注億速云行業資訊頻道了解更多相關知識。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。