jsp页面中的汉字问题和表单提交汉字问题(***.getBytes("ISO-8859-1")行报错)

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){}

 

 

 

你可能感兴趣的:(java)