开发者

J2EE, Entity Bean - User1 extends User

I've created a new Entity Bean, called User.

I would like to extend it, making some new Entity Beans called User1 (and User2, User3, and so on.. which represent the user type/开发者_如何学JAVAgroup).

User1 has the same attributes as User (id, type, username, password, name, surname), and some others (like email, phoneNumber which the generic User doesn't have).

I would like all the new added attributes on User1 to be stored in a different table in a logic-like project: USER(id, username, password, type, name, surname); USER1(userId, email, phoneNumber);

That means USER1 will be a joined table between USER and USER1 on id=userId. Does it make any sense?

This is my User Entity Bean code.

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
    ...

}


I've found out a solution, using the annotation @Inheritance(strategy=InheritanceType.JONED)

For mixed strategy: http://forums.oracle.com/forums/thread.jspa?threadID=1030022

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜