前几天发现使用request.getPragrmber()方法获取中文参数出现乱码,后发现没有添加request.setCharacterEncoding("gb2312")语句,奇怪的是加入该语句后获取的参数仍然是乱码。经过本人数次实验得出request.setCharacterEncoding("gb2312")必须放在页面的头部,可以放在<jsp:useBean class="className" scope="page|request|session|application" />后面,但不能放在<jsp:setProperty property="propertyName" param="paramName" />后面,否则字符转换失效。个人觉得在使用request.setCharacterEncoding("gb2312")之前,不能用request获取参数。
附带说明
request.setCharacterEncoding("gb2312")
此行代码必须写在最前面,如果在此前进行任何request.getPragrmber()方法都会使字符转换失效!
必须要在读取request的getParameter()和 getReader() 方法之前调用 否则字符转换失效
附带说明
request.setCharacterEncoding("gb2312")
此行代码必须写在最前面,如果在此前进行任何request.getPragrmber()方法都会使字符转换失效!
必须要在读取request的getParameter()和 getReader() 方法之前调用 否则字符转换失效