hibenate 한 쌍 의 다 중 양 방향 연결 에서 list 를 어떻게 설정 합 니까?
클래스 에 다음 과 같이 표 시 됩 니 다. (속성의 set 와 get 방법 을 생략 합 니 다)
public class User implements Serializable {
private static final long serialVersionUID = -7327980678002278494L;
/** id */
private Long id;
/** */
private String username;
/** */
private String password;
//
private List<Archives> archives;
}
public class Archives implements Serializable {
/**
*
*/
private static final long serialVersionUID = 1L;
private Long id;
//
private String name;
//
private User manager;
}
데이터베이스 테이블 에 대해
문서 관리 표 의 SQL 문 구 는 다음 과 같다.
create table USER (
ID bigint not null,
USER_NAME varchar(15),
primary key(ID)
);
파일 시트 의 SQL 문 구 는 다음 과 같다.
create table ARCHIVES(
ARCHIVES_ID bigint not null,
ARCHIVES_NAME char(15),
ARCHIVES_REMARK char(15) ,
USER_ID bigint,
oreign key(USER_ID) references A_USER(ID),
primary key(ARCHIVES_ID)
);
다음은 각자 의 hibenate 파일 설정 User. hbm. xml 입 니 다.
<list name = "archives" table = "ARCHIVES" cascade = "save-update" lazy="true">
<!-- a_user , ARCHIVES USER_ID -->
<key column = "USER_ID">
</key>
<!-- ARCHIVES_ID ARCHIVES -->
<index column = "ARCHIVES_ID"></index>
<!-- user archives -->
<one-to-many class = "com.archivesManagement.domain.Archives"></one-to-many>
</list>
Archives. hbm. xml 에서 Archives 속성 관리자 설정
<!-- USER_ID ARCHIVES -->
<many-to-one name="manager"
column = "USER_ID"
class = "com.archivesManagement.domain.User"
not-null = "true"
></many-to-one>
설정 에 오류 가 발생 하면 org. hibenate. Property AccessException: IllegalArgument Exception occurred while calling setter of 이러한 오류 가 발생 했 습 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
[JPA] 즉시로딩(EAGER)과 지연로딩(LAZY) (왜 LAZY 로딩을 써야할까?) (1)Proxy는 이 글의 주제인 즉시로딩과 지연로딩을 구현하는데 중요한 개념인데, 일단 원리는 미뤄두고 즉시로딩과 지연로딩이 무엇인지에 대해 먼저 알아보자. 눈 여겨 볼 곳은 'fetch = FetchType.EAGER...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.