본문 바로가기

전체 글104

ORM / 양방향 매핑 원리 테이블 조인을 할 때 전략을 바꿀 수 있습니다. 컬렉션 값에 대해서 default 값은 lazy loding으로 처음 select가 일어날 때 컬렉션은 select 하지 않고 컬렉션이 필요할 때 다시 select를 해서 컬렉션의 데이터를 불러오는 방식입니다. 이때는 select가 두번 일어나기 때문에 IO도 두번 일어나게 됩니다. 이렇게 @OneToMany annotation 안에 fetch값을 EAGER로 해주면 서버 실행 시 컬렉션을 join 합니다. Post 테이블에서 User는 컬렉션 타입이 아니기때문에 EAGER가 default 값입니다. user 테이블의 @OneToMany annotation의 fetch 값을 EAGER로 설정하고 아래 메서드를 실행해보면 콘솔창을 확인해보면 Hibernate.. 2021. 7. 17.
양방향 매핑 - @OneToMany, @JasonIgnoreProperties 더보기 2021.07.04 - [Spring] - DB 데이터 활용하기 - jpa 테이블 join 참고해주세요! 데이터 베이스에 데이터가 여러개 있을 때 양방향 조인을 하기 위해서 user 테이블에 있는 컬렉션에도 @OneToMany annotation을 붙여줍니다. 여기서 @OneToMany annotation에 mappedBy 는 foreign 키의 주인이 아니라는 뜻 입니다. 이런 상황에서 브라우저에서 전체 데이터에 대해서 접근을 한다면 이렇게 조인을 잘 해서 출력해줌 하지만 아이디를 통해서 찾으려고 하면 서로 양쪽에서 조인하기 때문에 무한 조인이 됩니다. post에서 user 변수 값을 가져오기 위해 조인된 user 모델에서 데이터를 가져오려고 하면 post 컬랙션 정보를 또 가져오기 위해 pos.. 2021. 7. 17.
git bash - github 연결하기 git hub에 repository를 만들어줍니다. repository 주소를 복사해줍니다. git add, commit을 다 한 상태에서 git remote add 이름 repository 주소 해줍니다. 이때 git hub에 로그인 하라는 창이 뜰 수도 있습니다. 로그인 해줍니다. git push 이름 master 해주면 git hub에 올라갑니다. 확인해보면 잘 올라갔습니다. 2021. 7. 7.
git branch 만들기 git에 업로드 할 파일에서 우클릭 - Git Bash Here 해줍니다 git branch로 현재 branch를 확인해줍니다. git branch branch이름 해주면 새로운 branch가 생성됩니다. git checkout branch이름 으로 해당 branch로 이동해주세요 apple branch로 이동한 상태에서 apple-test라는 .txt 파일을 하나 만들고 add, commit 해주었습니다. git checkout master로 master branch로 이동하면 apple-test 텍스트 파일이 사라진 것을 볼 수 있습니다. apple branch에서 만든 것이기 때문에 master branch에서는 볼 수 없는 것입니다. branch를 합치고 싶다면 git merge apple을 해줍.. 2021. 7. 7.
Git Bash - add, commit, reset git에 올릴 폴더로 들어가 우클릭해줍니다. git init 을 해주면 숨김 폴더로 .git 폴더가 생성된 것을 볼 수 있습니다. .git 폴더가 생성되면 제대로 실행된 것 입니다. git add .를 해줍니다. add 뒤에 파일 명을 쓰지만 . 을 쓰면 해당 폴더 전체를 add 하는 것 입니다. git status를 입력해 현재 상태를 보면 add는 했지만 commit 하기 전 상태임을 알 수 있습니다. git commit -m "메시지"를 입력해줍니다. commit이 제대로 작동하면 commit 한 내역을 볼 수 있습니다. git status 를 입력해보면 working tree clean이라는 문구가 있는데 이게 나오면 현재 파일의 데이터가 모두 commit 된 상태라는 뜻입니다. 폴더에 hello.. 2021. 7. 4.
Git Bash - download Git은 알아서 형상관리, 버전관리를 해주는 도구입니다. https://git-scm.com/downloads Git - Downloads Downloads macOS Windows Linux/Unix Older releases are available and the Git source repository is on GitHub. GUI Clients Git comes with built-in GUI tools (git-gui, gitk), but there are several third-party tools for users looking for a platform-specific exp git-scm.com 먼저 git을 다운로드해줍니다. 운영체제에 맞는걸로 다운로드해줍니다. 다른 설정할 필요 없이.. 2021. 7. 4.
728x90
반응형