Daoからinsert()した後に、インサートしたエンティティを取得することはできますでしょうか?
何がしたいかと言いますと、
Address address = addressDao.insert();
system.out.println(address.getId())
というふうに、自動生成されたIDを取得したいのです。
insertの呼び出しは引数にbeanをセットすると思うので
以下のようになるはずです。
Address address = new Address();
addressDao.insert(address);
system.out.println(address.getId());
http://s2dao.seasar.org/ja/s2dao.html#IDAutoGenerate
上記リンクの「IDの自動生成」の項目の一行目に
「自動生成された値をBeanに自動的に設定することが出来ます。」
とあります。
IDの自動生成が正しく設定されていれば、呼び出し時のbeanにセットされているはずです。
insertの呼び出しは引数にbeanをセットすると思うので
以下のようになるはずです。
Address address = new Address();
addressDao.insert(address);
system.out.println(address.getId());
http://s2dao.seasar.org/ja/s2dao.html#IDAutoGenerate
上記リンクの「IDの自動生成」の項目の一行目に
「自動生成された値をBeanに自動的に設定することが出来ます。」
とあります。
IDの自動生成が正しく設定されていれば、呼び出し時のbeanにセットされているはずです。
>insertの呼び出しは引数にbeanをセットすると思うので
すみません。間違えました。
>IDの自動生成が正しく設定されていれば、呼び出し時のbeanにセットされているはずです。
本当ですか!! 試してみます。ありがとうございます!
IDの自動設定を正しく設定して下さい。
お二人ともありがとうございます。できました(泣)
@Id(value = IdType.IDENTITY)
private int id;
>insertの呼び出しは引数にbeanをセットすると思うので
すみません。間違えました。
>IDの自動生成が正しく設定されていれば、呼び出し時のbeanにセットされているはずです。
本当ですか!! 試してみます。ありがとうございます!