๐ Java & Kotlin & Spring53 [Spring & SpringBoot-JPA] JPA Query Method - JPA ์ฟผ๋ฆฌ ๋ฉ์๋๋ฅผ ์์๋ณด๊ณ ์ฌ์ฉํ์. Hibernate์ QueryMethod ์ฐ๋ฆฌ๊ฐ ์ง๊ธ๊น์ง ๋ฐฐ์ ๋ ์์ ๋ฅผ ๋ค์ ํ๋ฒ ๊ฐ๋ณ๊ฒ ๋ด๋ณด์. Test ์ฝ๋์ด๋ ์ด๋ค ์๋น์ค์ด๋ ๋ชจ๋ findById() ๋ฉ์๋๋ฅผ ํตํด์ id ๊ฐ์ผ๋ก ๊ฒ์์ ํ๋ค. ํ์ง๋ง ์๊ฐํด๋ณด๋ฉด ์ฐ๋ฆฌ๊ฐ ํ์ ๊ฒ์์ ํ ๋ ๋ค์๊ณผ ๊ฐ์ด ํ์ account ์ ๋ณด๋ฅผ ํตํด์ ๊ฒ์์ ํ๋ค. ์ฐ๋ฆฌ๋ ํ์ฌ DB๋ฅผ ๊ด๋ฆฌํ๊ณ ์์ผ๋ id ์นผ๋ผ์ ์ ์ ์๋ ๊ฒ์ด์ง, ์ค์ ์๋น์ค์์ id๋ฅผ ์ธ์ฐ๊ธฐ๋ ์ ๋ง ์ด๋ ค์ด ์ผ์ด๋ค. ๊ทธ๋์ ์ด๋ฐ ์ ์ QueryMethod๋ฅผ ํตํด์ ํ์์ account๋ก ๊ฒ์์ ํ ์ ์๊ฒ ํ๋ค. findById๋ select๋ค. ์ง๊ธ๊น์ง ์ฐ๋ฆฌ๋ findById() ๋ฉ์๋๋ฅผ ํตํด์ id ๊ฐ์ผ๋ก ๊ฒ์์ ํ๋๋ฐ ์ด๋ ์ ํํ ๋ง ํ๋ฉด findBy๋ผ๋ ๋ฌธ๋ฒ์ ๋ณด๋ฉด JPA๊ฐ ์๋์ผ๋ก se.. 2020. 2. 17. [Spring & SpringBoot-JPA] DB ์ฐ๊ด๊ด๊ณ ํ ์ด๋ธ์ Spring JPA๋ฅผ ์ด์ฉํ์ฌ CRUD ํ๊ธฐ. ์ง๋ ์๊ฐ์ ์ฐ๋ฆฌ๋ DB ์ฐ๊ด๊ด๊ณ ํ ์ด๋ธ ์์ฑ ๊น์ง ์งํ์ ํ์๋ค. ์ฐ๊ด๊ด๊ณ ํ ์ด๋ธ์ ์์ฑํ๋ฉฐ 1:N ๊ณผ N:1์ ์ฐ๊ด๊ด๊ณ์ ๋ํด์ ํ ์ด๋ธ์ ์์ฑํ์๊ณ ์ด์ ๋ Spring์์ ์ค์ ๋ก ๊ด๊ณ๋ฅผ ํตํ Data ํธ์ถ์ ํ์ตํด๋ณด์. ํ์ฌ ํ ์ด๋ธ์ ์ฐ๊ด ๊ด๊ณ ๋ค์๊ณผ ๊ฐ์ ๋ ์ฐ๊ด ๊ด๊ณ๋ฅผ ํ์ด๋ณด์๋ฉด user๊ณผ item์ ๊ด๊ณ : ์๋ก ํ์ํ ์ ๋ณด๋ฅผ ๋ด๊ณ ์์ง ์๊ธฐ ๋๋ฌธ์ ์ด๋ ํ ๊ด๊ณ๋ ๋งบ์ง ์๊ณ ์๋ค. user๊ณผ order_list์ ๊ด๊ณ : order_list๊ฐ ํ์ฌ user์ id๋ฅผ ์ฐธ์กฐํ๊ณ ์๊ธฐ ๋๋ฌธ์ (orderList)n:1(user)์ ๊ด๊ณ ์ด๋ค. item๊ณผ order_list์ ๊ด๊ณ : order_list๊ฐ ํ์ฌ item์ id๋ฅผ ์ฐธ์กฐํ๊ณ ์๊ธฐ ๋๋ฌธ์ (orderList)n:1(item)์ ๊ด๊ณ ์ด๋ค. .. 2020. 2. 16. [Spring & SpringBoot-JPA] DB ์ฐ๊ด๊ด๊ณ ํ ์ด๋ธ ์์ฑ JPA๋ฅผ ์ด์ฉํ๋ค๋ ์๋ฆฌ๋ ๋น์ฐํ๋ DB๋ฅผ ์ฌ์ฉํ๋ค๋ ์ด์ผ๊ธฐ๋ค. ๊ทธ๋ผ DB๋ฅผ ์ฌ์ฉํ ๋ SoftWare ๊ณตํ์ ์ธ ์ ๊ทผ์ผ๋ก DB ์ฐ๊ด ๊ด๊ณ์ ๋ํด์ ์์์ผ ํ๋ค. software ๊ณตํ์ CS์ ๊ธฐ๋ณธ ์์์ด๋ฏ๋ก ํน์ ์ํํธ์จ์ด ๊ณตํ์ ํ์ตํ๊ณ ์ถ์ ์ฌ๋์ software ๊ณตํ ์ ๋ณตํ๊ธฐ ํฌ์คํ ์์ ํฌ์คํ ์ ๊ฐ๋จํ๊ฒ ์ฝ๊ณ ์ค๋ ๊ฒ์ ์ถ์ฒํ๋ค. DB ์ฐ๊ด๊ด๊ณ๋? ์๋ฅผ ๋ค์ด์ ๋ค์๊ณผ ๊ฐ์ ๋ ๊ฐ์ ํ ์ด๋ธ์ด ์๋ค๊ณ ํด๋ณด์. ์ฌ์ฉ์๊ฐ item์ ๊ตฌ๋งคํ๋ค๊ณ ํ์ ๋, ๋ค์์ ๋ง์กฑ์์ผ ๋ณด์. ์ฌ์ฉ์๋ ์ฌ๋ฌ๊ฐ์ ์์ดํ ์ ๊ตฌ๋งคํ ์ ์์ด์ผ ํ๋ค. ํด๋น ์์ดํ ์ ๋ช ๋ช ์ ์ฌ์ฉ์๊ฐ ์ฃผ๋ฌธํ๋์ง ์์์ผ ํ๋ค. ์ด๋ฅผ ๋ง์กฑ์ํค๊ธฐ ์ํด์ ์ฐ๋ฆฌ๋ ์ฐ๊ด๊ด๊ณ๋ฅผ ์ด์ฉํ๋ค. ์ฐ๊ด ๊ด๊ณ๋ฅผ ์ด์ฉํ๋ค๋ฉด user์ id๋ฅผ ์ธ๋ํค๋ก ๊ฐ๊ณ item์ id.. 2020. 2. 2. [Spring & Springboot-JPA] JPA๋ฅผ ์ด์ฉํ CRUD ๋ฉ์๋ ์์ฑํ๊ธฐ - 5 (delete๋ฉ์๋๋ก ํ์ ํํด ์๋น์ค ๋ง๋ค๊ธฐ) ํด๋น ํฌ์คํธ๋ ์ฌ๋ฌ ํธ์ผ๋ก ๋๋์ด์ ธ ํ๋์ ๊ฐ๋ ์ ์ด๋ฃจ๊ณ ์์ต๋๋ค. ๋ณด๋ค ์์ธํ ํ์ต๊ณผ ์ดํด๋ฅผ ์ํด ๋ค๋ฅธ ํฌ์คํธ๋ ์ฐธ๊ณ ํด์ฃผ์ธ์ :) 1 Jpa์ Entity ์ค์ ๋ฐ Repository ์ค์ 2 create๋ฉ์๋๋ก ํ์๊ฐ์ ์๋น์ค ๋ง๋ค๊ธฐ-๊ผญ ํ์ธํ์ ์ผํด์!! 3 read ๋ฉ์๋๋ก ํ์ ๊ฒ์ ์๋น์ค ๋ง๋ค๊ธฐ 4 update ๋ฉ์๋๋ก ๊ฐ์ธ์ ๋ณด ์์ ์๋น์ค ๋ง๋ค๊ธฐ 5 delete ๋ฉ์๋๋ก ํ์ ํํด ์๋น์ค ๋ง๋ค๊ธฐ ์ ์ ์ฐ๋ฆฌ๋ update() ๋ฉ์๋๋ฅผ ํตํด์ ํ์ ์ ๋ณด๋ฅผ ์์ ํ๋ ์์ ๋ฅผ ํ ์คํธํด ๋ณด์๋ค. ์ด๋ฒ์๋ delete()๋ฉ์๋๋ฅผ ์ด์ฉํด์ ํ์ ํํด ์๋น์ค๋ฅผ ๋ง๋ค์ด๋ณด์. ๋ ๊ทธ๋ ๋ฏ controller ํ ์คํธ๋ฅผ ์ค๋นํ์. ๊ฒฝ๋ก ๋ํ ๋ ๊ทธ๋ฌํ ์ฅ์์.. ๋ง๋ จํ๋ค. delete ๋ฉ์๋๊ฐ ์ํ๋๋ ์์๋ฅผ ๋์ดํ๋ฉด.. 2020. 1. 27. [Spring & Springboot-JPA] JPA๋ฅผ ์ด์ฉํ CRUD ๋ฉ์๋ ์์ฑํ๊ธฐ - 4 (update ๋ฉ์๋๋ก ๊ฐ์ธ์ ๋ณด ์์ ๋ง๋ค๊ธฐ) ํด๋น ํฌ์คํธ๋ ์ฌ๋ฌ ํธ์ผ๋ก ๋๋์ด์ ธ ํ๋์ ๊ฐ๋ ์ ์ด๋ฃจ๊ณ ์์ต๋๋ค. ๋ณด๋ค ์์ธํ ํ์ต๊ณผ ์ดํด๋ฅผ ์ํด ๋ค๋ฅธ ํฌ์คํธ๋ ์ฐธ๊ณ ํด์ฃผ์ธ์ :) 1 Jpa์ Entity ์ค์ ๋ฐ Repository ์ค์ 2 create๋ฉ์๋๋ก ํ์๊ฐ์ ์๋น์ค ๋ง๋ค๊ธฐ-๊ผญ ํ์ธํ์ ์ผํด์!! 3 read ๋ฉ์๋๋ก ํ์ ๊ฒ์ ์๋น์ค ๋ง๋ค๊ธฐ 4 update ๋ฉ์๋๋ก ๊ฐ์ธ์ ๋ณด ์์ ์๋น์ค ๋ง๋ค๊ธฐ 5 delete ๋ฉ์๋๋ก ํ์ ํํด ์๋น์ค ๋ง๋ค๊ธฐ ์ ์ ์ฐ๋ฆฌ๋ read ๋ฉ์๋๋ฅผ ์ด์ฉํ์ฌ Get ๋ฐฉ์์ผ๋ก DB์์ ์ ๋ณด๋ฅผ ๊ฐ์ ธ์ค๋ ์ค์ต์ ํ์๋ค. ์ด๋ฒ ์๊ฐ์๋ update๋ก ๊ฐ์ธ ์ ๋ณด ์์ ์๋น์ค๋ฅผ ๋ง๋๋ ์ค์ต์ ํด๋ณด์. ์ด๋ฒ๋ ์ญ์ Controller Test๋ฅผ ๋จผ์ ์ค๋นํ์. ๊ฒฝ๋ก๋ ์ ๋ฒ์ read()ํ ์คํธ๋ฅผ ์ํํ๋ test/java/repos.. 2020. 1. 27. [Spring & Springboot-JPA] JPA๋ฅผ ์ด์ฉํ CRUD ๋ฉ์๋ ์์ฑํ๊ธฐ - 3 (read ๋ฉ์๋๋ก ํ์ ๊ฒ์ ๋ง๋ค๊ธฐ) ํด๋น ํฌ์คํธ๋ ์ฌ๋ฌ ํธ์ผ๋ก ๋๋์ด์ ธ ํ๋์ ๊ฐ๋ ์ ์ด๋ฃจ๊ณ ์์ต๋๋ค. ๋ณด๋ค ์์ธํ ํ์ต๊ณผ ์ดํด๋ฅผ ์ํด ๋ค๋ฅธ ํฌ์คํธ๋ ์ฐธ๊ณ ํด์ฃผ์ธ์ :) 1 Jpa์ Entity ์ค์ ๋ฐ Repository ์ค์ 2 create๋ฉ์๋๋ก ํ์๊ฐ์ ์๋น์ค ๋ง๋ค๊ธฐ-๊ผญ ํ์ธํ์ ์ผํด์!! 3 read ๋ฉ์๋๋ก ํ์ ๊ฒ์ ์๋น์ค ๋ง๋ค๊ธฐ 4 update ๋ฉ์๋๋ก ๊ฐ์ธ์ ๋ณด ์์ ์๋น์ค ๋ง๋ค๊ธฐ 5 delete ๋ฉ์๋๋ก ํ์ ํํด ์๋น์ค ๋ง๋ค๊ธฐ ์ ์๊ฐ์ ์ฐ๋ฆฌ๋ create๋ฉ์๋๋ฅผ ์ด์ฉํ์ฌ POST๋ฐฉ์์ผ๋ก ํ์๊ฐ์ ์ ๋ณด๋ฅผ ์๋ฒ์๊ฒ Requestํ์๋ค. ์ด๋ฒ์ CRUD์ Read๋ฅผ ํ์ตํด๋ณด์. ํ์ต์ ์ด์ ์ ๋์ผํ๊ฒ ํ ์คํธ ์ฝ๋๋ฅผ ๋จผ์ ์์ฑํ๊ณ , ์๋น์ค๋ฅผ ๋ง๋๋ ์์๋ก ์ด๋ฃจ์ด์ง ์์ ์ด๋ค. ์ ๋ฒ๊ณผ ๋ง์ฐฌ๊ฐ์ง๋ก CRUD๋ฅผ ์ํด Controller์ .. 2020. 1. 27. ์ด์ 1 ยทยทยท 4 5 6 7 8 9 ๋ค์