您现在的位置是:首页 >

jsp页面乱码 jsp中文页面乱码与传参乱码

火烧 2021-06-01 13:31:12 1055
j 中文页面乱码与传参乱码   页面乱码  这种乱码的原因是应为没有在页面里指定使用的字符集编码 解决方法 只要在页面开始地方用下面代码指定字符集编码即可 代码如下    lt %@ age co t

jsp中文页面乱码与传参乱码  

  页面乱码

  这种乱码的原因是应为没有在页面里指定使用的字符集编码 解决方法 只要在页面开始地方用下面代码指定字符集编码即可

代码如下  

  <%@ page contentType="text/; charset=gb " language="java" import="java sql *" errorPage="err jsp" %>

  数据库乱码

  这种乱码会使你插入数据库的中文变成乱码 或者读出显示时也是乱码

  解决方法如下

  在数据库连接字符串中加入编码字符集

代码如下   String Url="jdbc:mysql://localhost/digitgulf?user=root&password=root&useUnicode=true&characterEncoding=GB ";

  并在页面中使用如下代码

代码如下   response setContentType("text/;charset=gb "); request setCharacterEncoding("gb ");

  URL传值乱码

  方法一

   在b jsp中把pageEncoding="GB "改为pageEncoding="ISO "

  虽然这样b jsp页面显示的内容还是乱码 但是不是那种“??????”的乱码 而是一些特殊字符

   然后在浏览器中查看菜单中修改成GB 的编码 这时乱码就显示中文了

   但是这种方法是不可行的

  方法二

   在b jsp中把

代码如下   String name=request getParameter("name");

  修改为

代码如下   String name=new String(request getParameter("name") getBytes("ISO ") "GB ");

   这时再在页面上显示 则就是中文了

  方法三:

jsp页面乱码 jsp中文页面乱码与传参乱码

  在请求页面的请求参数需要用encodeURI进行转码 然后在接收请求的页面需要进行字符集转换 本例中的请求和接收页面的字符集都是UTF :

   请求的JSP页面用JavaScript的encodeURI()方法将参数转码

代码如下   function toView(param){ var encodeparam = encodeURI(param) ; window location href="/naias/advAna_form do?method=showDetail&title="+encodeparam ; }

   在跳转的Action中进行字符集转换 cn net

代码如下   public ActionForward excute(ActionMapping mapping ActionForm form HttpServletRequest request HttpServletResponse response){ String title= request getParameter("title") title= new String( title getBytes("iso ") "UTF ") System out println(title) }

  为编码为UTF 的JSP页面传参 对于中文乱码的解决分为两种情况

   通过GET方式传参 通过

代码如下   new String(request getParameter("") getBytes("ISO ") "UTF ");

  的方式转换为需要的编码 如UTF 等

代码如下   request setCharacterEncoding("UTF "); lishixinzhi/Article/program/Java/JSP/201311/20214  
永远跟党走
  • 如果你觉得本站很棒,可以通过扫码支付打赏哦!

    • 微信收款码
    • 支付宝收款码