プロパティに hbase テーブルからの読み取りを使用するカスタム ResourceLoader を作成する方法を探しています。独自の ApplicationContext を作成し、getResource をオーバーライドして、独自の ResourceLoader を使用できることがわかりました。
@Override
public Resource getResource(String location) {
if (location.startsWith(HbaseResource.HBASE_PREFIX) ) {
ResourceLoader loader = (ResourceLoader)getBean(HbaseResourceLoader.class);
return loader.getResource(location);
} else{
return super.getResource(location);
}
}
ClasspathXmlApplicationContext のみを使用し、独自の contxt クラスを作成せずに、同じ結果を得る方法を探しています。ResourceLoaderAwareについて読むと、次の行が表示されます。
ResourcePatternResolver 依存関係の代わりに、Bean ファクトリによる自動型変換を使用してパターン文字列を介して入力された Resource 配列型の Bean プロパティを公開することを検討してください。
これは何らかの形で私を助けることができますか? カスタムResourceLoaderを登録するのに見逃した別の方法はありますか?