Closed kazuki43zoo closed 9 years ago
メソッド引数を定義しておくと、作成済みのオブジェクトがDIされてくるみたいなので、こんか感じにしてみました。 依存するオブジェクトが明確になるし、記述もスマートかな〜と思ったのですが、Spring-BootというかJavaConfig的にはどうなんですかね?
package com.example; import net.sf.log4jdbc.Log4jdbcProxyDataSource; import org.springframework.boot.autoconfigure.jdbc.DataSourceBuilder; import org.springframework.boot.autoconfigure.jdbc.DataSourceProperties; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import javax.sql.DataSource; @Configuration public class AppConfig { @Bean DataSource realDataSource(DataSourceProperties dataSourceProperties) { return DataSourceBuilder.create(dataSourceProperties.getClassLoader()) .url(dataSourceProperties.getUrl()) .username(dataSourceProperties.getUsername()) .password(dataSourceProperties.getPassword()) .build(); } @Bean DataSource dataSource(DataSource dataSource) { return new Log4jdbcProxyDataSource(dataSource); } }
まあ、趣味の問題の範囲かと・・
メソッド引数を定義しておくと、作成済みのオブジェクトがDIされてくるみたいなので、こんか感じにしてみました。 依存するオブジェクトが明確になるし、記述もスマートかな〜と思ったのですが、Spring-BootというかJavaConfig的にはどうなんですかね?