做了一个登录页面,在表单上填写用户名密码,然后使用servlet获取表单的内容,与数据库进行比较,比较正确进行页面的跳转。在本地测试的时候一切运行正常。放到服务器上就运行不了。具体问题就是无论输入正确的用户名密码还是错误的,网页都显示正在连接,然后就没有然后了…… 求助各位,这大约是哪方面的问题?
补充:网页是用NetBeans开发的,servlet的配置文件都是自动生成的,会是这方面的问题?
附上servlet中的dopost方法代码
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {request.setCharacterEncoding("UTF-8");
response.setCharacterEncoding("UTF-8");
String name=request.getParameter("name");
String pwd=request.getParameter("pwd");
MessageDBcon con=new MessageDBcon();
String sql="select * from manager where name='"+name+"' and pwd='"+pwd+"'";
ResultSet rs=con.query(sql);
int flag=0;
try{
if(rs.next()){
flag=1;//验证成功
HttpSession session=request.getSession();
session.setAttribute("manager", name);
//request.getRequestDispatcher("bg_management.jsp").forward(request, response);
JOptionPane.showMessageDialog(null, "登陆成功!");
request.getRequestDispatcher("background_Main.html").forward(request, response);
}
else {
flag=0;//验证不成功
JOptionPane.showMessageDialog(null, "您输入的管理员用户名或密码错误");
// request.setAttribute("error","您输入的管理员用户名或密码错误");
request.getRequestDispatcher("index.jsp").forward(request, response);
}
}
catch (SQLException ex){
flag=0;
}
}
------解决思路----------------------
表单提交 默认get 你看看你的表单提交方式
------解决思路----------------------
看看是不是转发路劲问题。通常来说request.getRequestDispatcher("index.jsp").forward(request, response);是有加 “ / ”。如果还不行,就试试相对路劲。request.getContextPath.
request.getRequestDispatcher(request.getContextPath() + "/index.jsp").forward(request, response);
------解决思路----------------------
action改为${pageContext.request.contextPath}/servlet/loginServlet