form태그
중요함~
submit : 데이터 보낼 시점
action에는 servlet의 url mapping값을 작성
->action에 작성한 페이지를 요청한다는 의미
실습1
html<form action="Ex04_get"> data = <input type="text" name="data"> <input type="submit" value="send"> </form>java
String data = request.getParameter("data"); System.out.println(data);
실습2
html<!-- 보낼 주소 --> <form action="Ex05_getName"> 당신의 이름은?<input type="text" name="names"></br> 당신의 나이는?<input type="text" name ="ages"></br> <input type="submit" value="전송"> <!-- 시점 -->R </form>java
// 1. 데이터 받아오기 String names = request.getParameter("names"); String ages = request.getParameter("ages"); //2. WEB에 출력하기 -> PrintWriter //응답할 문서에 대한 설정 response.setContentType("text/html;charset=utf-8"); PrintWriter out = response.getWriter(); out.print("제 이름은 "+names+"입니다.</br>"); out.print("제 나이는 "+ages+"입니다.");
실습3
html<h1>두 수를 입력 받아서 계산하기!</h1> <form action="Ex06_plus"> <input type="text" name="num1"><br> <input type="text" name="num2"><br> <input type="submit" value="연산"> </form>java
// 입력한 두수 받아서 web에 출력하기 // 1. 입력한 두 수 받아오기 -> 연산하기 위해서 // 형변환 Integer 객체의 parseInt 메소드 사용 int num1 = Integer.parseInt(request.getParameter("num1")); int num2 = Integer.parseInt(request.getParameter("num2")); int result = num1 + num2; //2. 응답할 문서에 대한 설정 response.setContentType("text/html;charset=utf-8"); //3. 출력 스트림 열기(출력할 통로를 열어준다.) PrintWriter out = response.getWriter(); //원래는 response.getWriter().print(""); out.print(num1+" 과 "+num2+" 의 합은 "+result+"입니다.");
실습4
html<form action="Ex07_makeTable"> 방 개수 : <input type="text" name="room"> 색깔 :<input type="color" name="colors"> <input type="submit" value="전송"> </form>java
// 방 개수, color 받아와서 table 형태로 웹에 출력 -> 반복문 // 서블릿은 웹을 만드는 프로그램이지만 자바를 기반으로 하기 때문에 가능 //1. 방 개수, color 받아오기 int room = Integer.parseInt(request.getParameter("room")); String colors =request.getParameter("colors"); //2. 웹에 출력 // response.setContentType("text/html;charset=utf-8"); // 따로 안 해줘도 됨 PrintWriter out = response.getWriter(); // 3. table 형태로 출력하기 // table -> 1개, tr-> 1개, td -> 사용자가 입력한 방의 개수 // 1행 6열 out.print("<table border=1 bgcolor = "+colors+">"); // out.print("<table border=1 style='background-color:"+colors+"'>"); // out.print("<style> table{background-color :"+colors+"}</style>"); out.print("<tr>"); for(int i = 1 ; i<=room; i++) { out.print("<td>"+ i +"</td>"); } out.print("</tr>"); out.print("</table>");