Tomcat 서버의 기본 문자 처리 방식은 IOS-8859-1 방식이기 때문에 한글이나 이외 문자들이 깨짐 현상이 발생하기 때문에
get방식으로는 server.xml을 수정해서 UTF-8 또는 EUC-KR로 인코딩해주어야 한다.
post방식으로는 doPost 메소드 안에 request객체나 response객체에
setCharacterEncoding 메소드 객체를 활용해서 UTF-8로 지정을 해주어야 한다.
gugudan.jsp
<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 에서 총점과 평균을 계산하여 전송
<form action="grade" method="post">
국어 점수 : <input type="text" id="kor"><br>
영어 점수 : <input type="text" id= "eng"><br>
수학 점수 : <input type="text" id= "math"><br>
<br><br>
<input type="submit" value="전송">
<input type="reset" value="초기화">
</form>
int kor, eng, math;
public Grade (int kor, int eng, int math) {
this.kor = kor;
this.eng = eng;
this.math = math;
}
public int totalGrade() {
return kor+eng+math;
}
public double totalAverage() {
(return kor+eng+math)/3.0;
}
response.setContentType("text/html; charset=EUC-KR");
response.setCharacterEncoding("EUC-KR");
PrintWriter out = response.getWriter();
int kor = Integer.valueOf(request.getParameter("kor"));
int eng = Integer.valueOf(request.getParameter("eng"));
int math = Integer.valueOf(request.getParameter("math"));
Grade g1 = new Grade(kor, eng, math);
out.println("<html><head></head><body>");
out.println("평균" + g1.totalAverage());
out.println("<br>");
out.println("총합" + g1.totalGrade());
out.println("</body></html>");