2008年1月24日木曜日

jPersistその後、他

jPersistその後

SingleTableInheritanceの件は一旦調査を諦めて、作者の方に連絡する事にした。P of EAA: Single Table Inheritanceのモデルをそのまま使用した構成にしたけど、どうしてもサブクラスのTable名を解決できない。例えば、Footballerのインスタンスを作成してsave()すると、親クラスに対応するPlayersテーブルに保存してほしいのだが「Footballerテーブルが無ぇ」と言われてしまう。 下のようにjpersist.interfaces.TableMappingをDatabaseManagerに登録して無理やり名前解決をすればうまくいくが、これは何か違うし。
dbm.setGlobalMappers(new TableMapping() {
  public String getDatabaseTableName(String name) {
    if (name == null)
      return null;
    if (name != null
        && (name.equalsIgnoreCase("footballer") || name
            .equalsIgnoreCase("clicketer"))) {
      return "Players";
    } else {
      return StringUtils.camelCaseToUpperCaseUnderline(name);
    }
  }
}, null);
俺のSTIの理解が間違っているだけの可能性が大きいけど、jPersistのSTI関連のDocumentの在処でもいいから教えてくだされと連絡した。

バナナ

20日に3本パックを購入したが既に全滅(一本は嫁さんが喰った)。月曜日にも追加で2本パックを購入しておいたが、それも昨日喰ってしまった。シズラー行ったときに喰っておけば良かった!

0 件のコメント: