์คํ๋ง ๋ฐ์ดํฐ JPA(16)
-
[์คํ๋ง ๋ฐ์ดํฐ JPA] 4. ์ฟผ๋ฆฌ ๋ฉ์๋ ๊ธฐ๋ฅ
0๏ธโฃ ์ฟผ๋ฆฌ ๋ฉ์๋ ๊ธฐ๋ฅ - ๋ฉ์๋ ์ด๋ฆ์ผ๋ก ์ฟผ๋ฆฌ ์์ฑ - NamedQuery - @Query : ๋ฆฌํ์งํ ๋ฆฌ ๋ฉ์๋์ ์ฟผ๋ฆฌ ์ ์ - ํ๋ผ๋ฏธํฐ ๋ฐ์ธ๋ฉ - ๋ฐํ ํ์ - ํ์ด์ง๊ณผ ์ ๋ ฌ - ๋ฒํฌ์ฑ ์์ ์ฟผ๋ฆฌ - @EntityGraph -> ์คํ๋ง ๋ฐ์ดํฐ JPA๊ฐ ์ถ๊ฐ๋ก ๋ ํธํ๊ฒ ์ฌ์ฉํ๋๋ก ์ ๊ณตํด์ฃผ๋ ๊ธฐ๋ฅ๋ค!! - ์ฟผ๋ฆฌ ๋ฉ์๋ ๊ธฐ๋ฅ 3๊ฐ์ง - ๋ฉ์๋ ์ด๋ฆ์ผ๋ก ์ฟผ๋ฆฌ ์์ฑ - ๋ฉ์๋ ์ด๋ฆ์ผ๋ก JPA NamedQuery ํธ์ถ - @Query ์ด๋ ธํ ์ด์ ์ ์ฌ์ฉํด์ ๋ฆฌํฌ์งํ ๋ฆฌ ์ธํฐํ์ด์ค์ ์ฟผ๋ฆฌ ์ง์ ์ ์ 1๏ธโฃ ๋ฉ์๋ ์ด๋ฆ์ผ๋ก ์ฟผ๋ฆฌ ์์ฑ : ๋ฉ์๋ ์ด๋ฆ์ ๋ถ์ํด์ JPQL ์ฟผ๋ฆฌ ์คํ - ์์ JPA ๋ฆฌํฌ์งํ ๋ฆฌ MemberJpaRepository -> Member๊ฐ์ฒด์์ ์ด๋ฆ์ด ๊ฐ๊ณ , ๋์ด๊ฐ ์ฃผ์ด์ง ๋์ด๋ณด๋ค ๋ง์ ํ์ ..
2022.09.28 -
[์คํ๋ง ๋ฐ์ดํฐ JPA] 3. ๊ณตํต ์ธํฐํ์ด์ค ๊ธฐ๋ฅ
1๏ธโฃ ์์ JPA ๊ธฐ๋ฐ ๋ฆฌํฌ์งํ ๋ฆฌ ๋ง๋ค๊ธฐ ๊ธฐ๋ณธ CRUD - ์ ์ฅ - ๋ณ๊ฒฝ -> ๋ณ๊ฒฝ ๊ฐ์ง Dirty Checking - ์ญ์ - ์ ์ฒด ์กฐํ - ๋จ๊ฑด ์กฐํ - ์นด์ดํธ โ ์ฐธ๊ณ JPA์์ ์์ ์ ํน๋ณํ ๋ช ๋ น์์ด ๋ณ๊ฒฝ๊ฐ์ง ๊ธฐ๋ฅ์ ์ฌ์ฉํ๋ฉด ๋๋ค. ํธ๋์ญ์ ์์์ ์ํฐํฐ๋ฅผ ์กฐํํ ๋ค์์ ๋ฐ์ดํฐ๋ฅผ ๋ณ๊ฒฝํ๋ฉด, ํธ๋์ญ์ ์ข ๋ฃ ์์ ์ ๋ณ๊ฒฝ๊ฐ์ง ๊ธฐ๋ฅ์ด ์๋ํด์ ๋ณ๊ฒฝ๋ ์ํฐํฐ๋ฅผ ๊ฐ์งํ๊ณ UPDATE SQL์ ์คํํ๋ค. - ์์ JPA ๊ธฐ๋ฐ ๋ฆฌํฌ์งํ ๋ฆฌ : ํ์ [Optional] Java8์์๋ Optional ํด๋์ค๋ฅผ ์ ๊ณตํด NPE ๋ฐ์ํ๋๊ฑธ ๋ฐฉ์งํ ์ ์๋๋ก ๋์์ค๋ค. Optional๋ null์ด ์ฌ ์ ์๋ ๊ฐ์ ๊ฐ์ธ๋ Wrapper ํด๋์ค๋ก, ์ฐธ์กฐํ๋๋ผ๋ NPE๊ฐ ๋ฐ์ํ์ง ์๋๋ก ๋์์ค๋ค. Optional์ ๊ฐ์ด n..
2022.09.22 -
[์คํ๋ง ๋ฐ์ดํฐ JPA] 2. ์์ ๋๋ฉ์ธ ๋ชจ๋ธ
https://www.inflearn.com/course/%EC%8A%A4%ED%94%84%EB%A7%81-%EB%8D%B0%EC%9D%B4%ED%84%B0-JPA-%EC%8B%A4%EC%A0%84/dashboard ์ค์ ! ์คํ๋ง ๋ฐ์ดํฐ JPA - ์ธํ๋ฐ | ๊ฐ์ ์คํ๋ง ๋ฐ์ดํฐ JPA๋ ๊ธฐ์กด์ ํ๊ณ๋ฅผ ๋์ด ๋ง์น ๋ง๋ฒ์ฒ๋ผ ๋ฆฌํฌ์งํ ๋ฆฌ์ ๊ตฌํ ํด๋์ค ์์ด ์ธํฐํ์ด์ค๋ง์ผ๋ก ๊ฐ๋ฐ์ ์๋ฃํ ์ ์์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ๋ฐ๋ณต ๊ฐ๋ฐํด์จ ๊ธฐ๋ณธ CRUD ๊ธฐ๋ฅ๋ ๋ชจ๋ ์ ๊ณตํฉ๋๋ค. www.inflearn.com ์ธํ๋ฐ- ์ค์ ! ์คํ๋ง ๋ฐ์ดํฐ JPA ๊ฐ์๋ฅผ ๋ฃ๊ณ ์ ๋ฆฌํ ๋ด์ฉ์ ๋๋ค. 1๏ธโฃ ์์ ๋๋ฉ์ธ ๋ชจ๋ธ ๊ฐ๋จํ Member, Team๋ง ๋ง๋ค์ด์ ์งํํ๋ค. Member๋ ํ๋์ Team์ ๊ฐ์ง ์ ์๊ณ , Team์ ์ฌ๋ฌ๋ช ์ Membe..
2022.09.22 -
[์คํ๋ง ๋ฐ์ดํฐ JPA] 1. ํ๋ก์ ํธ ํ๊ฒฝ์ค์
https://www.inflearn.com/course/%EC%8A%A4%ED%94%84%EB%A7%81-%EB%8D%B0%EC%9D%B4%ED%84%B0-JPA-%EC%8B%A4%EC%A0%84/dashboard ์ค์ ! ์คํ๋ง ๋ฐ์ดํฐ JPA - ์ธํ๋ฐ | ๊ฐ์ ์คํ๋ง ๋ฐ์ดํฐ JPA๋ ๊ธฐ์กด์ ํ๊ณ๋ฅผ ๋์ด ๋ง์น ๋ง๋ฒ์ฒ๋ผ ๋ฆฌํฌ์งํ ๋ฆฌ์ ๊ตฌํ ํด๋์ค ์์ด ์ธํฐํ์ด์ค๋ง์ผ๋ก ๊ฐ๋ฐ์ ์๋ฃํ ์ ์์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ๋ฐ๋ณต ๊ฐ๋ฐํด์จ ๊ธฐ๋ณธ CRUD ๊ธฐ๋ฅ๋ ๋ชจ๋ ์ ๊ณตํฉ๋๋ค. www.inflearn.com ์ค์ ! ์คํ๋ง ๋ฐ์ดํฐ JPA ๊ฐ์๋ฅผ ๋ฃ๊ณ ์ ๋ฆฌํ ๋ด์ฉ์ ๋๋ค. 0๏ธโฃ ํ๋ก์ ํธ ํ๊ฒฝ์ค์ https://start.spring.io/ ์ฌ์ฉ ๊ธฐ๋ฅ: Spring web, Jpa, h2, lombok implementation 'o..
2022.09.21