한글이 깨지지 않도록 하는 처리에서도 get방식과 post 방식으로 나뉘게된다.
서블릿에
request.setCharacterEncoding("UTF-8");
server.xml에
<Connector URIEncoding="UTF-8" />
request.setCharacterEncoding("UTF-8");
response.setContentType("text/html; charset=UTF-8");
지시자 : <%@ %> : 페이지 속성
주석 : <%-- --%> / html은 <!-- -->
선언 : <%! %> : 변수, 메소드 선언
표현식 : <%= %> : 결과값 출력
스크립트릿 : <% %> : JAVA 코드 → 자바 문법 들어감!
액션태그 : <jsp:action> </jsp:action> : 자바빈 연결 등
<table border="1">
<tr>
<%
for(int i=2;i<10;i++){
out.print("<th width=100>"+i+"단</th>");
}
%>
</tr>
<%
for(int i=1;i<10;i++){
%>
<tr>
<%
for(int j=2;j<10;j++){
out.print("<td align=center>"+ j + "*" + i + "=" + (j*i)+"</td>");
}
%>
</tr>
<%
}
%>
</table>
-grade.html 국어 영어 수학 점수 입력
-/grade 에서 총점과 평균을 계산하여 전송
html
<form action="grade" method="post">
국어 : <input type="text" name="kor" size="10"><br/>
영어 : <input type="text" name="eng" size="10"><br/>
수학 : <input type="text" name="math" size="10"><br/><br/>
<input type="submit" value="전송"> <input type="reset" value="초기화">
</form>
package edu.global.ex;
public class Grade {
private int kor, eng, math;
public Grade(int kor, int eng, int math) {
this.kor = kor;
this.eng = eng;
this.math = math;
}
// public double getGrade() {
// return radius;
// }
public int getTotal() {
return kor + eng + math;
}
public double getAvg() {
return getTotal() / 3.0;
}
}
===============================================================================
package edu.global.ex;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.Arrays;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/**
* Servlet implementation class timer_1124
*/
@WebServlet("/grade")
public class GradeServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
/**
* @see HttpServlet#HttpServlet()
*/
public GradeServlet() {
super();
// TODO Auto-generated constructor stub
}
/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
response.getWriter().append("Served at: ").append(request.getContextPath());
}
/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
System.out.println("doPost호출");
request.setCharacterEncoding("UTF-8");
response.setContentType("text/html; charset=EUC-KR");
int kor = Integer.valueOf(request.getParameter("kor"));
int eng = Integer.valueOf(request.getParameter("eng"));
int math = Integer.valueOf(request.getParameter("math"));
Grade grade = new Grade(kor,eng,math);
PrintWriter writer = response.getWriter();
writer.println("<html><head></head><body>");
writer.println("<h1>국어: " + kor + "</h1>");
writer.println("<h1>영어 : " + eng + "</h1>");
writer.println("<h1>수학 : " + math + "</h1>");
writer.println("<h1>총점 : " + grade.getTotal() + "</h1>");
writer.println("<h1>평균 : " + grade.getAvg() + "</h1>");
}
}