コンストラクタインジェクション-tyep指定とindex指定

はたして使うのかどうか。。。 とにかく一度動かしてみようってなことで、 あれこれ、リファレンスを見ながらやってみた。 いろいろと種類があるもんだ。 その中でもindex指定ってのがあった。 要はコンストラクタのパラメータの順番に設定を定義していくというものである。 で、気になったのがコンストラクタの定義が

/** 実験 */
public class Hoge {
private Foo foo;
private Bar bar;
/** コンストラクタ1つ目 */
public Hoge(Foo foo, Bar bar) {
 this.foo = foo;
 this.bar = bar;
}
/** コンストラクタ2つ目 */
public Hoge(int number, String string) {
 new HogeExt(number, string);
}
public Hoge() {
 // コンパイラを通すのにとりあえず定義
}
}
class HogeExt extends Hoge {
private int number;
private String string;
public HogeExt(int number, String string) {
 this.number = number;
 this.string = string;
}
}
class Foo {
// とりあえず未定義
}
class Bar extends Foo {
// とりあえず未定義
}
コンストラクタのパラメータが2つの値を用意します。 index,valueな組み合わせを利用すると 単純なint,Stringの組み合わせが呼びだされる。 まぁ、当然と言えば当然なんだけど2つ目のコンストラクタが定義されていないときはExceptionが発生する。 どうしてもtypeではなくindexを使いたい場合はref属性で指定してやれば動いてくれることはわかった。 でも、コンストラクタインジェクションなんて使うかどうか。。。 僕的にはAspectJチック(と言っても範囲は広いけど)なことができれば十分だし。。。

Posted in ラベル: , | 0 コメント

[Spring2.5]factory-beanって何かね??

なんとなくではあるが、Springの使い方を改めて一から勉強してみる。 まぁ、正直今まででも真面目に見たことはなかったんですが。。。 いいかげんにこういったものの使い方を覚えておかないと この先生きていけるか不安で不安で。。。 ともかく、Spring 2.5.5のSpring ReferenceというPDFを読んでみた。 まだ、chapter3の途中までなんですが、 importとかの存在も知らなかった自分が恥ずかしいです。。。 何かあるんだろうなぁ~とは思いつつ過ごしてきただけにこうやって改めて見てみると 「やっぱり、きちんと書いてるんだなぁ~」と実感です。 あとは、よくドキュメントとかでBeanFactoryってのを呼んでたけど リファレンスではApplicationContextってのを呼んでる(もちろんBenaFactoryも載ってますけど) 階層構造を覗いてみて僕はまだまだ勉強不足ってことがよくわかった。 ApplicationContextの方がBeanFactoryより親なんだね。。。 僕はずっとBeanFactoryが親だと思ってたよ。。。 ともかく、こうやって一つ一つ見直していくといろいろあるもんだということが分かった。 その中でも一番よくわかんなかったのはfactory-beanっていう属性だ。

<!-- the factory bean, which contains a method called createInstance() -->
<bean id="serviceLocator" class="com.foo.DefaultServiceLocator">
<!-- inject any dependencies required by this locator bean -->
</bean>
<!-- the bean to be created via the factory bean -->
<bean id="exampleBean" bean="serviceLocator" method="createInstance">
</bean>
この中のfactory-beanの意義がようわからん。。。 やってることは理解してるつもりではいます。 com.foo.DefaultServiceLocator#createInstance()でタイプ未定義のexampleBeanを返すよん。 ってなところでしょう。 実際動かしてみたし、間違いはないはず。 結局、あえて別定義でBeanを用意するようなパターンってあるのかな?? もっと複雑になれば変わってくるのかもしれないけど。。。 そもそもファクトリーメソッドをいちいちSpringというコンテナ経由で取得する必要があんのかな?? だって、結局のところBeanとFactory間の関連が強くなっちゃうんじゃないの?? それならそのままコーディングした方が楽なような。。。 うーん、たぶん無知な僕は利点が見つかるまでは使わないと思う。。。

Posted in ラベル: , | 0 コメント

秋祭り

もう何年ぶりになるんだろうか? 久々に実家の秋祭りに行ってきた。 昔から16,17で開催されていたんだが、 数年前からは土日にやるようになっていた。 でもって、さすがにローカルの神輿 謂れとかがまったくわからんww しかし、友人が神輿を担いでいたりしてまぁおもしろかった。 秋祭り ちなみにスキンヘッドのおっちゃんは誰だかわからんです。。。 まぁ、たまにはこういうのもおもろいね。 しかし、姪っ子どものせいで散財そして体が悲鳴をあげております。。。

Posted in ラベル: | 0 コメント

JNLPException[category: システム設定 : Exception: null

WidgetFXで自分用アプリを作ろうと思っていたんですが、 困ったことにJavaWebStartで 「JRE1.6+が必要です」 というメッセージが出続けます。。。 JavaコントロールパネルのJavaランタイム設定のシステム部分が未登録なのかが分かんなかったんです。 昨日も同じように悩んでいて、 Javaコントロールパネルとか読んでたんですが、 deployment.propertiesなんていうのに必要そうな気分だ。。。 でも、deployment.propertiesってどこにあんの?? ってなところまで調べてタイムアップだったんですが、 今日、改めて調べてみました。 真面目にExceptionを調べればよかった。。。 でも、システム設定ってワードでググっても何もでてこない。。。 ものは試しにJNLPException[category: Systemで検索してみると Sunのフォーラムにこんなのが載ってた。 Java Web Start & JNLP - WebStart 1.6 issues with intranet JRE installers これの一番最後の部分を見ていたら、 各ユーザーでdeployment.propertiesを所持していることが判明!! さらに細かく読むと一回削除してjavawsを起動させると 新しく作成されるそうだ。 ためしにやってみたらうまいこと行きました♪ 最初はFW設定とかのからみか?と思って四苦八苦していたなんて恥ずかしくて言えないw

Posted in ラベル: , | 0 コメント