Jsp URL傳參亂碼問題

  Jsp URL傳參亂碼問題

JSP的頁頭:<%@ page contentType="text/html; charset=UTF-8" language="java"  import="java.sql.*"
 errorPage=""%>
<meta http-equiv="Content-Type" content="text/html; charset=SJIS" />
<% request.setCharacterEncoding("UTF-8"); %>

 

Tomcat的server.xml中:    <Connector port="8080" protocol="HTTP/1.1"
               maxThreads="150" connectionTimeout="20000"
               redirectPort="8443"  URIEncoding="UTF-8" useBodyEncodingForURI="true"/>

 

url傳參時:<a href="go?name1=<%=URLEncoder.encode("你好","UTF-8") %>&name2=<%=URLEncoder.encode("前払金 ","UTF-8") %>&name3=abc">go</a>

 

Servlet端獲取值時:String name1 =new String(request.getParameter("name1").getBytes("ISO-8859-1"),"UTF-8");

String name2 =new String(request.getParameter("name2").getBytes("ISO-8859-1"),"UTF-8");

String name3 =new String(request.getParameter("name3").getBytes("ISO-8859-1"),"UTF-8");

 

打印出來的結果:name1:你好      ------中文傳參

                                name2:前払金   ------日文傳參

                                name3:abc      -------英文傳參

利用這種方法,其實只要是utf-8能顯示的字符,無論是什麼語種,都可以傳參顯示,沒有亂碼。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章