中文出现乱码原因通常为编码设置不一致,使用spring mvc + jQuery.form + jsp时尽量在以下三个地方都显示设置编码类型:
Controller:
@ResponseBody
@RequestMapping(value = "/login", produces = "text/plain; charset=UTF-8")
public String login(@RequestParam String username, @RequestParam String password, HttpSession session) {
// TODO
return "";
}
jsp:
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>...</body>
</html>
js:
function login() {
$("#loginForm").ajaxSubmit({
dataType : "json",
contentType : "application/x-www-form-urlencoded; charset=UTF-8",
success : function(data) {
alert(data.message);
}
});
}