Spring(72)
-
[Spring] ์คํ๋ง ํต์ฌ ์๋ฆฌ
์๋ ํ์ธ์? ์ฃผ๋ํ๋ ์ ๋๋ค. ์ค๋์ Spring์ ๊ฐ์ฒด ์งํฅ ์ค๊ณ์ ๋ํด์ ๊ณต๋ถ ํด ๋ณด๋๋ก ํ๋ ๊ฒ์ด์์. ์ด ๋ด์ฉ์ ์ธํ๋ฐ - ๊น์ํ ๊ฐ์ฌ๋์ ์คํ๋ง ํต์ฌ ์๋ฆฌ๋ฅผ ๊ณต๋ถํ๋ฉด์ ์ ๋ฆฌ ํ์์ต๋๋ค. ๐ ๋ชฉ์ฐจ 01. [Spring] ์คํ๋ง ํต์ฌ ์๋ฆฌ 02. [Spring] ์ข์ ๊ฐ์ฒด ์งํฅ ์ค๊ณ์ 5๊ฐ์ง ์์น (SOLID) 03. [Spring] ๊ฐ์ฒด ์งํฅ ์ค๊ณ์ ์คํ๋ง 04. [Spring] OCP์ DIP ๊ณ ๋ คํ๊ธฐ 05. [Spring] ๊ฐ์ฒด ์งํฅ ์๋ฆฌ ์ ์ฉ - ์๋ก์ด ํ ์ธ ์ ์ฑ ๊ฐ๋ฐ 06. [Spring] AppConfig ๋ฆฌํฉํฐ๋ง 07. [Spring] Ioc, DI Container 08. [Spring] ์คํ๋ง ์ปจํ ์ด๋ ์์ฑ 09. [Spring] ์ฑ๊ธํค ์ปจํ ์ด๋ 10. [Spring] Compone..
2021.09.10 -
[๋์ ๊ธฐ์ !] REST API
์๋ ํ์ธ์? ์ฃผ๋ํ๋ ์ ๋๋ค. ๋ณธ ๋ด์ฉ์ ์ฃผ๋ํ๋์ด Web ๊ฐ๋ฐ ํ๋ก์ ํธ๋ฅผ ํ๋ฉด์ ๋์ ํ๋ ๊ธฐ์ ๋ค์ ๋ํ ๋ด์ฉ์ ์ ๋ฆฌํ๋ ๊ณณ ์ ๋๋ค! ์ด ๊ธ์ ํจ๊ป ํ๋ก์ ํธ ํ๋ Back End ๊ฟ๋๋ฌด Crew๊ฐ ์์ฑํ ๊ฒ์ด์์. ์ฃผ๋ํ๋๋ Back End ๊ฐ๋ฐ์ ๋งก์์๋ต๋๋ค! ์ด๋ฒ ์ฐ๋๋ (์ฐ๋ฆฌ๋ ๋ ์!) ํ๋ก์ ํธ์์๋ RESTfulํ API๋ฅผ ์ค๊ณํ๊ธฐ ์ํด ๊ทธ๋ฐ API๋ก ๊ด์ฐฎ์๊ฐ ( https://www.youtube.com/watch?v=RP_f5dMoHFc )๋ผ๋ ์ธ๋ฏธ๋ ์์์ ๋ณด๋ฉฐ REST์ ์ถํ ๊ณ๊ธฐ์ REST์์ ์ ์ํ ์ ์ฝ ์กฐ๊ฑด๋ค์ ์์๋ณด์๊ณ , ์ด๋ฌํ ์ ์ฝ ์กฐ๊ฑด์ ์ง์ผ API๋ฅผ ์ค๊ณํ๋ ค๊ณ ๋ ธ๋ ฅํ์ต๋๋ค. ๐ RESTfulํ API๋ฅผ ์ค๊ณํ๊ณ ์ ํ ์ด์ ? ๋ถ์ฐ ํ์ดํผ๋ฏธ๋์ด ์์คํ ์ ์ํ ์ํคํ ์ฒ ์คํ์ผ์ธ R..
2021.08.26 -
[๋์ ๊ธฐ์ !] JPA์ Querydsl
์๋ ํ์ธ์? ์ฃผ๋ํ๋ ์ ๋๋ค. ๋ณธ ๋ด์ฉ์ ์ฃผ๋ํ๋์ด Web ๊ฐ๋ฐ ํ๋ก์ ํธ๋ฅผ ํ๋ฉด์ ๋์ ํ๋ ๊ธฐ์ ๋ค์ ๋ํ ๋ด์ฉ์ ์ ๋ฆฌํ๋ ๊ณณ ์ ๋๋ค! ์ด ๊ธ์ ํจ๊ป ํ๋ก์ ํธ ํ๋ Back End ๊ฟ๋๋ฌด Crew๊ฐ ์์ฑํ ๊ฒ์ด์์. ์ฃผ๋ํ๋๋ Back End ๊ฐ๋ฐ์ ๋งก์์๋ต๋๋ค! [์์ด์ฝ์ถํ]์คํ๋ง๊ณผ JPA๋ฅผ ํ์ฉํ ์๋ฐ ์ํฐํ๋ผ์ด์ฆ ์ ํ๋ฆฌ์ผ์ด์ ๊ฐ๋ฐ ์ธํธ - ์ 3๊ถ COUPANG www.coupang.com "์ด ํฌ์คํ ์ ์ฟ ํก ํํธ๋์ค ํ๋์ ์ผํ์ผ๋ก, ์ด์ ๋ฐ๋ฅธ ์ผ์ ์ก์ ์์๋ฃ๋ฅผ ์ ๊ณต๋ฐ์ต๋๋ค." โ ์ด๋ฒ ํ๋ก์ ํธ์์ ์ฐ๋ฆฌ๋ JPA๋ฅผ ์ ์ฌ์ฉํ๋๊ฐ? sql ์ค์ฌ์ ์ธ ๊ฐ๋ฐ์์ ๊ฐ์ฒด ์ค์ฌ์ ์ธ ๊ฐ๋ฐ์ด ๊ฐ๋ฅ ์์ฐ์ฑ์ด ์ฆ๊ฐํ๊ณ ๊ฐ๋จํ ๋ฉ์๋๋ก CRUD๊ฐ ๊ฐ๋ฅ ์ ์ง๋ณด์๊ฐ ์ฝ๋คJPA: ํ๋๋ง ์ถ๊ฐ, SQL์ JPA๊ฐ ์ฒ๋ฆฌ ๊ธฐ์กด: ํ..
2021.08.25 -
[๋์ ๊ธฐ์ !] ํ ์คํธ ์ฝ๋
์๋ ํ์ธ์? ์ฃผ๋ํ๋ ์ ๋๋ค. ๋ณธ ๋ด์ฉ์ ์ฃผ๋ํ๋์ด Web ๊ฐ๋ฐ ํ๋ก์ ํธ๋ฅผ ํ๋ฉด์ ๋์ ํ๋ ๊ธฐ์ ๋ค์ ๋ํ ๋ด์ฉ์ ์ ๋ฆฌํ๋ ๊ณณ ์ ๋๋ค! ์ด ๊ธ์ ํจ๊ป ํ๋ก์ ํธ ํ๋ Back End ๊ฟ๋๋ฌด Crew๊ฐ ์์ฑํ ๊ฒ์ด์์. ์ฃผ๋ํ๋๋ Back End ๊ฐ๋ฐ์ ๋งก์์๋ต๋๋ค! ์ ํฌ ํ๋ก์ ํธ์์๋ JUnit ๊ณผ Mockito๋ฅผ ์ฌ์ฉํ์ฌ ํ ์คํธ ์ฝ๋๋ฅผ ์์ฑํ์์ต๋๋ค. ๐จ๐ป ๊ฒฐ๋ก ํ ์คํธ ์ฝ๋๋ฅผ ๊ฐ ๊ณ์ธต๋ง๋ค ์์ฑํจ์ผ๋ก์จ ๊ฐ๋ฐ ์๊ฐ์ด ๋จ์ถ๋๋ ํจ๊ณผ๋ฅผ ์ป์ ์ ์์์ต๋๋ค. ํ ์คํธ๋ฅผ ์ฝ๊ฒํ๊ธฐ ์ํด์, ์ดํ๋ฆฌ์ผ์ด์ ์ฝ๋๋ฅผ ์ฝ๊ฒ ์ง๊ฒ ๋์๊ณ ๊ฒฐ๊ตญ ํ ์คํธ ์ฝ๋๋ฅผ ์ง๊ธฐ ์ํด ๋ ธ๋ ฅํ๋ค ๋ณด๋, ์ดํ๋ฆฌ์ผ์ด์ ์ฝ๋๊ฐ ๊น๋ํด์ง๋ ๊ฒ์ ๊ฒฝํํ ์ ์์์ต๋๋ค. ๋ฌด์๋ณด๋ค๋ ์๋ฒ๋ฅผ ์คํ์ํค์ง ์์๋, DB์ ๊ฐ์ ๋ฃ์ง ์์๋, ์ง์ ๋์ผ๋ก ํ์ธํ์ง ์..
2021.08.24 -
[Spring Boot] AOP
์๋ ํ์ธ์? ์ฃผ๋ํ๋ ์ ๋๋ค. ์ค๋์ AOP์ ๋ํด ๊ณต๋ถ ํด ๋ณด๋๋ก ํ ๊ฒ์ด์์. ๋ฐ๋ก ์์ ํด ๋ณด๊ฒ ์ต๋๋ค! ์ฝ๋์ ๊ด๋ จํ ๋ด์ฉ์ ์ฃผ๋ํ๋์ Github์์ ํ์ธ ํ์ค ์ ์์ต๋๋ค! ๐ ๋ชฉ์ฐจ 01.[Spring Boot] thymeleaf์ Spring Boot 02.[Spring Boot] Spring Web ๊ฐ๋ฐ ๊ธฐ์ด 03.[Spring Boot] ํ์ ๊ด๋ฆฌ ์์ - Backend 04.[Spring Boot] Service ๊ฐ๋ฐ ๋ฐ Test Case ์์ฑ 05.[Spring Boot] Spring Bean๊ณผ ์์กด๊ด๊ณ 06.[Spring Boot] Java Code๋ก ์ง์ Spring Bean ๋ฑ๋ก 07.[Spring Boot] ๋ฑ๋ก, ๋ชฉ๋ก ๋ณด๊ธฐ ๊ตฌํํ๊ธฐ 08.[Spring Boot] ๊ธฐ์กด ์ฝ๋ ์ ..
2021.08.20 -
[Spring Boot] Spring Data JPA
์๋ ํ์ธ์? ์ฃผ๋ํ๋ ์ ๋๋ค. ์ค๋์ Spring Data JPA์ ๋ํด ๊ณต๋ถ ํด ๋ณด๋๋ก ํ ๊ฒ์ด์์. ๋ฐ๋ก ์์ ํด ๋ณด๊ฒ ์ต๋๋ค! ์ฝ๋์ ๊ด๋ จํ ๋ด์ฉ์ ์ฃผ๋ํ๋์ Github์์ ํ์ธ ํ์ค ์ ์์ต๋๋ค! ๐ ๋ชฉ์ฐจ 01.[Spring Boot] thymeleaf์ Spring Boot 02.[Spring Boot] Spring Web ๊ฐ๋ฐ ๊ธฐ์ด 03.[Spring Boot] ํ์ ๊ด๋ฆฌ ์์ - Backend 04.[Spring Boot] Service ๊ฐ๋ฐ ๋ฐ Test Case ์์ฑ 05.[Spring Boot] Spring Bean๊ณผ ์์กด๊ด๊ณ 06.[Spring Boot] Java Code๋ก ์ง์ Spring Bean ๋ฑ๋ก 07.[Spring Boot] ๋ฑ๋ก, ๋ชฉ๋ก ๋ณด๊ธฐ ๊ตฌํํ๊ธฐ 08.[Spring Bo..
2021.08.19