[Seasar-user:13923] Re: [S2JDBC] 複数のデータソースの使い方について
Toshihiro Nakamura
[E-MAIL ADDRESS DELETED]
2008年 4月 24日 (木) 16:50:04 JST
中村(taedium)です。
> public class GetJdbcManagerTest extends S2TestCase {
> @Binding("jdbcManagerB")
> private JdbcManager jdbcManager;
>
> @Override
> protected void setUp() throws Exception {
> include("app.dicon");
> }
>
> public void testGetMessage() throws Exception {
> Message message = jdbcManager.from(Message.class)
> .where("id = ?", 1).getSingleResult();
> System.out.println("message="+message.getMessage());
> }
> }
> →→→message=aaaaと表示されます。
@Bindingは、このアノテーションを使っているクラスが、
Seasar2のコンポーネントの場合にだけ有効です。
たとえば、このGetJdbcManagerTestは、Seasar2のコンポーネント
ではないので、@Bindingは評価されず、JdbcManager型で
先に見つかったjdbcManagerAがバインディングされています。
@Bindingを使うクラスがコンポーネントの場合は
上記の書き方で問題ないのですが、S2Unitでは
private JdbcManager jdbcManagerB;
と変数名をコンポーネント名にあわせる必要があります。
(同じインタフェースをもつ複数のコンポーネントがある場合)
--
Nakamura Toshihiro <[E-MAIL ADDRESS DELETED]>
Seasar-user メーリングリストの案内