SpringMVC-ajax返回值乱码解决方案
一:(自己总结,测试过可行)
ajax返回如果含有中文汉字,则使用:(如下例:)
@RequestMapping(value="/xxx.do")
public @ResponseBody void getPunishReasonById(HttpServletRequest request,HttpServletResponse response) throws Exception{
String str = “中文”;
response.getWriter().write(str);
response.getWriter().flush();
response.getWriter().close();
// return str;
}
如果直接使用返回值为String并return str 则中文乱码!!!
jsp_js(ajax)
ajax可以直接接收返回值!
如:(如下例:)
$.ajax({
type : "POST",
url : "xxx.do",
success : function(data){
alert(data);//打印中文无乱码!!!——wds
}
});
//欢迎交流互动,记得赞一个!
--IT愤青一枚
下面是别人总结的ajax中文乱码问题:
- /**
- * 使用ajax检查用户是否存在
- */
- public void checkUser(){
- try{
- System.out.println("userName="+user.getUserName());
- HttpServletResponse response=ServletActionContext.getResponse();
- response.setContentType("text/xml;charset=utf-8");
- response.setHeader("Cache-Control", "no-cache");
- PrintWriter pw=response.getWriter(); // 输出中文,这一句一定要放到response.setContentType("text/xml;charset=utf- 8"), response.setHeader("Cache-Control", "no-cache")后面,否则中文返回到页面是乱码
- if(existUser.contains(user.getUserName()))
- {
- pw.print("存在");
- }else{
- pw.print("不存在");
- }
- pw.close();
- }catch(IOException e){
- e.printStackTrace();
- }
- }
相关推荐
为了解决这个问题,我们有两种解决方案: 1. 修改`@RequestMapping`注解,指定响应的字符集,如上面`Ajax1`方法所示。 2. 在Spring MVC配置中,通过`InternalResourceViewResolver`类设置默认的字符编码。在XML配置...
Spring MVC 是一个强大的Java ...以上是对Spring MVC面试中常见的一些知识点的详细解答,这些内容涵盖了Spring MVC的基本概念、工作流程、核心组件、与其他框架的区别以及与AJAX的交互等方面,有助于理解和准备面试。
##### 3.4 如何解决POST请求中文乱码问题,GET的又如何处理呢? - **POST请求**:在web.xml中配置过滤器CharacterEncodingFilter来设置字符编码。 - **GET请求**:同样可以通过配置过滤器解决,也可以通过修改Tomcat...
POST请求通过设置Filter解决,GET请求可以通过设置`CharacterEncodingFilter`。 **异常处理**: 可以自定义异常处理器,比如使用@ControllerAdvice和@ExceptionHandler注解。 **获取Request、Session**: 在方法...
**问题八:如何解决POST请求中文乱码问题,GET的又如何处理呢?** - POST请求可以通过配置过滤器解决。 - GET请求需要在客户端编码为UTF-8。 **问题九:SpringMVC的异常处理?** - 使用`@ControllerAdvice`和`@...
如何解决POST请求中文乱码问题,GET的又如何处理呢? - 对于POST请求,可以在web.xml中配置字符编码过滤器,确保所有请求都使用统一的字符编码: ```xml <filter-name>characterEncodingFilter</filter-name> ...