http://sourceforge.net/project/showfiles.php?group_id=174258
ActiveRecordの親レコード/子レコード取得メソッドをtoParentName()/childNameList()に変更。
あと、結合したテーブルをもう少し簡単に取得できるように。
親レコード取得
Book book = Book.find(Book.PUBLISHER.eq("01").and(Book.ID.eq("001"))); Publisher publisher = book.toPublisher(); System.out.println(publisher);
'SELECT BOOK.AUTHOR, BOOK.CREATE_DATE, BOOK.ID, BOOK.ISSUE_DATE, BOOK.PUBLISHER, BOOK.TITLE, BOOK.UPDATE_DATE FROM BOOK WHERE ( BOOK.PUBLISHER = ? ) AND ( BOOK.ID = ? ) [01, 001]'
'SELECT PUBLISHER.CREATE_DATE, PUBLISHER.ID, PUBLISHER.NAME, PUBLISHER.UPDATE_DATE, PUBLISHER.VOLUMES FROM PUBLISHER WHERE (ID = ?) [01]'
Publisher@{create_date=1999-07-10 17:10:00.000, id=01, name=Eigakukan, update_date=2005-07-10 17:10:00.000, volumes=4}
子レコード取得
Book[] books = Publisher.findByPK("01").bookList(); System.out.println(new TabularFormat(books));
'SELECT PUBLISHER.CREATE_DATE, PUBLISHER.ID, PUBLISHER.NAME, PUBLISHER.UPDATE_DATE, PUBLISHER.VOLUMES FROM PUBLISHER WHERE ID = ? [01]'
'SELECT BOOK.AUTHOR, BOOK.CREATE_DATE, BOOK.ID, BOOK.ISSUE_DATE, BOOK.PUBLISHER, BOOK.TITLE, BOOK.UPDATE_DATE FROM BOOK WHERE (PUBLISHER = ?) [01]'