实际上,我正在尝试使用jQuery ajax将阿拉伯数据发送到Servlet
但是当我尝试在页面上重新打印这些数据时,它会像
برÙجة
这是我的jQuery ajax代码
jQuery.ajax({
url: "/SearchedCoursesGetter",
contentType: "application/x-www-form-urlencoded;charset=UTF-8",
dataType: "text",
data: {
'searchKey': 'حديث'
},
success: function( data ) {
document.write(data);
}));
}
});
这是java servlet中的代码
response.setContentType("text/html;charset=UTF-8");
request.setCharacterEncoding("UTF8");
PrintWriter out = response.getWriter();
out.print( request.getParameter("searchKey"));
有谁能帮助我?
解决方法:
将其添加到您的JSP的顶部
<%@ page pageEncoding="UTF-8" %>
这将对JSP本身隐式地执行response.setHeader(“ Content-Type”,“ text / html; charset = UTF-8”)和response.setCharacterEncoding(“ UTF-8”).这样,浏览器会将文档(以及文档上的所有JS)解释为UTF-8.
您还需要确保将JSP / JS文件另存为UTF-8.根据所使用的编辑器,检查编辑器设置和/或“另存为”选项.
请注意,request.setCharacterEncoding(“ UTF-8”)仅对POST请求有效,对GET请求无效.对于GET请求,您需要在servlet容器级别进行配置.例如在Tomcat中,您需要将URIEncoding =“ UTF-8”属性添加到< Connector>在/conf/server.xml中.
也可以看看:
> Unicode – How to get the characters right?