[Seasar-user:18805] 【Doma】1対1/1対n の実装方法
黒川博之
[E-MAIL ADDRESS DELETED]
2009年 10月 29日 (木) 09:08:25 JST
黒川と申します。
Domaについて教えて下さい。
http://doma.sandbox.seasar.org/faq.html#feature-11
1対1/1対n がサポートされていないようですがどのような理由からでしょうか?
また、1対1/1対n を実現するには、どのような実装方法があるでしょうか?
Delegateを使用する手順を考えましたが
他に何かいい方法があればお教え下さい。
【EmployeeDao】
@Dao(config = MdbConfig.class)
public interface EmployeeDao {
@Delegate(to = EmployeeDaoDelegate.class)
Employee findByIdAndDept(String id);
}
【EmployeeDaoDelegate】
public class EmployeeDaoDelegate {
protected final Config config;
public EmployeeDaoDelegate(Config config) {
this.config = config;
}
public Employee findByIdAndDept(String id) {
EmployeeDao employeeDao = new EmployeeDaoImpl();
Employee employee = employeeDao.findById("0001");
DeptDao deptDao = new DeptDaoImpl();
employee.dept = deptDao.findById(employee.deptid);
return employee;
}
}
【その他】
プラグイン
@Delegate先のメソッドにジャンプする機能や、クラスやメソッドがなければ自動作成する
機能があれば便利かと思いました。
Seasar-user メーリングリストの案内