2010-12-01 13 views
0

私は最近Eclipse HeliosとHibernate Tools 3.4.0.Beta1をインストールしました。Hibernate Tools:基本クラスを生成する方法は?

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

私は情報を求めるのに多くの時間を費やしましたが、実用的な答えは見つかりませんでした。 誰かが助けることができるなら...事前に感謝

答えて

0

私はそれを行う方法も探しています。参照を更新せずに別のパッケージに私のカスタムクラス「Individual.java」を保存するために

  • :私が今やっている何を は、にあります。
  • 拡張し、私のカスタムクラス(個人)を動かし、すべての私のPOJO(テーブルの名前を持つ、すなわち、個々の)
  • 参照を更新せずにテーブル名+「ベース」(すなわちIndividualBase)に名前を変更)
  • を生成他のパッケージからのpojo。

あなたは、例えばによってそれを行うための自動的な方法を見つけるか:カスタムテンプレートあなたを書く

  • を使用して

    • 設定は
    をによりhibernate.reveng.xml
  • Antタスクを所有

    私はHibernate Synchronizerがこれをうまくやっていることに同意します!

  • 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(この場合)と呼ばれます。 あなたは、この基本クラスを拡張します(たとえば、ユーザーと呼ばれる)別のクラスを作成することができます。

    public class User extends UserBase { 
    
        public User() { 
        } 
    
        public void SomeFunction() { 
        ... 
        } 
    
    } 
    

    これは私のために働いているようです。 これはあなたや他の人が似たようなことをするのに便利だと思っています。

    関連する問題