1.Jsp页面的汉字问题:需要在JSP中使用page指令告诉客户端汉字的编码方式:
<%@ page contentType="text/html;charset="gb2312"%>
2.表单提交汉字问题:
涉及客户端与服务器的完整交互过程:在客户端和服务器端使用GB2312对汉字编码,而HTTP传输用ISO-8859-1编码。因此,不仅服务器端必须用
<%@ page contentType="text/html;charset=gb2312"%> 指令指示客户端汉字的显示编码,同时在服务器端接收到客户端数据时需要将编码转换为GB2312
后进行处理,方法如下:
其中“name”客户端提交参数名称
<%
name = request.getParameter("name");
name = new String(name.getBytes("ISO-8859-1"));
%>
在实际中会遇到的问题:(常见在提交表单到本页面中)
org.apache.jasper.JasperException: An exception occurred processing JSP page /Student.jsp at line 46
43: String stu_age = request.getParameter("stu_age");
44: String stu_address = request.getParameter("stu_address");
45:
46: stu_name = new String(stu_name.getBytes("ISO-8859-1"));
在46行处报错,解决方法:把46行的代码加载try{}catch(){}块中
tyr{stu_name = new String(stu_name.getBytes("ISO-8859-1"));}catch(Exception e){}