怠惰なものがtrueに設定された1対多の関連付けを持つCustomerandPhoneクラスがあります。
IDが「101」のCustomerオブジェクトを使用してロードします
Customer cust = (Customer) session.get(Customer.class, 1); -- (1)
cust.getPhoneList(); -- (2)
System.out.println(cust.getPhoneList()); -- (3)
ポイント(1)では、電話が遅延ロードされているため、電話のリストがありません。
ポイント(2)で、電話のリストがなく、データベース呼び出しも行われません。
ポイント(3)またはポイント(2)をポイント(3)に置き換えると、電話番号のリストを返すデータベース呼び出しが行われます。データベース呼び出しは、電話番号を操作した場合にのみ電話番号を返すと常に思っていました。リスト。たとえば、cust.getPhoneList().size()
またはそれを繰り返します。
printステートメントを使用してデータベースを呼び出す理由がわかりませんでしたか?