簡而言之...我的方面捕獲一個調用(由@Before)。 我可以從Spring的XML連接點bean的名字彈出設置屬性的代碼,同時擁有bean的名稱
myapp.dao.BookRepository
它看起來像這樣得到:
<bean id="bookRepo" class="myapp.dao.BookRepository">
<property name="dataSource" ref="dataSource" />
</bean>
所有我想要做的是設置如下圖所示的是財產調用的方法。
局部在於I類能做到這樣的(在方法主體第一行):
@Override
public Collection<Book> getAll() {
jdbcTemplate.setDataSource(dataSource); // this line I want to move to the aspect
return jdbcTemplate.query("select * from Book", new RowMapper<Book>() {
public Book mapRow(ResultSet rs, int rowNum) throws SQLException {
return extractBook(rs);
}
});
}
不幸的是我不得不這樣做在這一方面。還應該說,我有許多其他繼承該方法的類,所以我不能在沒有大的切換的情況下投入它(檢查bean名稱並將其轉換爲合適的類)。 請讓我知道如果這樣的事情在春天是可能的。
你爲什麼不注入'jdbcTemplate'呢? – kan 2013-04-20 17:19:44