UTF-8 개발에 관한 정리입니다.
1. 모든 문서는 UTF-8 인코딩으로 저장되어야 합니다.
에디트 플러스의 경우 도구 -> 기본설정 -> 파일 부분에서 새 파일 형식을
UTF-8 로 해놓음으로써 새파일 작성시 UTF-8을 기본으로 작성할수 있고,
이미 다른 인코딩 타입에서 작성된 문서인 경우 내용을 모조리 Ctrl+C로 복사후
문서 -> 인코딩 변경 로드에서 UTF-8로 변경후 다시 붙여넣기 하면 됩니다.
이클립스의 경우 Package Explorer 에서 프로젝트에서 우측 버튼을 누른 후
Properties->Info->Text file encoding->Other 을 UTF-8 로 잡아주면 됩니다.
( 기존 다른 인코딩 타입에서 작성된 문서 내부 한글은 모조리 깨지게 됨 )
* ascii 로 작성된 자바스크립트 파일을 utf 문서에서 불러와 수행시킬 경우
자바스크립트 에러 나는 문제도 있더군요.(한글 주석이 영향을 줬을수도...)
2. jsp 파일 상단에는 다음과 같은 방식으로 UTF-8 설정합니다.
<%@ page contentType = "text/html;charset=utf-8" %>
3. 서블릿은 다음과 같은 방식으로 UTF-8을 설정합니다.
request.setCharacterEncoding("utf-8")
4. 자바스크립트에서 encodeURIComponent 처리 및 톰캣 server.xml 의 설정 변경
위 1,2,3번의 방식으로 하면 post 방식의 데이터는 잘 받지만
get 방식의 데이터는 한글이 깨집니다.
이와 같은 경우 자바스크립트의 encodeURIComponent 함수와
server.xml 을 이용하여 처리하면 됩니다.
4.1 server.xml
톰캣 폴더의 conf 폴더에는 server.xml 파일이 존재합니다.
에디터로 열어보면
예)
값이 약간 틀릴수 있지만 초기 셋팅 값이 보통 저러하고,
Connector 은 초기에 2개가 있는데 8080 포트 부분을 수정하면 됩니다.
수정하는 방법은
URIEncoding="UTF-8" 을 추가하면 됩니다.
예)
위와 같이 했다고 해결되는 것은 아닙니다. get 방식으로 데이터를 전송하면
자바 파일에서 확인 했을 경우 물음표 값만 넘어옵니다.
get 방식으로 보낼 경우 자바스크립트로 변환을 해줍니다.
예를 들어 "한글"을 자바스크립트에서
처럼 encodeURIComponent 함수로 변환하게 되면 %ED%95%9C%EA%B8%80 으로
변환됩니다. 이 값을 주소에 "한글" 대신에 넣게 되면 자바에서 알아서 잘~ 받습니다 ^^
5. HttpURLConnection 을 통하여 UTF-8 로 된 URL 을 읽을 경우.
다른 부분은 동일하고,
BufferedReader br = new BufferedReader(new InputStreamReader(conn.getInputStream(), "UTF-8"));
로 변경합니다.
6. jsp -> bean 데이터 전송은 문제 없지만 jsp -> jsp 에서 한글이 깨진다면
받는 부분에서
String test = request.getParameter("test ");
test = new String(test .getBytes("8859_1"), "UTF-8");
처럼 변환해서 저장합니다.
ps. 참고 사이트
http://cafe.naver.com/phpinfo.cafe?iframe_url=/ArticleRead.nhn%3Farticleid=434
Tag
tag는 게시물의 성격을 나타내는 키워드를 입력하는 공간입니다. login 후 사용하실 수 있습니다.
function saveTag() {
var url = "/jsp/tag.jsp?";
var tagObj = document.getElementById("tag");
var params = "seq=72792&tag="+(tagObj.value);
tagObj.disabled = true;
processAjax(url, params, "doTag");
return false;
}
function doTag(req) {
var result = req.responseText;
document.getElementById("tagSaveMsg").innerHTML = result;
var tagObj = document.getElementById("tag");
if ( 'ok' == result ) {
tagObj.value = "";
}
tagObj.disabled = false;
}
좋은 글 감사합니다.
kenu
2006-07-16 23:50:49
x
아래글은 제가 나름대로 정리한 UTF-8 한글 url 처리 입니다. http://jongsclub.com/webedit/studyView.jsp?num=28
이종희
2006-07-18 00:52:28
x
좋은 자료입니다.
무느미
2006-07-18 14:22:02
x
앗... 부족한 글 인용해 주셔서 감사합니다.^^ 정리 잘하셨네요
아주작은새
2006-07-21 09:49:17
x
아이고 아주작은새님께 칭찬 받다니 영광입니다. ^^
GHLab
2006-07-21 16:36:47
x
1. 모든 문서는 UTF-8 인코딩으로 저장되어야 합니다.
에디트 플러스의 경우 도구 -> 기본설정 -> 파일 부분에서 새 파일 형식을
UTF-8 로 해놓음으로써 새파일 작성시 UTF-8을 기본으로 작성할수 있고,
이미 다른 인코딩 타입에서 작성된 문서인 경우 내용을 모조리 Ctrl+C로 복사후
문서 -> 인코딩 변경 로드에서 UTF-8로 변경후 다시 붙여넣기 하면 됩니다.
이클립스의 경우 Package Explorer 에서 프로젝트에서 우측 버튼을 누른 후
Properties->Info->Text file encoding->Other 을 UTF-8 로 잡아주면 됩니다.
( 기존 다른 인코딩 타입에서 작성된 문서 내부 한글은 모조리 깨지게 됨 )
* ascii 로 작성된 자바스크립트 파일을 utf 문서에서 불러와 수행시킬 경우
자바스크립트 에러 나는 문제도 있더군요.(한글 주석이 영향을 줬을수도...)
2. jsp 파일 상단에는 다음과 같은 방식으로 UTF-8 설정합니다.
<%@ page contentType = "text/html;charset=utf-8" %>
3. 서블릿은 다음과 같은 방식으로 UTF-8을 설정합니다.
request.setCharacterEncoding("utf-8")
4. 자바스크립트에서 encodeURIComponent 처리 및 톰캣 server.xml 의 설정 변경
위 1,2,3번의 방식으로 하면 post 방식의 데이터는 잘 받지만
get 방식의 데이터는 한글이 깨집니다.
이와 같은 경우 자바스크립트의 encodeURIComponent 함수와
server.xml 을 이용하여 처리하면 됩니다.
4.1 server.xml
톰캣 폴더의 conf 폴더에는 server.xml 파일이 존재합니다.
에디터로 열어보면
예)
값이 약간 틀릴수 있지만 초기 셋팅 값이 보통 저러하고,
Connector 은 초기에 2개가 있는데 8080 포트 부분을 수정하면 됩니다.
수정하는 방법은
URIEncoding="UTF-8" 을 추가하면 됩니다.
예)
위와 같이 했다고 해결되는 것은 아닙니다. get 방식으로 데이터를 전송하면
자바 파일에서 확인 했을 경우 물음표 값만 넘어옵니다.
get 방식으로 보낼 경우 자바스크립트로 변환을 해줍니다.
예를 들어 "한글"을 자바스크립트에서
처럼 encodeURIComponent 함수로 변환하게 되면 %ED%95%9C%EA%B8%80 으로
변환됩니다. 이 값을 주소에 "한글" 대신에 넣게 되면 자바에서 알아서 잘~ 받습니다 ^^
5. HttpURLConnection 을 통하여 UTF-8 로 된 URL 을 읽을 경우.
다른 부분은 동일하고,
BufferedReader br = new BufferedReader(new InputStreamReader(conn.getInputStream(), "UTF-8"));
로 변경합니다.
6. jsp -> bean 데이터 전송은 문제 없지만 jsp -> jsp 에서 한글이 깨진다면
받는 부분에서
String test = request.getParameter("test ");
test = new String(test .getBytes("8859_1"), "UTF-8");
처럼 변환해서 저장합니다.
ps. 참고 사이트
http://cafe.naver.com/phpinfo.cafe?iframe_url=/ArticleRead.nhn%3Farticleid=434
Tag
tag는 게시물의 성격을 나타내는 키워드를 입력하는 공간입니다. login 후 사용하실 수 있습니다.
function saveTag() {
var url = "/jsp/tag.jsp?";
var tagObj = document.getElementById("tag");
var params = "seq=72792&tag="+(tagObj.value);
tagObj.disabled = true;
processAjax(url, params, "doTag");
return false;
}
function doTag(req) {
var result = req.responseText;
document.getElementById("tagSaveMsg").innerHTML = result;
var tagObj = document.getElementById("tag");
if ( 'ok' == result ) {
tagObj.value = "";
}
tagObj.disabled = false;
}
좋은 글 감사합니다.
kenu
2006-07-16 23:50:49
x
아래글은 제가 나름대로 정리한 UTF-8 한글 url 처리 입니다. http://jongsclub.com/webedit/studyView.jsp?num=28
이종희
2006-07-18 00:52:28
x
좋은 자료입니다.
무느미
2006-07-18 14:22:02
x
앗... 부족한 글 인용해 주셔서 감사합니다.^^ 정리 잘하셨네요
아주작은새
2006-07-21 09:49:17
x
아이고 아주작은새님께 칭찬 받다니 영광입니다. ^^
GHLab
2006-07-21 16:36:47
x
라벨: JSP
