Jpa 播放框架超类

Jpa 播放框架超类,jpa,model,playframework,Jpa,Model,Playframework,我想用一个抽象的超类创建两个表 我有3个用户->全职用户,兼职用户,他们的数据几乎相同 我创建了模型,但未创建表用户:( 我该怎么办? 提前谢谢 模型全职用户 @Entity public class User extends Model{ public String name; public Date start; public Date end; public boolean status; ...... public Projec

我想用一个抽象的超类创建两个表

我有3个用户->全职用户,兼职用户,他们的数据几乎相同

我创建了模型,但未创建表用户:( 我该怎么办? 提前谢谢

模型全职用户

@Entity
public class User extends Model{


     public String name;
     public Date start;
     public Date end;
     public boolean status;


......

     public Project() {
        super();
          }
}
兼职用户模型

@Entity
public class User extends Model{


     public String name;
     public Date start;
     public Date end;
     public boolean status;


......

     public Project() {
        super();
          }
}
@Entity
public class partTimeUser extends User {

     public Time startTime ;
     public Time endTime; 
}
@Entity
public class partTimeUser extends User {
    public Time startTime ;
    public Time endTime;  } 
}
-----------------------------------2º答复----------------------------------------

我可以这样做吗? 或者在获取对象时是不同的

模型用户

@MappedSuperclass 
public class User extends Model{
     public String name;
     public Date start;      
     public Date end;
     public boolean status;   
     ......
     public Project() {  
         super(); 
      } 
}
兼职用户模型

@Entity
public class User extends Model{


     public String name;
     public Date start;
     public Date end;
     public boolean status;


......

     public Project() {
        super();
          }
}
@Entity
public class partTimeUser extends User {

     public Time startTime ;
     public Time endTime; 
}
@Entity
public class partTimeUser extends User {
    public Time startTime ;
    public Time endTime;  } 
}
类完全用户

@Entity
public class partTimeUser extends User {
}

在JPA中,您应该添加一些关于继承类型的注释

@Inheritance(strategy = InheritanceType.JOINED)
@Table(name = "USER")
@Entity
public class User ...

@Table(name = "PART_TIME_USER")
@Entity
public class PartTimeUser extends User ...

另外,@Table注释是不必要的。尽管如此,我还是喜欢定义它。它使代码及其与数据库对象的连接更具可读性。

我认为,这也会起作用。您将得到两个表(PartTimeUser和FullTimeUser)这使用了很多相同的列。magomi you way不起作用,它没有实现用户类是的,在你修复之前做过,并且不起作用,它创建了表,但是part_time_用户,没有从user继承任何内容。table part_time_用户,只有on fildsrange。我在至少在我的环境中(JPA/Hibernate)。