** ๐ 1-4. ํผ ๋ฐ์ดํฐ ์ฒ๋ฆฌ (GET/POST ๋ฐฉ์ ์์ ์ ๋ฆฌ)**
JSP์์ ์ฌ์ฉ์ ์ ๋ ฅ๊ฐ์ ์์ ํ๊ฒ ๋ฐ๋ ๋ฐฉ๋ฒ + ์ค์ ์์ + ๊ธฐ์ ๋ฉด์ ์ ๋ฆฌ
๐งฉ ๋ชฉ์ฐจ
- HTML Form์ด๋?
- GET๊ณผ POST ๋ฐฉ์ ์ฐจ์ด
- JSP์์ ์ ๋ ฅ๊ฐ ๋ฐ๋ ๋ฐฉ๋ฒ
- ์ค์ ์์ (GET & POST)
- ์ ํจ์ฑ ๊ฒ์ฌ ์ถ๊ฐ ํ
- ๊ธฐ์ ๋ฉด์ ๋๋น ์ ๋ฆฌ
- ๋ง๋ฌด๋ฆฌ ์์ฝ & Notion ์ ๋ฆฌ ํ
โ 1. HTML Form์ด๋?
๊ฐ๋ | ์ค๋ช |
---|---|
์ ์ | ์ฌ์ฉ์์ ์ ๋ ฅ์ ์๋ฒ๋ก ์ ์กํ๋ HTML ์์ |
๋์ | method ์ ๋ฐ๋ผ GET ๋๋ POST ๋ฐฉ์์ผ๋ก ์๋ฒ์ ์ ์ก๋จ |
์ฐ๊ฒฐ ๋์ | action="JSP ๋๋ Servlet ํ์ผ๋ช
" ์ผ๋ก ์ง์ |
<form action="submit.jsp" method="post">
์ด๋ฆ: <input type="text" name="name" />
<input type="submit" value="์ ์ก" />
</form>
โ 2. GET vs POST ์ฐจ์ด์
๊ตฌ๋ถ | GET | POST |
---|---|---|
์ ์ก ๋ฐฉ์ | URL์ ํ๋ผ๋ฏธํฐ ํฌํจ | ์์ฒญ ๋ฐ๋์ ์จ๊ฒจ์ ์ ์ก |
๋ณด์์ฑ | ๋ฎ์ (์ฃผ์์ฐฝ์ ๋ ธ์ถ) | ๋์ (URL์ ํ์๋์ง ์์) |
์ฉ๋ ์ ํ | ์ ์ (~2KB ์ ํ) | ๋ง์ (ํ์ผ๋ ๊ฐ๋ฅ) |
์ฌ์ฉ ์ฉ๋ | ๊ฒ์, ์กฐํ | ๋ก๊ทธ์ธ, ํ์๊ฐ์ ๋ฑ ๋ฏผ๊ฐํ ์ ๋ณด |
๐ก ์์ ๋น๊ต
GET โ /submit.jsp?name=ํ๊ธธ๋
POST โ ์๋ฒ ๋ด๋ถ๋ก ์ ์ก๋๋ฉฐ URL์ ํ์๋์ง ์์
โ 3. JSP์์ ์ ๋ ฅ๊ฐ ๋ฐ๋ ๋ฐฉ๋ฒ
๐ ๊ณตํต ์ฝ๋: request.getParameter("์ด๋ฆ")
<%
String name = request.getParameter("name");
%>
<p>์
๋ ฅํ ์ด๋ฆ: <%= name %></p>
โ 4. ์ค์ ์์ : GET & POST ๋ฐฉ์
๐ฆ [1] GET ๋ฐฉ์ ์์
๐ form.html
<form action="getTest.jsp" method="get">
์ด๋ฆ: <input type="text" name="name" />
<input type="submit" value="GET ์ ์ก" />
</form>
๐ getTest.jsp
<%
String name = request.getParameter("name");
%>
<p>GET ๋ฐฉ์์ผ๋ก ๋ฐ์ ์ด๋ฆ: <%= name %></p>
๐ง URL์ ?name=ํ๊ธธ๋
์ฒ๋ผ ํ๋ผ๋ฏธํฐ๊ฐ ๋ถ์ด์ ์ ์ก๋จ
๐ฆ [2] POST ๋ฐฉ์ ์์
๐ form.html
<form action="postTest.jsp" method="post">
์ด๋ฆ: <input type="text" name="name" />
<input type="submit" value="POST ์ ์ก" />
</form>
๐ postTest.jsp
<%
String name = request.getParameter("name");
%>
<p>POST ๋ฐฉ์์ผ๋ก ๋ฐ์ ์ด๋ฆ: <%= name %></p>
๐ง URL์ ์๋ฌด ์ ๋ณด๋ ํ์๋์ง ์๊ณ , ๋ณด์์ฑ์ด ๋ ๋์
โ 5. JavaScript + ์๋ฒ ์ ํจ์ฑ ๊ฒ์ฌ ํ ๐ก๏ธ
๐ธ ํด๋ผ์ด์ธํธ ์ ํจ์ฑ ๊ฒ์ฌ (JS๋ก ๋ฏธ๋ฆฌ ๊ฒ์ฌ)
<script>
function validate() {
const name = document.getElementById("name").value;
if (name === "") {
alert("์ด๋ฆ์ ์
๋ ฅํ์ธ์!");
return false;
}
}
</script>
<form onsubmit="return validate()" method="post" action="postTest.jsp">
์ด๋ฆ: <input type="text" name="name" id="name" />
<input type="submit" value="์ ์ก" />
</form>
๐ธ ์๋ฒ ์ ํจ์ฑ ๊ฒ์ฌ (JSP์์ null ์ฒดํฌ)
<%
String name = request.getParameter("name");
if(name == null || name.trim().equals("")) {
out.println("์ด๋ฆ์ ํ์ ์
๋ ฅ ํญ๋ชฉ์
๋๋ค!");
} else {
out.println("์
๋ ฅ๋ ์ด๋ฆ: " + name);
}
%>
โ 6. ๊ธฐ์ ๋ฉด์ ๋๋น ์ง๋ฌธ ์ ๋ฆฌ
์ง๋ฌธ | ์์ ๋ต๋ณ |
---|---|
GET vs POST ์ฐจ์ด๋? | GET์ URL์ ํ๋ผ๋ฏธํฐ, POST๋ ๋ณธ๋ฌธ์ ์ ์ก |
ํผ์์ ์๋ฒ๋ก ๊ฐ ์ ์ก ๋ฐฉ๋ฒ์? | method ์ GET ๋๋ POST ์ง์ , action ์ JSP ํ์ผ๋ช
์ง์ |
JSP์์ ๊ฐ ๋ฐ๋ ๋ฐฉ๋ฒ? | request.getParameter("name") ์ฌ์ฉ |
๋ณด์์ด ๋ ๊ฐํ ๋ฐฉ์์? | POST (URL์ ๋ ธ์ถ๋์ง ์์) |
โ 7. ๋ง๋ฌด๋ฆฌ ์์ฝ ๐ง
- ๐ค Form: HTML์์ ์ฌ์ฉ์ ์ ๋ ฅ ์ ์ก
- ๐ GET: ์ฃผ์์ฐฝ์ ๋ ธ์ถ, ์กฐํ์ฉ
- ๐ POST: ์ฃผ์์ฐฝ์ ์ ๋ณด์, ๋ก๊ทธ์ธ/ํ์๊ฐ์ ๋ฑ ์ฌ์ฉ
- ๐งพ JSP์์๋
request.getParameter("์ด๋ฆ")
์ผ๋ก ๊ฐ ๋ฐ๊ธฐ - โ JS + ์๋ฒ ๋ชจ๋ ์ ํจ์ฑ ๊ฒ์ฌ ํ์!