-
form 형태로 전달하기JAVA/웹 프로그래밍 - 서블릿 2020. 10. 30. 00:00
문제
form 형태로 숫자들을 전송해서 구구단을 출력하고
숫자를 입력받아 입력받은 수만큼 문자열 출력을 하도록 한다.
먼저. html 파일을 먼저 만들자.
submit의 역할은 폼태그의 내용을 모두 전송해주는 일을 한다.
각 전송 버튼이 눌리면, 각 각 Test.java 혹은 GooGooDan.java가 해당 일을 처리한다.
실행은 index.html에서 실행한다.
index.html
더보기<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>http://localhost:9090/index.html</title> </head> <body> <h1>인사하기</h1> <form action="Test"> <input type="text" name="cnt"> <input type="submit" value="전송"> </form> <h1>구구단</h1> <form action="GooGooDan"> <input type="text" name="dan"> <input type="submit" value="전송"> </form> </body> </html>
Test.java
더보기package com.iot.web; 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("/Test") public class Test extends HttpServlet { private static final long serialVersionUID = 1L; protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setCharacterEncoding("UTF-8"); response.setContentType("text/html;charset=UTF-8"); PrintWriter out = response.getWriter(); String cnt_ = request.getParameter("cnt"); // 리퀘스트의 정보를 받는다. int cnt = Integer.parseInt(cnt_); for (int i = 0; i < cnt; i++) out.println("서버에 접속한 것을 환영합니다.<br>"); } }
GooGooDan.java
더보기package com.iot.web; 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("/GooGooDan") public class GooGooDan extends HttpServlet { private static final long serialVersionUID = 1L; protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // TODO Auto-generated method stub response.setCharacterEncoding("UTF-8"); response.setContentType("text/html;charset=UTF-8"); PrintWriter out = response.getWriter(); int dan = 2; // 2단으로 초기화 String dan_ = request.getParameter("dan"); // 리퀘스트의 정보를 받는다. // dan_이 null이 아니면 정수로 변환 if (dan_ != null && dan_ != "") { dan = Integer.parseInt(dan_); } for (int i = 1; i < 10; i++) out.println(dan +" X " +i +" = " +(dan*i) +"<br>"); } }
'JAVA > 웹 프로그래밍 - 서블릿' 카테고리의 다른 글
form을 활용한 아이디와 비번 입력 받기(select,date,다중선택,checkbox) (0) 2020.10.30 form과 textArea & 한글 깨짐 해결 (0) 2020.10.30 구구단의 원하는 단을 입력해서 출력하기 (0) 2020.10.29 반복문을 이용하여 문자열 여러 번 출력 (0) 2020.10.29 자바와 Tomcat 서버 연결하기 (0) 2020.10.29