java中json传输数据乱码问题
短信预约 信息系统项目管理师 报名、考试、查分时间动态提醒
java中json传输数据乱码问题解决方法:(推荐:java视频教程)
对参数先进行ISO-8859-1编码,再以utf-8解码
@RequestMapping(method=RequestMethod.GET)
@ResponseBody
public ResponseEntity searchBorrows(String borrow_name)
throws UnsupportedEncodingException{
//解决乱码问题
System.out.println("编码前===:"+borrow_name);//乱码
String borrowName=new String(borrow_name.getBytes("ISO-8859-1"),"utf-8");
System.out.println("编码后:========="+borrowName);//正常
如果是一般的请求,(非ajax的json**请求乱码**,直接在web.xml中配置中文过滤器) 如下:
encodingFilter
org.springframework.web.filter.CharacterEncodingFilter
encoding
utf-8
encodingFilter
/*
在没有用springmvc时,也可添加该句解决post请求的乱码问题:request.setCharacterEncoding(“UTF-8”);
注: tomcat8已经把get请求的乱码问题解决了,tomcat7还需自己解决
3、ajax的json数据乱码
在项目中有时需要异步请求,可以在springmvc配置文件中,在注解实现的适配器和映射器标签中添加两个转换器即可,可解决对json数据请求和响应的乱码(如果tomcat编码没改,依然存在乱码问题,所有出现乱码是多方面的的)。
以下是配置spinngmvc中带的两个json转换器,实现解决json数据请求和响应乱码问题。
text/plain;charset=UTF-8
text/html;charset=UTF-8
application/json;charset=UTF-8
application/x-www-form-urlencoded;charset=UTF-8
application/json;charset=UTF-8
application/x-www-form-urlencoded;charset=UTF-8
更多java知识请关注java基础教程栏目。
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341