J2EE, Entity Bean - пользователь1 расширяет пользователя - PullRequest
0 голосов
/ 25 мая 2011

Я создал новый Entity Bean под названием User.
Я хотел бы расширить его, сделав несколько новых Entity Bean с именем User1 (и User2, User3 и т. Д.), Которые представляют тип / группу пользователей.).

Пользователь1 имеет те же атрибуты, что и Пользователь (идентификатор, тип, имя пользователя, пароль, имя, фамилия) и некоторые другие (например, электронная почта, номер телефона, которого у общего пользователя нет).

Я бы хотел, чтобы все новые добавленные атрибуты на User1 были сохранены в другой таблице в логическом проекте: USER (идентификатор, имя пользователя, пароль, тип, имя, фамилия);USER1 (userId, email, phoneNumber);

Это означает, что USER1 будет объединенной таблицей между USER и USER1 по id = userId.Имеет ли это какой-то смысл?

Это мой код бина сущности пользователя.

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 Ответ

1 голос
/ 25 мая 2011

Я нашел решение, используя аннотацию @Inheritance(strategy=InheritanceType.JONED)

Для смешанной стратегии: http://forums.oracle.com/forums/thread.jspa?threadID=1030022

...