html)
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<!--
데이터 전송
form 태그를 사용할 때, 필수요소 3가지
form : submit 버튼을 눌렀을 때, 데이터를 포함한 요청을 하는 태그
1. 어디로 요청할 것인가?
> form 태그의 action 속성 : 요청 url
> 요청을 받아서 처리할 서버 프로그램
2. 무슨 데이터를 가져갈 것인가?
> 데이터에 라벨을 붙여야만 한다.
3. 언제 보낼 것인가?
> submit 버튼(input type=submit)
-->
<form action="Ex04Form">
<!--
http://localhost:8081/Servlet/Ex04Form.html
같은 프로젝트 내 파일에 요청을 보낼 때는,
http://localhost:8081/Servlet/ 를 생략 가능하다.
Tomcat에서 앞 주소를 알아서 붙혀준다.
-->
<input type="" name="data">
<input type="submit">
</form>
</body>
</html>
java)
package ex0406;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@WebServlet("/Ex04Form")
public class Ex04Form extends HttpServlet {
private static final long serialVersionUID = 1L;
protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// 요청에 담긴 데이터 꺼내기
// .getParameter("input 태그의 name");
String data = request.getParameter("data");
// 받아온 데이터를 이용해서
// client의 화면에 전송된 데이터는 ~~~입니다.
// 라고 응답해보기.
// 1) 응답 형식 지정
response.setContentType("text/html ; charset=utf-8");
// 2) out(출력스트림) 객체 생성
PrintWriter out = response.getWriter();
// 3) 응답 내용 작성
out.print("<html>");
out.print("<body>");
out.print("<h1>");
out.print("전송될 데이터는 "+data+"입니다.");
out.print("</h1>");
out.print("</body>");
out.print("</html>");
}
}
결과값)
예제) 아래 화면을 출력해보기
html)
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<form action="Ex05plus">
<input type="number" name="data1" value="12">
+
<input type="number" name="data2">
<input type="submit" value="확인">
</form>
</body>
</html>
java)
package ex0406;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@WebServlet("/Ex05plus")
public class Ex05plus extends HttpServlet {
private static final long serialVersionUID = 1L;
protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String user1 = request.getParameter("data1");
String user2 = request.getParameter("data2");
int a = Integer.parseInt(user1);
int b = Integer.parseInt(user2);
int result = a+b;
response.setContentType("text/html ; charset=utf-8");
PrintWriter out = response.getWriter();
out.print("<html>");
out.print("<body>");
out.print(user1+"+"+user2+"="+result);
out.print("</body>");
out.print("</html>");
}
}
'Web > JSP_Servlet' 카테고리의 다른 글
MVC 기초_총합 구하기 (0) | 2023.04.11 |
---|---|
MVC를 위한 Dynamic web project 생성 (0) | 2023.04.10 |
Servlet 클래스 생성 (0) | 2023.04.09 |
Servlet 요청과 응답 (0) | 2023.04.09 |
톰캣오류 - The selection cannot be run on any server (0) | 2023.04.07 |
댓글