jsp中文顯示亂碼的解決辦法

表單提交時,獲取輸入的中文參數時,瀏覽器會出現中文亂碼,這時在表單響應的jsp文件中加入request.setCharacterEncoding("utf-8");便可解決。相關代碼以下:html


附:表單提交的jsp文件內容:java

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>瀏覽器

<%jsp

String path = request.getContextPath();post

String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";測試

%>ui


<html>spa

  <head>orm

    <META http-equiv="Content-Type" content="text/html; charset=utf-8">htm

    <title>測試JSP內置對象</title>

  </head>

  

  <body>

 <form action="internalObjResult.jsp" method="post">

  uname:<input type="text" name="uname"><br/>

  pwd:<input type="password" name="pwd"><br/>

  hobbies:<input type="text" name="hobby">&nbsp;

  <input type="text" name="hobby"><br/>

  submit:<input type="submit" name="submit"/>

 </form>

  </body>

</html>

表單響應的jsp內容以下:

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>

<%

String path = request.getContextPath();

String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";

%>


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>

  <head>

  <META http-equiv="Content-Type" content="text/html; charset=utf-8">

    <title>My JSP 'internalObjResult.jsp' starting page</title>

  </head>

  

  <body>

  <%request.setCharacterEncoding("utf-8");//不加此句,瀏覽器端中文會顯示亂碼

  String uname=request.getParameter("uname");

  out.println(uname+"<br>");

  Enumeration<?> e=request.getParameterNames();//不加<?>會有警告

  while(e.hasMoreElements()){

  out.println(e.nextElement()+"<br>");

  }

  out.println("全部values:"+"<br>");

  String[] s=request.getParameterValues("hobby");

  for(String temp:s){

  out.println(temp+"<br>");

  }

  %>

  

  </body>

</html>

相關文章
相關標籤/搜索