2012-02-02 8 views
0

言って、私の休止状態マッピングは、以下のエントリHibernate 3.6 classMetaDataはcomposite-idクラスを公開していますか?

<class name="foo.Person" table="person" lazy="false"> 
    <composite-id name="personId" class="foo.PersonId"> 
     <key-property name="FIRST_NAME" type="string" column="FIRST_NAME"/>  
     <key-property name="LAST_NAME" type="string" column="FIRST_NAME"/>  
    </composite-id> 
    <property name="AGE" type="int" node="AGE" column="AGE"/> 
</class> 

は私が複合-IDクラス名「FOOを見つけるためにorg.hibernate.metadata.ClassMetadataまたはAbstractEntityPersister SingleTableEntityPersisterのようなそのサブクラスを使用することができますどのような方法がありました。 PersonId "?私はそれは簡単だが、私はちょうどそれがClassMetaDataオブジェクトをデバッグモードで調べることによってそれを見つけることができない。私はpersonIdとFIRST_NAMEとLAST_NAMEを見つけるためにgetIdentifierPropertyNameとgetPropertyColumnNamesを使うことができますが、クラス名 "foo.PersonId"を得ることはできません。

org.hibernate.cfg.ConfigurationにgetClassMappingsがあり、foo.PersonIdがあることがわかりましたが、Springを使用してSessionFactoryを初期化し、cfg.xmlを使用しないため、どのようにするかわかりません私の必要性のために構成のインスタンスを取得します。

答えて

0
ClassMetaData c; 
c.IdentifierType.ReturnedClass; 
+0

おかげでFiroが見えます!遅れたフィードバックに申し訳ありません! – Gerry

関連する問題