팀 프로젝트 피드백을 봤는데, 결과가 아쉬웠다.
잘한점이 한 문장도 없었어서..
아무래도 한번 갈아엎기도 했고.. 라고 생각을 해보려고 한다.
그래도 피드백 내용은 개발자로써 기본적으로 신경써야 하는 부분이라고 생각된다.
static 사용 방법 / private / 분기 처리 / HashMap 초기화 같은 메모리 정리 / 클래스명
등등 뼈가 아파오는 기본기들인데 너무 미숙하게 코드를 짜고 확인을 거치지 않았다고 생각한다.
피드백이니까 위의 단점을 고쳐서 내것으로 만들어보자!
팀 프로젝트 소스를 보느라 진도를 거의 나가지 못하였다.
내일~금요일 까지 해서 개인과제 나오기 전에 학습 마무리 하려고 한다.
아 그리고, 개인과제 질문 당시 jpa 에 대한 부분도 있었는데 이것도 찾아봐야겠다.
영속성 컨텍스트 ( 이어서 )
em.find(찾고싶은 Entity 클래스의 타입, 식별자 = PK)
Entity를 삭제를 하려면, 우선 DB에 있는지 조회해서 영속성 컨텍스트에 가져온다
그리고 바로 삭제되는게 아니라 'DELETED' 라는 태그를 붙여놓는다
마지막에 'commit' 까지 해주면 마무리
--- 1차 캐시 ---
쓰기 지연 저장소(Action Queue)
말 그대로 저장하기 전 대기? 느낌
Flush
em.commit() 안에는 사실 em.flush()가 포함되어 있다
영속성 컨텍스트에 변경 내용들을(Action Queue) DB에 요청해주는 메서드 = insert
! 데이터를 조작하는 기능을 수행하려면 트랜잭션 환경이 "필수" 이다!