[TIL] 10월 12일

yeon·2021년 10월 13일
1

오늘 학습한 내용

  • Java HashMap과 HashTable, 해시 충돌과 해결 방법에 대해 학습했다.
    • Hash 충돌을 해결하는 방법은 Open Addressing과 Seperate Chaining이 있다.
    • Open Addressing은 해싱 결과 버킷이 이미 사용 중일 때 다른 버킷을 사용하는 법
    • seperate chaining은 Linked List 혹은 tree를 이용해서 여러개의 값을 체이닝해서 저장하는 법, Java에서는 이 방법을 사용한다.
  • JPA one to many 관계의 엔티티를 페치조인 시 DB에 반환되는 row 수가 many기준으로 증가한다. 따라서 페이징 쿼리를 날리면 one의 기준이 아닌 many를 기준으로 페이징 결과가 나와서 하이버네이트는 모든 결과를 메모리에 올려서 페이징 처리를 한다.
    • 이전에 학습했던 내용인데 면접 때 제대로 대답하지 못해서 내가 제대로 알고 있는게 아니구나 싶었다. 다시 학습하고 쿼리 나가는 것도 확인하고 이전에 올린 글도 명확하게 수정했다.

0개의 댓글