| 
 package com.kuaff.ejb3.secondary; 
  
import javax.ejb.Dependent; 
import javax.ejb.DependentAttribute; 
import javax.ejb.Column; 
import javax.ejb.Entity; 
import javax.ejb.GeneratorType; 
import javax.ejb.Id; 
import javax.ejb.Table; 
import javax.ejb.SecondaryTables; 
import javax.ejb.SecondaryTable; 
import javax.ejb.JoinColumn; 
  
@Entity  
@Table(name = "STUDENT") 
@SecondaryTables({ 
@SecondaryTable(name = "GENDER", join = {@JoinColumn(name = "GENDER_ID")}) 
}) 
public class Student implements java.io.Serializable 
{ 
    private int id; 
    private Name name; 
    private String grade; 
    private String email; 
    private String gender; 
     
  
    @Id(generate = GeneratorType.AUTO)  
    public int getId() 
    { 
        return id; 
    } 
  
    public void setId(int id) 
    { 
        this.id = id; 
    } 
  
    public void setName(Name name) 
    { 
        this.name = name; 
    } 
  
    @Dependent( 
    { @DependentAttribute(name = "first", column ={ @Column(name = "FIRST") }),  
      @DependentAttribute(name = "last", column ={ @Column(name = "LAST") }) })  
    public Name getName() 
    { 
        return name; 
    } 
  
    public void setGrade(String grade) 
    { 
        this.grade = grade; 
    } 
  
    @Column(name = "GRADE")  
    public String getGrade() 
    { 
        return grade; 
    } 
  
    public void setEmail(String email) 
    { 
        this.email = email; 
    } 
  
    @Column(name = "EMAIL")  
    public String getEmail() 
    { 
        return email; 
    } 
  
    public void setGender(String gender) 
    { 
        this.gender = gender; 
    } 
     
    @Column(name = "gender", secondaryTable = "GENDER") 
    public String getGender() 
    { 
        return gender; 
    } 
  
} 
   |