개발/JAVA
[Servlet] #02. GET/POST 방식으로 데이터 전송
고매
2020. 7. 21. 01:09
● 웹에서 Request로 던져준 후, Servlet으로 가는 것이다.
- HttpServletRequest : request의 원본 이름
● Servlet -> Java(html) : Java 코드 안에 html이 있는 것이다.
JSP -> html(Java) : 반대로, html 영역 안에 java가 있는 것이다. (훨씬 편하다)
● Servlet과 JSP 는 형제 격. 작업하는 위치가 조금 다를 뿐이다!
■ Get 방식
package sample01;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class HelloServlet extends HttpServlet {
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
// System.out.println("HelloServlet doGet");
/*
Servlet -> Java(html) : Java 코드 안에 html이 있는 것이다.
JSP -> html(Java) : html 영역 안에 java가 있는 것이다. (훨씬 편하다)
*/
String name = req.getParameter("name");
System.out.println("name:" + name);
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
System.out.println("HelloServlet doPost");
}
}
java 안에 html이 있다는 것을 알 수 있다
package sample01;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class HelloServlet extends HttpServlet {
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
// System.out.println("HelloServlet doGet");
/*
Servlet -> Java(html) : Java 코드 안에 html이 있는 것이다.
JSP -> html(Java) : html 영역 안에 java가 있는 것이다. (훨씬 편하다)
*/
String name = req.getParameter("name");
System.out.println("name:" + name);
resp.setContentType("text/html; charset=utf-8");
PrintWriter pw = resp.getWriter();
pw.println("<html>");
pw.println("<head>");
pw.println("<title>제목</title>");
pw.println("</head>");
pw.println("<body>");
pw.println("<h1> Hello Servlet </h1>");
pw.println("<p> Hello Servlet </p>");
pw.println("<h3> name: " + name + "</h3>");
pw.println("<a href='sample'>sample link</a>");
pw.println("</body>");
pw.println("</html>");
pw.close();
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
System.out.println("HelloServlet doPost");
}
}
Get 방식은 Parameter가 URL에 모두 보인다.