跟永哥学MVC:Jsp+Servlet+JavaBean开发后台登录程序

《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

(0)
江山如画的头像江山如画管理团队
JSP+MySQL MVC综合案例:完整的分页查询
上一篇 2018年2月22日 上午9:41
跟永哥学JSP:一个案例三种实现,教你理解Jsp、javabean、Servlet(精)
下一篇 2018年2月22日 上午10:36

99%的人还看了以下文章

  • 上机实战七:EL和JSTL的使用

    建议学时:2 一、使用EL表达式简化javaBean的开发 编写一个用户登录的JavaBean,用户信息包括用户名和密码。 编写user.jsp,使用setProperty设置用户名为125jz,密码为123。 使用EL获取用户名和密码并显示。 二、使用EL实现问卷调查 用户输入昵称、所在城市,并且以多选的方式让用户选择所使用的开发语言,然后使用EL表达式显…

    2018年12月4日
    9.5K0
  • 第3课:C语言程序的构成和书写规则

    先来看一个C语言程序:输入两个正整数,计算并输出两数的和。 程序代码: /*ex1_2.c:求两个正整数的和*/ #include <stdio.h> void main()                         /*主函数*/ {     int a,b,sum;                    /*定义三个整型变量*/    …

    2020年4月5日
    12.6K0
  • python 初学者练手上机实操三

    一、题目:键盘输入三角形的三边,求三角形的周长。 1、新建一个triangle.py文件 2、编写程序。 3、调试程序。 4、排除错误。 二、题目:导入turtle包(import turtle),绘制边长为100的正方形。 要求: 1、新建一个“turtle2.py”文件 2、编写程序。 3、调试程序。 4、排除错误。 三、题目:打印诗“悯农” 要求: 1…

    2023年5月5日
    25.8K0
  • 【Java面试题】15道经典的java面试题(附答案)

    Java是一种可以跨平台的面向对象的程序设计语言。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。今天,中国网页设计给大家分享15道较为经典的Java面试题,希望对你将来在企业面试中能有所帮助! 1、面向对象的特征有哪些方面? 2、访问修饰符…

    2018年8月1日
    2.3K0
  • MySQL存储过程快速入门

    存储过程中的参数 MySQL存储过程的参数用在存储过程的定义,共有三种参数类型,IN,OUT,INOUT,形式如: CREATE PROCEDURE([[IN |OUT |INOUT ] 参数名 数据类形…]) IN 输入参数:表示该参数的值必须在调用存储过程时指定,在存储过程中修改该参数的值不能被返回,为默认值 OUT 输出参数:该值可在存储过…

    2018年12月20日
    3.6K0
  • 一文让你快速理解欠拟合和过拟合,以及解决欠拟合和过拟合的方法?(精)

    前面分享过《深度学习中的激活函数、防止过拟合的方法》、《最清楚的过拟合(Overfitting)、欠拟合讲解》,今天给125建站网再给大家梳理一下,让你快速理解欠拟合和过拟合,以及解决欠拟合和过拟合的方法? 欠拟合与过拟合 欠拟合是指模型在训练集、验证集和测试集上均表现不佳的情况; 过拟合是指模型在训练集上表现很好,到了验证和测试阶段就大不如意了,即模型的泛…

    2023年1月16日
    4.4K0

发表回复

登录后才能评论