2012-03-24 29 views

回答

5

您可以在構造函數或其他名稱的方法上使用@Autowired。我個人更喜歡後者的選擇。

@Autowired 
public MyClass(DataSource dataSource) { 
    super(); 
    setDataSource(dataSource); 
} 

@Autowired 
public void setDs(DataSource dataSource) { 
    setDataSource(dataSource); 
} 
+0

另一種解決方案是注入的,而不是配置'DaoSupport'模板(這是線程安全的!!):http://stackoverflow.com/a/ 21992433/173149 – gavenkoa 2014-02-24 16:00:05

+0

應該從\ @Inject開始使用,而不是\ @Autowired註釋。 – 2016-12-23 16:32:12

1

另一種選擇是這樣的:

@Autowired 
    private DataSource ds; 

    @Override 
    protected void initDao() throws Exception { 
     super.initDao(); 
     setDataSource(ds); 
    }