2011-07-01から1ヶ月間の記事一覧

JUNITからDataSourceを利用するためには

やることは、 1. 自前でinitialcontextを作成して、JNDIにbindしてあげる。JNDIへのbindingには、TomcatのNamingを利用するので、いつもの通り、pom.xmlに記述して取得する。 DataSourceの取得といったらconnectionの取得なので、ついでにcommons-dbcpを利用…

Google Guiceを利用したJUnit試験用のRunnerとAnnotation 改造

前回作成したTestRunnerに対して、Moduleのクラス名のsafixにTestが付いているものを優先して読み込むように改造した。 #テスト時は、xxxxを利用したいといった場合用です。 public class GuiceJunitRunner extends BlockJUnit4ClassRunner { protected fina…

Google Guiceでservlet

GuiceでServeletを利用するには、guice-servlet.jarが必要になります。 mavenのglobal repositoryにないので、ローカルリポジトリに登録します。 %maven install:install-file -Dfile=guice-servlet-3.0.jar -DgoupdId=com.google.guice -DartifactId=guice-…

Google GuiceのProviderによるInjection

factory系で生成したオブジェクトをDIしましょうという機能らしい。 やり方は2通りで、Providerを実装するか、@Providesインスタンスで指定するか。ただのhogeを返すProvider. public class SampleProvider implements Provider<String> { public String get() { ret</string>…

Google GuiceのInterceptor順序

結論は、bindInterceptor()に登録した順にInterceptorが起動する(っぽい)。Interceptor public class Sample1Intercetpor implements MethodInterceptor { @Override public Object invoke(MethodInvocation invocation) throws Throwable { System.out.pr…

LruHashMap

割と使うのでのせとく。この辺の実装はネットであふれている。 S2の実装をベースに改造。 型推論付きのインスタンス生成メソッド付き。 public class LruHashMap<K, V> extends LinkedHashMap<K, V> { private static final long serialVersionUID = 1L; /** * デフォル</k,></k,>…