๋ชฉ๋ก๐ป JAVA_ (34)
Programing_Java
โ ์น์ฌ์ดํธ์ ๋ฐ์์ฑ• ์ฌ์ฉ์ ๊ฒฝํ์ ๊ทน๋ํํ๋ ์์ ์ค ํ๋→ ์ฌ์ฉ์๊ฐ ์ํ ์๋์ ๋ณ๊ฒฝํ ๋๋ง๋ค ํ์ด์ง๋ฅผ ์๋ก๊ณ ์นจํ์ง ์๊ณ ๋ ๋ณ๊ฒฝ ์ฌํญ์ด ์ฆ์ ๋ฐ์→ ์ฌ์ฉ์๋ ๋ ๋น ๋ฅด๊ณ ์ํํ๊ฒ ์งํ 1๏ธโฃ ๊ธฐ์ ์คํ• ์ฃผ์ ๊ธฐ์ ์ ์๋ฐ ์๋ธ๋ฆฟ→ ์๋ฐ ์๋ธ๋ฆฟ์ ์๋ฒ ์ฌ์ด๋์์ ์คํ๋๋ ์๋ฐ ํ๋ก๊ทธ๋จ→ ํด๋ผ์ด์ธํธ์ ์์ฒญ์ ์ฒ๋ฆฌํ๊ณ ์๋ต์ ๋๋ ค์ฃผ๋ ์ญํ 2๏ธโฃ ์์ฒญ ํ๋ผ๋ฏธํฐ ์ฒ๋ฆฌ• cartProductNumber : ์ํ์ ๊ณ ์ ๋ฒํธ• productCount : ์กฐ์ ํ๊ณ ์ ํ๋ ์๋• cartProductCondition : ์๋ ์กฐ์ ๋ฐฉํฅ (upCartProductCount ๋๋ downCartProductCount)int cartProductNumber = Integer.parseInt(request.getParam..
โ ๋ ์ง ํ๋ณํ• Java์์๋ java.sql.Date ํด๋์ค๋ฅผ ์ฌ์ฉํ์ฌ ๋ฌธ์์ด๋ก๋ถํฐ ๋ ์ง ๊ฐ์ฒด๋ฅผ ์์ฑ ๊ฐ๋ฅ• "yyyy-mm-dd" ํ์์ ๋ฌธ์์ด ๋ ์ง๋ฅผ Date ๊ฐ์ฒด๋ก ๋ณํ ํ๊ธฐ ์ํด Date.valueOf() ๋ฉ์๋๋ฅผ ์ฌ์ฉ• ์ ํจํ์ง ์์ ๋ ์ง ํ์์ด ์ฃผ์ด์ง๋ฉด IllegalArgumentException์ ๋ฐ์ ๊ฐ๋ฅ•์์ธ ์ฒ๋ฆฌ๋ฅผ ํตํด ์ด๋ฌํ ๋ฌธ์ ๋ฅผ ๊ด๋ฆฌtry { Date birthDate = Date.valueOf("1996-01-15"); // ์: "1996-01-15" ํ์์ ๋ฌธ์์ด} catch (IllegalArgumentException e) { System.out.println("์๋ชป๋ ๋ ์ง ํ์์ ๋๋ค.");} โ ์ด๋ฉ์ผ ์ฃผ์ ๋ถํ • ์ฌ์ฉ์๋ก๋ถํฐ ๋ฐ์ ์ด๋ฉ์ผ ์ฃผ์๋ฅผ '@' ..
โ๏ธ ๋ฌธ์ ์ํฉ• ์๋ธ๋ฆฟ๊ณผ JSP ํ๊ฒฝ์์ JSON์ ์ง์ ์ฝ์ง ๋ชปํ๋ ๋ฌธ์ ๋ฐ์ ๊ฐ๋ฅ• ์๋ธ๋ฆฟ์์ JSP๋ก ๋ฐ์ดํฐ๋ฅผ ์ ์กํ ๋, EL(Expression Language)์ ๊ฐ์ฒด์ ํ๋กํผํฐ๋ฅผ ์ฐธ์กฐํ๋ ๋ฐฉ์์ผ๋ก ๋์→ JSON ๋ฌธ์์ด์ ๊ทธ๋๋ก ์ฌ์ฉํ๋ฉด ์ธ์ํ์ง ๋ชปํจ โ ํด๊ฒฐ ๋ฐฉ๋ฒ• JSON์ Map์ผ๋ก ๋ณํํ์ฌ ์ฒ๋ฆฌ → Java์์๋ ObjectMapper๋ฅผ ํ์ฉํ์ฌ JSON์ Map์ผ๋ก ๋ณํ ๊ฐ๋ฅ 1๏ธโฃ ์ฝ๋ ์์ ObjectMapper๋ฅผ ์ด์ฉํ์ฌ JSON์ Map์ผ๋ก ๋ณํํ ํ, EL์์ ์ฌ์ฉํ ์ ์๋๋ก ํ๋ ์ฝ๋import com.fasterxml.jackson.core.type.TypeReference;import com.fasterxml.jackson.databind.ObjectMapper;..

โ ์น ์ ํ๋ฆฌ์ผ์ด์ ์ค๊ณ ์, ๋ชจ๋์ฑ๊ณผ ์ ์ง๋ณด์์ฑ์ ํฅ์์ํค๋ ๊ฒ์ ๋งค์ฐ ์ค์โ FrontController์ ๋ถ๋ฆฌ๋ ์ ๋ชฉํ๋ฅผ ๋ฌ์ฑํ๋ ๋ฐ ๋์์ด ๋ ์ ์๋ ์ ๋ต ์ค ํ๋1๏ธโฃ ์ ์ฐ์ฑ ํฅ์• ํ๋ฐํธ ์ปจํธ๋กค๋ฌ๋ฅผ ๋ถ๋ฆฌํ๋ฉด ๊ฐ ์ปจํธ๋กค๋ฌ๊ฐ ํน์ ์์ ์ ์ด์ ์ ๋ง์ถ ์ ์์• ํ๋์ ์ปจํธ๋กค๋ฌ๋ ์ธ์ฆ๊ณผ ๊ด๋ จ๋ ๋ก์ง์ ์ฒ๋ฆฌ, ๋ค๋ฅธ ํ๋๋ ๋น์ฆ๋์ค ๋ก์ง์ ์ฒ๋ฆฌ→ ๊ฐ ์ปจํธ๋กค๋ฌ์ ๋ณ๊ฒฝ์ด ๋ค๋ฅธ ์ปจํธ๋กค๋ฌ์ ๋ฏธ์น๋ ์ํฅ์ ์ต์ํ 2๏ธโฃ ๊ฐ๋ ์ฑ ํฅ์• ์ฝ๋์ ๋ถ๋ฆฌ๋ ์ฝ๋์ ๊ฐ๋ ์ฑ์ ํฅ์• ๊ฐ ์ปจํธ๋กค๋ฌ๊ฐ ๋ช ํํ ์ญํ ๊ณผ ์ฑ ์์ ๊ฐ์ง → ์๋ก์ด ๊ฐ๋ฐ์๊ฐ ์ฝ๋๋ฒ ์ด์ค๋ฅผ ์ดํดํ๊ธฐ๊ฐ ๋ ์ฌ์์ง• ๋๋ฒ๊น ๊ณผ ์ฝ๋ ๋ฆฌ๋ทฐ๊ฐ ๋ ๊ฐ๋จ, ๊ฐ๋ฐ ๊ณผ์ ์์ ๋ฐ์ํ ์ ์๋ ์ค๋ฅ์ ๊ฐ๋ฅ์ฑ ๊ฐ์ 3๏ธโฃ ํ ์คํธ ์ฉ์ด์ฑ• ๋ถ๋ฆฌ๋ ์ปจํธ๋กค๋ฌ๋ ๋ ๋ฆฝ์ ์ผ๋ก ํ ์คํธํ๊ธฐ..
โ ์ฅ๋ฐ๊ตฌ๋์์ ์ํ์ ์ญ์ ํ ๋ ๊ธฐ์กด ๋ฐฉ์์ ํ๋์ ์ํ๋ง ์ญ์ ํ ์ ์๋๋ก ์ค๊ณ→ ์ฌ๋ฌ ๊ฐ์ ์ํ์ ํ ๋ฒ์ ์ ํํ์ฌ ์ญ์ ํ๋ ๊ธฐ๋ฅ์ด ํ์→ Java์ JSP/Servlet์ ํ์ฉํ์ฌ ์ฅ๋ฐ๊ตฌ๋์์ ์ฌ๋ฌ ๊ฐ์ ์ํ์ ํ ๋ฒ์ ์ญ์ ํ๋ ๋ก์ง์ ๊ตฌํ 1๏ธโฃ ๊ธฐ์กด ์ฝ๋์ ๋ฌธ์ ์ • productSingleNumber์ productComboNumber๋ฅผ ๋จ์ผ ๊ฐ์ผ๋ก ๋ฐ์์ ์ญ์ ํ๋๋ก ์ค๊ณint productSingleNumber = Integer.parseInt(request.getParameter("productSingleNumber"));int productComboNumber = Integer.parseInt(request.getParameter("productComboNumber"));→ ์์ ๊ฐ์ด ์ฝ..
โ ์น ์ ํ๋ฆฌ์ผ์ด์ ์์ ๋ง์ ๋ฐ์ดํฐ๋ฅผ ํจ๊ณผ์ ์ผ๋ก ๋ณด์ฌ์ฃผ๊ธฐ ์ํด ํ์ด์ง๋ค์ด์ (Pagination) ๊ธฐ๋ฅ์ ํ์์ โ๏ธ ํ์ด์ง๋ค์ด์ (Pagination) : ๋ง์ ๋ฐ์ดํฐ๋ฅผ ํ ๋ฒ์ ๋ถ๋ฌ์ค๋ ๊ฒ์ด ์๋๋ผ, ํน์ ๊ฐ์๋งํผ ๋๋์ด ํ์ํ๋ ๊ธฐ๋ฒ→ ์๋ฒ ๋ถํ๋ฅผ ์ค์ด๊ณ , ์ฌ์ฉ์ ๊ฒฝํ์ ๊ฐ์ โ๏ธ Java Servlet์ ํ์ฉํ์ฌ CU ํธ์์ ์ํ ๋ชฉ๋ก์ ํ์ด์ง๋ณ๋ก ๋๋์ด ์ถ๋ ฅํ๋ ๋ฐฉ๋ฒโ๏ธ ๊ฐ๋ณ ์ํ ๋ฐ์ดํฐ๋ฅผ ์กฐํ, ๋ถ๋ฅํ์ฌ ํ์ด์ง๋ค์ด์ ๊ธฐ๋ฅ์ ์ ์ฉํ๋ ๋ฐฉ์ 1๏ธโฃ Pagination ๋ก์ง• ํ์ด์ง ๋ฒํธ ๋ฐ๊ธฐ: ์ฌ์ฉ์๊ฐ ์์ฒญํ ํ์ด์ง ๋ฒํธ๋ฅผ ๋ฐ์ ๊ธฐ๋ณธ๊ฐ(1)๊ณผ ํจ๊ป ์ค์ • ํ์ด์ง๋น ํญ๋ชฉ ์ ์ค์ : ๊ธฐ๋ณธ์ ์ผ๋ก 3๊ฐ ํน์ 6๊ฐ์ ๋ฐ์ดํฐ๋ฅผ ๋ถ๋ฌ์ค๋๋ก ์ค์ , ์์ฒญ ๊ฐ์ด ์์ ๊ฒฝ์ฐ ๋ฐ์• ์์ ์ธ๋ฑ์ค ๊ณ์ฐ: (ํ์ด์ง ๋ฒํธ - 1)..
โ Servlet์ผ๋ก FrontController ํจํด ๊ตฌํํ๊ธฐ 1๏ธโฃ Servlet์ผ๋ก์ ์ ํ• ๊ธฐ์กด์๋ [ controller.jsp?action=MAINPAGE ]์ ๊ฐ์ด ํญ์ ์ก์ ํ๋ผ๋ฏธํฐ๋ฅผ ๋ฐ์์์ผ ํ์→ ์๋ธ๋ฆฟ์ผ๋ก ๋ฐ๊พธ๋ ์์ ์ ํตํด ๋ ๊น๋ํ ๊ตฌ์กฐ๋ฅผ ๋ง๋ค ์ ์์• JSP๋ ์๋ View ์ญํ ๋ง ํจ. Java์ธ์ด๋ฅผ ์ฌ์ฉํ๋ ๋ถ๋ถ์ ์ ํ์ • JSTL, EL, ๊ทธ๋ฆฌ๊ณ Custom Tag๋ฅผ ํ์ฉํด View ๋ก์ง์ ์ฒ๋ฆฌ→ Controller๋ Servlet์ผ๋ก ์ฒ๋ฆฌํด์ฃผ๋ ๊ฒ์ด ์ ํฉ→ "VIEW ๋ VIEW ๋ต๊ฒ!" 2๏ธโฃ FrontController ํจํด• FrontController ํจํด์ ๋ชจ๋ ์์ฒญ์ ํ๋์ ์๋ธ๋ฆฟ์ด ์ฒ๋ฆฌ, ์๋ธ๋ฆฟ์ด ์์ฒญ์ ๋ถ๊ธฐํ์ฌ ์๋ง์ ์ฒ๋ฆฌ๋ฅผ ํ๋๋ก ์ ๋• FrontContr..
โ ์น ์ ํ๋ฆฌ์ผ์ด์ : ๊ฐ๋ฐ๊ณผ์ ์์ ๋ค์ํ ๋ฐฉ์์ผ๋ก ์์ฒญ์ ์ฒ๋ฆฌ, ๋ฐ์ดํฐ๋ฅผ ๊ด๋ฆฌ, Application์ ํ๋ฆ์ ์ ์ดํ๋ ๋๊ตฌ๋ฅผ ์ฌ์ฉ: Servlet, Listener, Filter๋ ์ค์ํ ์ญํ ์ ํจ: ํนํ Spring๊ณผ ๊ฐ์ ํ๋ ์์ํฌ์์๋ ๊ธฐ๋ณธ์ ์ผ๋ก ๋๊ตฌ๋ค์ด ํ์ฌ๋์ด ์์ด, ์ฌ์ฉ์๊ฐ ๋ชจ๋ฅด๊ณ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ๋ ๋ง์ 1๏ธโฃ Servlet: ์๋ฐ ๊ธฐ๋ฐ์ ์น ์ ํ๋ฆฌ์ผ์ด์ ์์ HTTP ์์ฒญ๊ณผ ์๋ต์ ์ฒ๋ฆฌํ๋ ํด๋์ค: ์๋ฒ์์ ์คํ: ํด๋ผ์ด์ธํธ์ ์์ฒญ์ ๋ฐ๊ณ ์ ์ ํ ์๋ต์ ๋ง๋ค์ด ๋ณด๋ด๋ ์ญํ โ๏ธ Spring Framework๋ Servlet์ ์ฌ์ฉํ์ฌ HTTP ์์ฒญ์ ์ฒ๋ฆฌ• Spring Boot → ๊ฐ๋ฐ์๊ฐ ์ง์ ์๋ธ๋ฆฟ์ ์์ฑํ์ง ์์๋ Spring์ด ๋ด์ฅ ์๋ธ๋ฆฟ ์ปจํ ์ด๋๋ฅผ ์๋์ผ๋ก ์ค์ ํ๊ณ ๊ด๋ฆฌ• ๋๋ถ๋ถ์ ๊ฐ๋ฐ..