수색…
매개 변수
주석 | 목적 |
---|---|
@ 테이블 생성기 | 생성자를 찾을 수있는 생성자 이름과 테이블 이름을 지정합니다. |
@ 생성 값 | 생성 전략을 지정하고 생성자의 이름을 나타냅니다. |
@ManyToOne | 직원과 부서 간의 다 대일 관계를 지정합니다. |
@OneToMany (mappedBy = "department") | Employee 엔티티에서 @ManyToOne 어노테이션을 참조함으로써 Employee와 Department 간의 양방향 관계를 생성합니다. |
일대 다 관계
일대 다 매핑은 대개 일대일 매핑의 양방향 관계입니다. 우리는 Many to one 매핑을 위해 취한 것과 동일한 예제를 취할 것입니다.
Employee.java
@Entity
public class Employee {
@TableGenerator(name = "employee_gen", table = "id_gen", pkColumnName = "gen_name", valueColumnName = "gen_val", allocationSize = 100)
@Id
@GeneratedValue(strategy = GenerationType.TABLE, generator = "employee_gen")
private int idemployee;
private String firstname;
private String lastname;
private String email;
@ManyToOne
@JoinColumn(name = "iddepartment")
private Department department;
// getters and setters
}
Department.java
@Entity
public class Department {
@TableGenerator(table = "id_gen", pkColumnName = "gen_name", valueColumnName = "gen_val", name = "department_gen", allocationSize = 1)
@Id
@GeneratedValue(strategy = GenerationType.TABLE, generator = "department_gen")
private int iddepartment;
private String name;
@OneToMany(mappedBy = "department")
private List<Employee> employees;
// getters and setters
}
jpa 일대 다 매핑에 대해 기억해야 할 두 가지 점이 있습니다.
- 많은 측면에서 관계의 소유 측면입니다. 열은 그면에 정의됩니다.
- 일대 다 매핑은 inverse side side이므로 mappedBy 요소는 역변환에서 사용해야합니다.
Modified text is an extract of the original Stack Overflow Documentation
아래 라이선스 CC BY-SA 3.0
와 제휴하지 않음 Stack Overflow