我正在使用Java 6和Hibernate 3.6.9库开发Java应用程序。我想创建一个与特定类紧密相关的枚举,因此我想将其定义为该类的一部分:

package org.mycompany.container;

public class Container{

    public enum ContainerType{
        SMALL,MEDIUM,BIG
    }

    private ContainerType _ContainerType;

    private Integer _Id;

    //Getter and setters

}


然后,我想将我的容器类映射到Hibernate配置文件中(我不使用注释)。因此,我有这个xml片段(该类的包在hibernate-mapping文件的开头指定):

<class name="Container" table="tcontainer">
    <id name="_Id" column="id">
        <generator class="increment" />
    </id>
    <property name="_ContainerType" column="container_type">
        <type name="org.hibernate.type.EnumType">
            <param name="enumClass">org.mycompany.container.Container.ContainerType</param>
            <param name="type">12</param>
        </type>
    </property>
</class>


但是,Hibernate似乎无法识别ContainerType类,并且出现了ClassNotFoundException。我已经做了几次将此枚举作为一个单独的类。

有什么办法吗?汇集您的想法。

最佳答案

尝试这个 :

org.mycompany.container.Container$ContainerType

10-07 16:31