๋ด์ผ๋ฐฐ์์บ ํ70 ์ฃผํน๊ธฐ ์ ๋ฌธ/์๋ จ_Day 7 ์ค๋ ํ ๊ณต๋ถ ๐ง ์๊ณ ๋ฆฌ์ฆ ๋ฌธ์ (Java) 1๋ฌธ์ ํ์ด & ๋ธ๋ก๊ทธ ์ ๋ฆฌ๊ฐ์ธ ๊ณผ์ Lv0 - API ๋ช ์ธ์ ์์ฑ๊ฐ์ธ ๊ณผ์ Lv0 - ERD ์์ ์์ฒญ & ์์ฑ์์ค๋ณ ํ์ต๋ฐ_๋ฒ ์ด์ง๋ฐ ๋ฏธ๋ ์ธ์ ๋ฃ๊ธฐTIL ๋ธ๋ก๊ทธ ์์ฑ ์ค๋ ์ป์ ๋ด์ฉ ์ ๋ฆฌ โ๏ธ ์ค๋ ์งํํ ๊ฐ์ธ ๊ณผ์ ์ํฉ์ ์ ๋ฆฌํด์ผ๊ฒ ๋ค!์ผ์ ๊ด๋ฆฌ ์ฑ API ๋ช ์ธ์์ผ์ ์์ฑDescription : ์๋ก์ด ์ผ์ ์ ์์ฑํฉ๋๋ค.์์ฒญ ์ ์ผ์ ์ ์ ๋ชฉ, ๋ด์ฉ, ์์ฑ์๋ช , ๋น๋ฐ๋ฒํธ, ์์ฑ์ผ, ์์ ์ผ์ ํฌํจํ๋ฉฐ, ์๋ฒ์์ ๊ฐ ์ผ์ ์ ๊ณ ์ ID๋ฅผ ์์ฑํฉ๋๋ค.HTTP Method : POSTEndpoint : /todosRequest Body{ "title" : "์ ๋ชฉ", "content" : "๋ด์ฉ", "writer" : "์์ฑ์๋ช ", "passwor.. 2024. 12. 5. ์ฃผํน๊ธฐ ์ ๋ฌธ/์๋ จ_Day 6 ์ค๋ ํ ๊ณต๋ถ ๐ง ์๊ณ ๋ฆฌ์ฆ ๋ฌธ์ (Java) 1๋ฌธ์ ํ์ด & ๋ธ๋ก๊ทธ ์ ๋ฆฌ์์ค๋ณ ํ์ต๋ฐ - ์คํ ๋ค๋๋ฐ ๋ฃ๊ธฐ์คํ๋ง 6์ฃผ์ฐจ ๊ฐ์ ๋ฃ๊ธฐTIL ๋ธ๋ก๊ทธ ์์ฑ ์ค๋ ์ป์ ๋ด์ฉ ์ ๋ฆฌ โ๏ธ๊ฐ๋ ์ ๋ํด์๋ ๋ฐ๋ก ๋ธ๋ก๊ทธ์ ์ ๋ฆฌํด ๋ฌ์ ํํฐ๋๊ป ์ฐพ์๊ฐ์ ์ป์ ๊ฟํ์ ์ ์ด์ผ๊ฒ ๋ค!๋ฌธ๋ฒ์ ์ธ ์๋ฌ๊ฐ ๋ฐ์ํ๋ค๋ฉด ์ฝ๋๋ฅผ ๊ณ ์ณ์ ํด๊ฒฐํ ์ ์๋ค.ํ์ง๋ง ๋ฌธ๋ฒ์ ์ธ ์๋ฌ๊ฐ ์๋ ๋ค๋ฅธ ์๋ฌ๊ฐ ๋ฐ์ํ๋ค๋ฉด ์ด๋ ๊ฒ ํด๊ฒฐํ ์ ์๋ค..gradle, .idea, build ํ์ผ์์ ๋ฌธ์ ๊ฐ ์๊ฒผ์ ์ ์์ผ๋ฏ๋ก ํด๋๋ฅผ ์ญ์ ํ ๋ค์ ์คํํด ๋ณธ๋ค.๊ทธ๋๋ ๋์ง ์๋๋ค๋ฉด ์บ์๋ฅผ ์ญ์ ํ ํ ๋ค์ ์คํํด ๋ณธ๋ค.IDE ์์ฒด์์ ์ค๋ฅ๊ฐ ๋ฐ์ํ๋ ๊ฒฝ์ฐ๋ ์ข ์ข ์์ด์ IntelliJ ์ฌ๋ถํ , ์ปดํจํฐ ์ฌ๋ถํ ๋ฑ๋ฑ ์ข ๋ฃ ํ ๋ค์ ์ ์ํ๊ณ ์คํํ๋ฉด ๋๋ ๊ฒฝ์ฐ๋ ๋ง๋ค.์ค์ต ๊ฐ์๋ฅผ.. 2024. 12. 4. ์ฃผํน๊ธฐ ์ ๋ฌธ/์๋ จ_๋ฐ์ดํฐ๋ฒ ์ด์ค ์ ๊ทผ ๊ธฐ์ ์ ์ฉ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ ๊ทผ ๊ธฐ์ ์ ์ฉํด ๋ณด๊ธฐ 1. ํ๋ก์ ํธ ์ธํ ๋๋ณด๊ธฐbuild.gradle ์์กด์ฑ ์ถ๊ฐJDBC Template, MySQL ์์กด์ฑ ์ถ๊ฐ// MySQLimplementation 'mysql:mysql-connector-java:8.0.28'// JDBC Templateimplementation 'org.springframework.boot:spring-boot-starter-data-jdbc'ํ๋ก์ ํธ ์ค์ IntelliJ Database ์ฐ๋ํ๊ธฐCREATE TABLE memo( id BIGINT AUTO_INCREMENT PRIMARY KEY COMMENT '๋ฉ๋ชจ ์๋ณ์', title VARCHAR(100) NOT NULL COMMENT '์ ๋ชฉ', conte.. 2024. 12. 4. ์ฃผํน๊ธฐ ์ ๋ฌธ/์๋ จ_3 Layer Architecture Layered Architecture ์ค์ต0. ํ๋ก์ ํธ ์์ฑ๋๋ณด๊ธฐํ๋ก์ ํธ ์์ฑ๋ฉ๋ชจ์ฅ ํ๋ก์ ํธ๋ฅผ ์์ฑํ ๋์ ๋์ผํ๊ฒ ํ๋ก์ ํธ๋ฅผ ์์ฑํ๋ค.๊ผญ ํ์ธํด์ผ ํ ์ฌํญName: layeredLanguage: JavaBuild system: Gradle - GroovyJDK: 17ํ๋ก์ ํธ ๊ฒฝ๋ก(Location)๋ ์ด์ ์ ๋ง๋ค์๋ workspace ํด๋๋ก ์ง์ ์ด๊ธฐ ํด๋์ค ์์ฑMemo@Getter@AllArgsConstructorpublic class Memo { private Long id; private String title; private String contents; public void update(MemoRequestDto dto) { this.title = dto.getT.. 2024. 12. 4. ์์ค๋ณ ํ์ต๋ฐ_์คํ ๋ค๋๋ฐ 1ํ์ฐจ Spring MVC, 3 Layer Architecture12/04 14:00 ~ 14:50 (์ฝ 50๋ถ ์งํ) ํ์ฌ ์ฐ๋ฆฌ๊ฐ ๋ฐฐ์ฐ๊ณ ์๋ Spring MVC... ๊ทธ๋ฆฌ๊ณ ๊ฐ์์์ ์์์ง๊ณ ์๋ ๋ฏ์ ๊ธฐ์ ๋ค....๋คํธ์ํฌ — TCP/IP, UDPHTTPWeb ServerWASWeb ApplicationWASServletServlet Container ์ด๊ฑธ ๋ฐฐ์ฐ๊ณ ์๋ ์ด์ ๋....?!?!→ ์ฐ๋ฆฌ๋ ๋ฐฑ์๋ ์๋ฒ ๊ฐ๋ฐ์ ๋ถํธ์บ ํ ์๊ฐ์์ด๊ธฐ ๋๋ฌธ์ด๋ค~_~ Spring MVCServlet์ด๋?!๋๋ณด๊ธฐServlet์ด ํ๋ ์ผ → ์๋ฌดํผ ์ด์ฐ์ด์ฐ ํด๋ผ์ด์ธํธ ์ฐ๊ฒฐ์ ๋ฐ์์ ์๋ฒ ๋ด์์ ๋น์ฆ๋์ค ์์ฒญ์ ์ฒ๋ฆฌํ๊ณ ๋ค์ ํด๋ผ์ด์ธํธ๋ก ์๋ต์ ์ ์กํ๋ ์ญํ ์ ํ๋ค!์๋ฒ TCP/IP ์ฐ๊ฒฐ ๋๊ธฐ, ์์ผ ์ฐ๊ฒฐHTTP ์์ฒญ ๋ฉ์์ง .. 2024. 12. 4. ์ฃผํน๊ธฐ ์ ๋ฌธ/์๋ จ_Day 5 ์ค๋ ํ ๊ณต๋ถ์๊ณ ๋ฆฌ์ฆ ๋ฌธ์ (Java) 1๋ฌธ์ ํ์ด & ๋ธ๋ก๊ทธ ์ ๋ฆฌ์คํ๋ง 5์ฃผ์ฐจ ๊ฐ์ ๋ฃ๊ธฐTIL ๋ธ๋ก๊ทธ ์์ฑ ์ค๋ ์ป์ ๋ด์ฉ ์ ๋ฆฌCRUD ์ค์ต๋ฉ๋ชจ๋ฅผ CRUD ํ ์ ์๋ Web Application1. ๋ฉ๋ชจ ์์ฑ ๊ธฐ๋ฅ C2. ๋ฉ๋ชจ ๋จ๊ฑด ์กฐํ ๊ธฐ๋ฅ R3. ๋ฉ๋ชจ ์ ์ฒด ์์ ๊ธฐ๋ฅ U4. ๋ฉ๋ชจ ๋จ๊ฑด ์ญ์ ๊ธฐ๋ฅ D1. ์๊ตฌ ์ฌํญ ๋ถ์ ๋ฐ ์ค๊ณ๋๋ณด๊ธฐ๋ฉ๋ชจ์ฅ API ์๊ตฌ ์ฌํญํต์ ๋ฐ์ดํฐ ํํ๋ JSON์ด๋ค.๊ฐ๊ฐ ๋ฉ๋ชจ๋ ์๋ณ์(id), ์ ๋ชฉ(title), ๋ด์ฉ(contents)์ผ๋ก ๊ตฌ์ฑ๋์ด ์๋ค.๋ฉ๋ชจ CRUD ๊ธฐ๋ฅ์ด ํ์ํ๋ค.HTTP API ์ค๊ณ๋ก๊ทธ์ธ๊ณผ ๊ฐ์ ํน๋ณํ ๊ธฐ๋ฅ์ ์ ์ธํ ๋๋ถ๋ถ์ API๋ CRUD ์์ ์ ์ํํ๋ค.์ค๊ณ ์์HTTP MethodPOST : CREATEGET : READPUT, PATCH : UPDA.. 2024. 12. 3. ์ด์ 1 ยทยทยท 4 5 6 7 8 9 10 ยทยทยท 12 ๋ค์