2016-06-11 4 views
2

GenericGenerator 세부 사항 .... 내가이 라인을 제외하고는 대부분의 일을 이해 위의 코드에서최대 절전 모드 : 저는 최대 절전 모드를 배우고

@Id 
@GeneratedValue(generator="foreign") 
@GenericGenerator(name="foreign", strategy="foreign", parameters={ 
     @Parameter(name="property" ,value="company") 
}) 
public Long getId() { 
    return id; 
} 

parameters={ 
     @Parameter(name="property" ,value="company") 
} 

모든 들어

답변

4

도와주세요 GenericGenerator를 사용하면 전략과 관련하여 키/값 (매개 변수) 목록을 전달할 수 있습니다.

GenericGenerator는 전략 "외국인"을 사용하여이 "속성" 및 예상 라는 하나 개의 매개 변수엔티티 이름입니다 기대하고있다. 이는 엔티티 ID가 링크 된 엔티티와 동일 함을 의미합니다.

저작 엔티티 :

@Entity 
@Table(name="authors") 
public class Author { 

    @Id 
    @GeneratedValue 
    private Integer id; 

    private String name; 

    @OneToOne(mappedBy="author", cascade=CascadeType.ALL) 
    private Biography biography;  
} 

전기 엔티티 예 :

@Entity 
@Table(name="biographies") 
public class Biography { 

    @Id 
    @Column(name="id") 
    @GeneratedValue(generator="gen") 
    @GenericGenerator(name="gen", strategy="foreign", 
    [email protected](name="property", value="author")) 
    private Integer id; 

    @OneToOne 
    @PrimaryKeyJoinColumn 
    private Author author; 
} 

그 경우, 각 전기 ID는 작성자와 동일한 ID를 가질 것 신분증.