J2EE,实体Bean - User1扩展用户

时间:2011-05-24 22:07:01

标签: java java-ee ejb javabeans

我创建了一个名为User的新实体Bean 我想扩展它,制作一些名为User1的新实体Bean(以及User2,User3等等......代表用户类型/组)。

User1具有与User(id,type,username,password,name,surname)相同的属性,以及其他一些属性(如通用用户没有的email,phoneNumber)。

我希望User1上所有新添加的属性存储在类似逻辑的项目中的不同表中: USER(id,username,password,type,name,surname); USER1(userId,email,phoneNumber);

这意味着USER1将是USER和USER1之间在id = userId上的连接表。 它有意义吗?

这是我的用户实体Bean代码。

package com.entity;

import java.io.Serializable;
import javax.persistence.*;

@Entity
@DiscriminatorColumn(name="type")
public class User implements Serializable {

    @Id
    @GeneratedValue(strategy=GenerationType.AUTO)
    private int id;
    private String username;
    private String password; 
    private String type;
    private String name;
    private String surname;



    public User(String username, String password, String name, String surname) {
        super();
        this.setUsername(username);
        this.setPassword(password);
        this.setName(name);
        this.setSurname(surname);
    }

    public User() {
        super();
    }  

    ...
    getter&setter methods here
    ...

}

1 个答案:

答案 0 :(得分:1)

我使用注释@Inheritance(strategy=InheritanceType.JONED)

找到了解决方案

对于混合策略: http://forums.oracle.com/forums/thread.jspa?threadID=1030022