跟永哥学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%的人还看了以下文章

  • JSP分页思想2—核心代码

    一、通过order by id desc limit ?,? 控制当前页面显示的记录 显示第几页,共几页,上一页 下一页 <% int PageSize=2; //一页显示的记录数 int RowCount=0; //记录总数 int PageCount=0; //总页数 int intPage; //待显示页码 int i;//循环变量 String…

    2019年10月30日
    17.9K0
  • python 集合的使用,案例详解

    集合的定义: 1.不同元素组成 2.无序 3.集合中的元素必须是不可变类型 创建集合 s = {1,2,3,4,5,6,7,8} >>> set_test = set(‘hello’) >>> set_test {‘h’, ‘l’, ‘e’, ‘o’}  # 由此可见集合中的元素不可重复,都是不同的 集合运算 集合之间也可…

    2020年1月22日
    17.4K0
  • GitHub是什么?GitHube有什么用?GitHub学习入门(精)

    GitHub是什么? gitHub是一个面向开源及私有软件项目的托管平台,因为只支持git 作为唯一的版本库格式进行托管,故名gitHub。 Git 是由 Linux 之父 Linus Tovalds 为了更好地管理linux内核开发而创立的分布式版本控制/软件配置管理软件。  好吧,我相信看到这里你已经晕了,这也是我一开始看那些所谓经典教程的感受。 简单来…

    2018年8月24日
    9.4K0
  • MySql数据库Timestamp、time、datetime 区别及使用详解

    对于数据库来说,有多种日期时间字段可供选择,如 timestamp 和 datetime 。 不仅新手,包括一些有经验的程序员还是比较迷茫,究竟我该用哪种类型来存储日期时间呢? 一个完整的日期格式如下:YYYY-MM-DD HH:MM:SS[.fraction],它可分为两部分:date部分和time部分,其中,date部分对应格式中的“YYYY-MM-DD…

    编程开发 2018年5月2日
    7.8K1
  • 手机上可以python编程吗,手机如何开发python

    手机上可以python编程吗,手机如何开发python手机上可以python编程吗,手机如何开发python手机上可以python编程吗,手机如何开发python手机上可以python编程吗,手机如何开发python

    想在手机上编写python代码? python语言应用很广泛,很多小伙伴想利用空闲时间学习Python,但是有时候身边没有电脑,今天就给大家分享两种手机编写运行python的方法,让你可以直接在自己的手机上做python开发学习。 一、直接在线编写运行(免安装) 手机通过浏览器打开 https://c.runoob.com/compile/9/ 推荐:★★★…

    2022年3月16日 编程开发
    18.7K0
  • java两个窗体Form1和Form2之间怎么传递参数?

    开发java图形界面程序时,会遇到一个窗体向另外一个窗体传递参数的问题,好多初学者很是迷茫。中国网页设计特别编写了一个简单程序用于演示两个窗体之间如何传递参数,代码如下:Form1.java代码: import java.awt.Container; import java.awt.FlowLayout; import java.awt.event.Acti…

    2021年11月25日
    3.7K0

发表回复

登录后才能评论