《Jsp+Servlet+JavaBean开发后台登录程序》实现方法二
两种实现方法的登录页面(login.html)、模型(JavaBean)、配置(web.xml)完全相同,不同之处在于servlet中是用的重定向还是请求转发。
loginCheck.java(servlet )代码:
public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html;charset=UTF-8"); PrintWriter out = response.getWriter(); String name=request.getParameter("name"); //获取视图里的name String pas=request.getParameter("pas"); //获取视图里的password login_model newModel=new login_model();//调用模型 newModel.setName(name); newModel.setPas(pas); String message; if(newModel.login()) { message="登录成功!"; } else { message="登录失败!"; } String URL=request.getContextPath()+"/view.jsp?message="+message; URL=new String(URL.getBytes("UTF-8"),"ISO8859_1"); response.sendRedirect(URL); }
view.jsp
<% out.print(new String(request.getParameter("message").getBytes("ISO8859_1"),"UTF-8")); %>
知识点:重定向和转发的区别
request.getRequestDispatcher("new.jsp").forward(request, response); //转发到new.jsp response.sendRedirect("new.jsp"); //重定向到new.jsp
1.当使用转发时,JSP容器将使用一个内部方法来调用目标页面,新的页面继续处理同一个请求,而浏览器不知道这个过程, URL保持不变。
2.重定向方式是第一个页面通知浏览器发送一个新的页面请求,浏览器中所显示的URL会变成新页面的URL。
3.重定向的速度比转发慢,因为浏览器还得发出一个新的请求。同时,由于重定向方式产生了一个新的请求,所以经过一次重定向后,request内的对象将无法使用。
125jz网原创文章。发布者:江山如画,转载请注明出处:http://www.125jz.com/1385.html