仅限内部类的hibernate @Entity(顶级类不是@Entity)

mas*_*y88 3 entity hibernate jpa subclass playframework-2.2

我想将内部类保存到数据库中.但它很有用.这样做有可能吗?或者我应该将该内部类放入新的普通文件中?现在我收到了一个错误

 [IllegalArgumentException: Unknown entity: models.foo$bar] 
Run Code Online (Sandbox Code Playgroud)

我的班级文件:

package models;
public class foo {
     @Required public String report;
     @Required public String reportType;


     @Entity
     public static class bar{
         @Required public int year;
         @Required public int month;

         public void toDataBase() {
                JPA.em().persist(this);
         }
     }
}
Run Code Online (Sandbox Code Playgroud)

Ble*_*kit 10

引用JPA 2.1规范:

实体类必须是顶级类.不得将枚举或接口指定为实体

您可以从此地址下载规范.可以映射为实体的内容在这里也有很好的描述.