'jsp 한글'에 해당되는 글 1건

  1. 2014.05.03 JSP에서 한글처리

JSP에서 한글처리

개발 및 관리/Java 2014. 5. 3. 23:57 posted by HighLighter
반응형

1.웹 브라우저에 응답하는 페이지

-페이지 지시자에서 charset을 euc-kr로 지정

<%@ page language="java" contentType="text/html;charset=euc-kr%">

 

2.웹 브라우저에서 웹 서버로 파라미터가 post방식으로 넘어오는 페이지

request에서 사용하는 문자의 인코딩 방식을 euc-kr로 변경

<%@ request.setCharacterEncoding("euc-kr")%>

 

3.웹 브라우저에서 웹 서버로 파라미터가 get방식으로 넘어오는 페이지

영문 인코딩(8859_1)을 한글 인코딩(euc-kr)으로 변환하는 작업을 해야 한다. 이러한 작업을 위해서는 String클래스의 getBytes 메소드를 사용한다.

 

JSP페이지에서 get방식으로 넘겨진 한글은 기본적으로 8859_1 인코딩 방식으로 인식하므로 이 값을 제대로 출력하기 위해서는 euc-kr 인코딩방식으로 변환해야 한다.

 

String s_name = request.getParameter("name");

s_name = new String(s_name.getBytes("8859_1"), "euc-kr");

 

반대로 쿼리 스트링으로 한글을 전달할 경우에는 한글 인코딩 방식(euc-kr)을 영문 인코딩방식(8859_1)으로 변환한 후에 전송한다.

 

String s_name="성윤정";

s_name = new String(s_name.getBytes("euc-kr"), "8859_1");

 

-------------------------------------------------------------------------

-------------------------------------------------------------------------

 

package myUtil;
import java.io.UnsupportedEncodingException;

public class HanConv {
  //8859_1 방식을 euc-kr 방식으로 변환하는 메소드 정의
  public static String toKor(String str) {
   if(str==null || str.equals("")||str.equals(null)) {
    return str;
   }
   try{
    return new String(str.getBytes("8859_1"), "euc-kr");
   }catch(UnsupportedEncodingException uee){
    uee.printStackTrace();
    return str;
   }
  }//euc-kr 방식을 859_1 방식으로 변환하는 메소드 정의
  public static String toEng(String str){
   if(str==null||str.equals("")||str.equals("null")) {
    return str;
   }
   try{
    return new String(str.getBytes("euc-kr"),"8859_1");
   }catch(UnsupportedEncodingException uee){
    uee.printStackTrace();
    return str;
   }
  }
}

 

출처: 서블릿 JSP 프로그래밍(저자: 성윤정, 하얀, 김태순) p.171

반응형