package hello;
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class HelloWorld extends HttpServlet
{
public void init() throws ServletException { }
public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException
{
request.setCharacterEncoding("GB2312"); //設置輸入編碼格式
response.setContentType("text/html;charset=GB2312"); //設置輸出編碼格式
PrintWriter out = response.getWriter(); //建議使用PrintWriter輸出
out.println("<hr>");
out.println("Hello World! This is created by Servlet!測試中文!");
out.println("<hr>");
}
public void doPost(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException
{
request.setCharacterEncoding("GB2312"); //設置輸入編碼格式
response.setContentType("text/html;charset=GB2312"); //設置輸出編碼格式
String name = request.getParameter("name");
String id = request.getParameter("id");
if(name==null) name="";
if(id==null) id="";
PrintWriter out = response.getWriter(); //建議使用PrintWriter輸出
out.println("<hr>");
out.println("你傳入的中文字串是:" + name);
out.println("<hr>你輸入的id是:" + id);
out.println("<hr>");
}
public void destroy() { }
}
<%@page contentType="text/html; charset=gb2312"%>
2、爲了讓JSP能正確獲得傳入的參數,我們在JSP源文件頭加入下面一句:
<%request.setCharacterEncoding("GB2312");%>
3、爲了讓JSP編譯器能正確地解碼我們的含有中文字符的JSP文件,我們需要在JSP源文件中指定我們的JSP源文件的編碼格式,具體來說,我們在JSP源文件頭上加入下面的一句即可:
<%@page pageEncoding="GB2312"%>或%@page pageEncoding="GBK"%
<param-name>weblogic.httpd.inputcharset./*</param-name>
<param-value>GBK</param-value>
</context-param>
<servlet>
<jsp-param>
<param-name>keepgenerated</param-name>
<param-value>true</param-value>
</jsp-param>
<jsp-param>
<param-name>compilerSupportsEncoding</param-name>
<param-value>true</param-value>
</jsp-param>
<jsp-param>
<param-name>encoding</param-name>
<param-value>GBK</param-value>
</jsp-param>
</jsp-descriptor>