2012-09-04 39 views
5

我正在將一些現有的xml配置轉移到Spring的Java配置。在此過程中,我遇到了一些轉移的Java代碼,這些代碼引發了一個檢查Exception我應該如何處理Spring的JavaConfig中的檢查異常?

@Bean 
public PoolDataSource myDataSource() 
{ 
    final PoolDataSource dataSource = PoolDataSourceFactory.getPoolDataSource(); 
    dataSource.setConnectionPoolName("myDataSourcePoolName"); // throws SQLException 
    return dataSource; 
} 

我不知道我應該如何處理它,無論是否Spring開發過任何「最佳實踐」記

我應該標記與throws條款所述的方法(其將向上傳播任何@Import鏈)還是應該處理它方法具有try - catch塊?

回答

6

作爲一般規則,您應該簡單地聲明@Bean方法的throws子句中的任何已檢查的例外。

我不確定你指的是「傳播任何@Import鏈」; throws子句當然會要求任何相關的@Bean方法依次聲明包含該異常的throws子句,但是在容器引導時實際異常傳播時,該異常將由Spring容器以與處理從Spring XML中配置的bean拋出的異常。 @Import這裏應該是一個正交關係。

+0

直接從開發者本身。謝謝,你已經充分回答了我的問題。不,沒有「正確」的方式來做到這一點。 –

相關問題