[Seasar-user:7323] Re: インスタンス管理―SMART Deployの時

Koichi Kobayashi [E-MAIL ADDRESS DELETED]
2007年 4月 17日 (火) 20:00:06 JST


小林 (koichik) です.

Date:    Tue, 17 Apr 2007 13:16:40 +0900
From:    <[E-MAIL ADDRESS DELETED]>
To:      [E-MAIL ADDRESS DELETED]
Subject: [Seasar-user:7317] インスタンス管理―SMART Deployの時

> Seasar2 2.3の時インスタンス管理について、デフォルト時singletonですが、
> 2.4のSMART DEPLOYを利用する場合はなんですか、

Page,Service 等によって異なります.

Action      : request
Connector   : singleton
Converter   : prototype
Dao         : prototype
Dto         : request
Dxo         : singleton
Helper      : prototype
Interceptor : prototype
Logic       : prototype
Page        : request
Service     : prototype
Validator   : prototype

> 若しデフォルト属性を利用したくない場合は、どうしますか?

上記のカテゴリ単位で変更する場合は creator.dicon で
次のように設定します.

<component class="org.seasar.framework.container.creator.ServiceCreator">
  <property name="instanceDef">
    @[E-MAIL ADDRESS DELETED]
  </property>
</component>

カテゴリ単位ではなく,特定のクラスだけ変更したい場合は
アノテーションで指定します.
Java5 であれば

@Component(instance=InstanceType.SINGLETON)
public class FooDto {
  ...
}

J2SE1.4 の場合は

public class FooDto {
  public static final String COMPONENT = "instance=singleton";
  ...
}




-- 
<component name="koichik">
    <property name="fullName">"Koichi Kobayashi"</property>
    <property name="email">"[E-MAIL ADDRESS DELETED]"</property>
    <property name="blog">"http://d.hatena.ne.jp/koichik"</property>
</component>




Seasar-user メーリングリストの案内