0

最近、Eclipse Helios と Hibernate Tools 3.4.0.Beta1 をインストールしました。

マッピング ファイルから「基本クラス」を生成しようとしていますが、その方法がわかりません。Individual.hbm.xml というマッピング ファイルがあるとします。Hibernate Tools に 2 つの POJO を生成させたい: - コンストラクターとゲッター/セッターを含む BaseIndividual.java - POJO を再生成するたびに削除されない「カスタム」コードを追加できる Individual.java

情報を探すのに多くの時間を費やしましたが、実用的な答えは見つかりませんでした。誰かが助けてくれるなら...よろしくお願いします

4

2 に答える 2

1

自分で同じことをしようとしているときに、あなたの質問に出くわしました(と思います)。

私が行ったことは、hbm.xml 構成ファイルで次のように設定することです。

<class
    name="User"
    table="USERS">
    <meta attribute="generated-class">ocs.authentication.UserBase</meta>
    <id
        name="user_id"
        column="USER_ID"
        type="integer">
        <generator class="increment"/>
    </id>
    <property
        name="username"
        column="USERNAME"
        type="string" />
</class>

セクションに注意してください<meta attribute="generated-class">。これにより、生成されたクラスが UserBase と呼ばれるようになります (この場合)。次に、この基本クラスを拡張する別のクラス (たとえば User と呼ばれる) を作成できます。

public class User extends UserBase {

    public User() {
    }

    public void SomeFunction() {
    ...
    }

}

これは私のために働いているようです。これがあなた、または同様のことをしたい他の人にとって役立つことを願っています。

于 2012-05-27T16:24:26.743 に答える
0

私もそれを行う方法を探しています。私が今していることは、次のことです。

  • 参照を更新せずに、カスタム クラス「Individual.java」を別のパッケージに保存します。
  • すべての pojo を生成します (テーブルの名前、つまり個人)
  • 参照を更新せずに、それらの名前を tablename+"Base" (つまり、IndividualBase) に変更します)
  • 次に、他のパッケージから pojo を拡張するカスタム クラス (Individual) を移動します。

たとえば、次のように自動的に行う方法を見つけましたか。

  • カスタム テンプレートの使用
  • 独自の Ant タスクを作成する
  • hibernate.reveng.xml を構成する

Hibernate Synchronizer が非常にうまく機能していたことに同意します。

于 2011-09-02T08:21:45.853 に答える