package com.qiangyaqiang;import java.io.IOException;
import java.io.PrintWriter;import javax.jms.Session;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;import com.jdbc.lianjieshujuku;
public class login extends HttpServlet { /**
 * Constructor of the object.
 */
public login() {
super();
} /**
 * Destruction of the servlet. <br>
 */
public void destroy() {
super.destroy(); // Just puts "destroy" string in log
// Put your code here
} /**
 * The doGet method of the servlet. <br>
 *
 * This method is called when a form has its tag value method equals to get.
 * 
 * @param request the request send by the client to the server
 * @param response the response send by the server to the client
 * @throws ServletException if an error occurred
 * @throws IOException if an error occurred
 */
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException { response.setContentType("text/html");
request.setCharacterEncoding("utf-8");
PrintWriter out = response.getWriter();
out
.println("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\">");
out.println("<HTML>");
out.println("  <HEAD><TITLE>A Servlet</TITLE></HEAD>");
out.println("  <BODY>");
out.print("    This is ");
out.print(this.getClass());
out.println(", using the GET method");
out.println("  </BODY>");
out.println("</HTML>");
out.flush();
out.close();
} /**
 * The doPost method of the servlet. <br>
 *
 * This method is called when a form has its tag value method equals to post.
 * 
 * @param request the request send by the client to the server
 * @param response the response send by the server to the client
 * @throws ServletException if an error occurred
 * @throws IOException if an error occurred
 */
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException { response.setContentType("text/html");
request.setCharacterEncoding("utf-8");
PrintWriter out = response.getWriter();
String name=request.getParameter("textfield");
System.out.println(name);

String psw=request.getParameter("textfield2");

lianjieshujuku qyq=new lianjieshujuku();
qyq.chaxun(name);

String pswtemp=qyq.getPsw();
int usertype=qyq.getUsertapy();
//System.out.println(usertype);
request.getSession().setAttribute("name", name);
request.getSession().setAttribute("usertype", usertype);
if(pswtemp.equals(psw)){
// response.sendRedirect("");
//System.out.println(usertype);
switch(usertype){
case 1:{
request.getRequestDispatcher("../zjdljm2.jsp").forward(request, response);


}
break;
case 2:
{
request.getRequestDispatcher("../zzdl.jsp").forward(request, response);


}
//response.sendRedirect("../zzdl.jsp");
break;
case 3: {
request.getRequestDispatcher("../glydljm.jsp").forward(request, response);


}
break;
}
}
// System.out.println("login ok");
else
response.sendRedirect("../indexerror.jsp");
// System.out.println("login fail");
out
.println("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\">");
out.println("<HTML>");
out.println("  <HEAD><TITLE>A Servlet</TITLE></HEAD>");
out.println("  <BODY>");
out.print("    This is ");
out.print(this.getClass());
out.println(", using the POST method");
out.println("  </BODY>");
out.println("</HTML>");
out.flush();
out.close();
} /**
 * Initialization of the servlet. <br>
 *
 * @throws ServletException if an error occurs
 */
public void init() throws ServletException {
// Put your code here
}}
这是一个后台程序,已经过跳转网页就中文部分乱码,超链接过去的都是好的,谁帮我看下,先谢谢了

解决方案 »

  1.   

    response.setContentType("text/html");
    request.setCharacterEncoding("utf-8");
    你jsp页面里的是什么编码?utf-8?
      

  2.   

    在servlet里也要设置编码:request.setCharacterEncoding("utf-8");
      

  3.   

    我的doget和dopost里面都写了啊
      

  4.   

    request和response都设置一下utf-8就好了,lz可以试一试 我的都是这么解决的
      

  5.   

    response.setContentType( "text/html;charset=UTF-8 "); 
    好像是这样写的吧
      

  6.   

    使用tomcat启动的web,如果中文名称出现乱码 ,需要修改tomcat\conf\server.xml,修改内容如下:
        <Connector port="9080" protocol="HTTP/1.1" 
                   connectionTimeout="20000" 
                   redirectPort="8443" URIEncoding="GBK"/>
        在<Connector>加入属性 URIEncoding="GBK"
       然后重启,重新修改即可