hashcode()
및 toString()
을 구현하지 않고 프로그램을 실행하면 정상적으로 작동합니다. 하지만 hashcode()
및 toString()
을 포함하는 즉시이 "로드 컬렉션에 대한 잘못된 액세스"오류가 발생합니다."컬렉션로드 불법 액세스"오류
내 HBM 파일은
1) booking.hbm.xml
에게<many-to-one name="userId" class="User" column="user_id"
insert="true" update="true" cascade="save-update" >
</many-to-one>
<many-to-one name="flightId" class="FlightSchedule"
column="flight_id" cascade="all" not-null="true">
</many-to-one>
<set name="passenger" table="passenger79215" lazy="false"
inverse="true" cascade="save-update">
<key column="reference_id" />
<one-to-many class="Passenger" />
</set>
2) Passenger.hbm.xml
<many-to-one name="referenceid" class="Booking" lazy="false"
insert="true" update="true" column="reference_id "
cascade="save-update">
</many-to-one>
3) User.hbm 있습니다 .xml
<set name="booking" table="bookings79215" lazy="true"
inverse="false" cascade="save-update">
<key column="user_id" />
<one-to-many class="Booking" />
</set>
누구든지 오류를 설명 할 수 있습니까?
안녕하세요 라비 ...이 HashCodeBuilder.reflectionHashCode (이)처럼 오버라이드있다; EqualsBuilder.reflectionEquals (this, obj); ToStringBuilder.reflectionToString (this); –
타사 도구를 사용하여 해시 코드를 생성하면 멤버 변수를 기반으로 고유 해시 코드가 생성되지 않을 수 있습니다. 두 개의 다른 객체에 대해 동일한 값을 보유하는 필드가 있으면 잘못 된 해시 코드를 얻을 수 있습니다. 직접 해시 코드를 생성 해보십시오 (또는 클래스를 마우스 오른쪽 버튼으로 클릭 한 상태에서> 소스 -> 해시 코드 생성 및 같음) –
hello ravi ... 나도 Hashcode() 및 equals()를 생성했습니다. 제공하고 여전히 같은 오류를주고 있습니다 ... –