为什么我在完成注册功能的时候,它把数据插入数据库了,但是它不弹出对话框说“注册成功”,而是会弹出一个迅雷下载的窗口?希望大家帮帮忙!!以下是注册时的一个servlet处理类
package com.handson.control.servlet;import java.io.IOException;
import java.io.PrintWriter;import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;import com.handson.model.dao.UserDAO;
import com.handson.model.vo.UserVO;public class RegisterServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
public void destroy() {
super.destroy();
} public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException { } public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String username=request.getParameter("username");
String password=request.getParameter("password");
String sex=request.getParameter("sex");
int usersex=0;
if(sex.equals("male")){
usersex=1;

}else if(sex.equals("female")){
usersex=0;
}
String email=request.getParameter("email");
String userdate=request.getParameter("userdate");
PrintWriter out = response.getWriter();
UserVO uservo=new UserVO();
uservo.setUser_name(username);
uservo.setUser_password(password);
uservo.setUser_sex(usersex);
uservo.setUser_mail(email);
uservo.setUser_date(userdate);
UserDAO udao=new UserDAO();
int nameflag=udao.checkUserName(uservo);

if (nameflag == 1) { out.println("<script language='javascript'>alert('用户名已被注册');window.location='register.jsp'</script>");
} else {
int userflag = udao.insertUser(uservo);
if (userflag == 1) {
out.println("<script language='javascript'>alert('注册成功');window.location='IndexServlet'</script>");
}
 else {
out.println("<script language='javascript'>alert('注册失败');window.location='register.jsp'</script>");
}
}
out.flush();
out.close();
}
}

解决方案 »

  1.   

    if (userflag == 1) { 
    out.println(" <script language='javascript'>alert('注册成功');window.location='IndexServlet' </script>");
    先把window.location='IndexServlet' </script>");去掉试试 能否弹出   注册成功  的提示信息,在看下你的 IndexServlet里面写了啥?
      

  2.   

    以前我也遇到过同样的问题,doPost()方法里加了一个
    response.setContentType("text/html;charset=gb2312");
    问题就解决了。因为你没有告诉servlet要以什么格式输出。