개발/JSP

Ajax 한글 깨짐 인코딩 방법

신매력 2014. 4. 8. 11:24

맨날 까먹는 이것 ㅋㅋㅋ

AJAX 호출할 때 한글 깨져서 DB에 들어가는 현상..
 
 
1. 페이지 맨위에 아래와 같이 추가해주고..
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" session="false"%>
<% request.setCharacterEncoding("utf-8"); %>
<% response.setContentType("text/html; charset=utf-8"); %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>​

 

2. AJAX로 호출하고...
$.ajax({
	url: '/society/insert_univ.json',
	data: {"name":name, "address":address},
	method: 'post',
	success:function(data) {
		alert("성공");
	},
	error:function() {
		alert("실패");
	}
});

 

 

3. 받는 쪽에서 (서버) 글자를 디코딩 해준다.

@RequestMapping("insert_univ.json")
public @ResponseBody Integer insertUniv(
	@RequestParam(value = "name") String name,
	@RequestParam(value = "address") String address) throws UnsupportedEncodingException {
	
   	name = URLDecoder.decode(name, "UTF-8");
	address = URLDecoder.decode(address, "UTF-8");


    // ........ (생략)
 }