刚刚因为网页前台需要用ajax来获取后台的数据,后台传给前台的数据是int类型的,放在了response.getWriter().write()中,并没有错,但是前台中获得的数字是乱码的,在ie浏览器中获取到的是一个小方块,火狐浏览器获得的是个小方框里一串数字。
从网上查了好像是后台编码的问题,然后后台添加了过滤器
request.setCharacterEncoding("UTF-8");
response.setCharacterEncoding("UTF-8");
然而并没有什么用,看还有那个用response.setContentType("text/html;charset=utf-8"),然而也并没有用。
解决办法:
int result=1;
response.getWriter().write(result+"");
把int类型转换成了String类型,这样就成功解决了这个问题。
具体的原理不是很清楚,好像是write()内部会自动进行类型转换的问题,特此记录一下。