KoreanTest.java 5.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121
  1. import java.io.*;
  2. import java.util.*;
  3. import javax.servlet.*;
  4. import javax.servlet.http.*;
  5. public class KoreanTest extends HttpServlet {
  6. public void doGet(HttpServletRequest request,
  7. HttpServletResponse response)
  8. throws IOException, ServletException
  9. {
  10. response.setContentType("text/html;charset=EUC-KR");
  11. //response.setContentType("text/html");
  12. //response.setHeader("Content-Language", "ko");
  13. PrintWriter out = response.getWriter();
  14. out.println("<html>");
  15. out.println("<head>");
  16. String title = "Korean Test";
  17. out.println("<title>" + title + "</title>");
  18. out.println("</head>");
  19. out.println("<body bgcolor=\"white\">");
  20. out.println("<h1>" + title + "</h1>");
  21. out.println("한글 출력이 깨지지 않고 잘 되려나...");
  22. out.println("<br>This is korean test");
  23. String name = "서블릿한글테스트";
  24. byte[] b1 = name.getBytes("KSC5601");
  25. byte[] b2 = name.getBytes("8859_1");
  26. out.println("<br>KSC5601:" + b1.length + ", 8859_1:" + b2.length);
  27. String name2 = new String(name.getBytes("KSC5601"), "8859_1");
  28. out.println("<br>" + name2);
  29. out.println("<h3>Request Parameters</h3>");
  30. ServletInputStream in = request.getInputStream();
  31. byte[] buf = new byte[1024];
  32. int len = in.readLine(buf, 0, buf.length);
  33. String firstName = request.getParameter("firstname");
  34. String lastName = request.getParameter("lastname");
  35. String color = request.getParameter("color");
  36. if (firstName != null || lastName != null || color != null) {
  37. out.println("<table border=\"0\" cellpadding=\"5\">");
  38. out.println("<tr><td bgcolor=\"#FDF5E6\">First Name</td><td>");
  39. out.println(firstName + "</td></tr>");
  40. out.println("<tr><td bgcolor=\"#FDF5E6\">Last Name</td><td>");
  41. out.println(lastName + "</td></tr>");
  42. out.println("<tr><td bgcolor=\"#FDF5E6\">Favorate Colors</td><td>");
  43. out.println(color + "</td></tr>");
  44. out.println("</table>");
  45. out.println("<br><br>ASC2KSC Version");
  46. out.println("<table border=\"0\" cellpadding=\"5\">");
  47. out.println("<tr><td bgcolor=\"#B0E2FF\">First Name</td><td>");
  48. out.println(asc2ksc(firstName) + "</td></tr>");
  49. out.println("<tr><td bgcolor=\"#B0E2FF\">Last Name</td><td>");
  50. out.println(asc2ksc(lastName) + "</td></tr>");
  51. out.println("<tr><td bgcolor=\"#B0E2FF\">Favorate Colors</td><td>");
  52. out.println(asc2ksc(color) + "</td></tr>");
  53. out.println("</table>");
  54. } else {
  55. out.println("No Parameters, Please enter some");
  56. }
  57. out.println("<p>");
  58. out.println("<h3>Parameter Input Form by <b>GET</b></h3>");
  59. out.println("<form action=\"KoreanTest\" method=GET>");
  60. out.println("<table border=\"0\" cellpadding=\"2\">");
  61. out.println("<tr><td>First Name</td><td>");
  62. out.println("<input type=text size=20 name=firstname></td></tr>");
  63. out.println("<tr><td>Last Name</td><td>");
  64. out.println("<input type=text size=20 name=lastname></td></tr>");
  65. out.println("<tr><td>Favorite Colors</td><td>");
  66. out.println("<input type=text size=20 name=color></td></tr>");
  67. out.println("</table>");
  68. out.println("<input type=submit>");
  69. out.println("</form>");
  70. out.println("<p>");
  71. out.println("<h3>Parameter Input Form by <b>POST</b></h3>");
  72. out.println("<form action=\"KoreanTest\" method=POST>");
  73. out.println("<table border=\"0\" cellpadding=\"2\">");
  74. out.println("<tr><td>First Name</td><td>");
  75. out.println("<input type=text size=20 name=firstname></td></tr>");
  76. out.println("<tr><td>Last Name</td><td>");
  77. out.println("<input type=text size=20 name=lastname></td></tr>");
  78. out.println("<tr><td>Favorite Colors</td><td>");
  79. out.println("<input type=text size=20 name=color></td></tr>");
  80. out.println("</table>");
  81. out.println("<input type=submit>");
  82. out.println("</form>");
  83. out.println("<p>");
  84. out.println("<h3>Parameter Input by <b>URL</b></h3>");
  85. out.println("<a href=\"KoreanTest?firstname=재선&lastname=한&color=파랑\">Korean Test</a><br>");
  86. out.println("<a href=\"KoreanTest?firstname=재선jaesun&lastname=han한&color=파랑blue\">Korean Test2</a>");
  87. out.println("</body>");
  88. out.println("</html>");
  89. out.close();
  90. }
  91. public void doPost(HttpServletRequest request,
  92. HttpServletResponse response)
  93. throws IOException, ServletException
  94. {
  95. doGet(request, response);
  96. }
  97. String asc2ksc (String src)
  98. {
  99. try {
  100. return new String(src.getBytes("8859_1"), "KSC5601");
  101. } catch (java.io.UnsupportedEncodingException uee) {
  102. log(uee.getMessage());
  103. return null;
  104. }
  105. }
  106. }