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

  • 网络编程 ASP.NET(C#)学习笔记三:数据类型-引用类型

    C#中数据类型主要分为两大类:值类型和引用类型。本节课主要讲解引用类型的分类及C#内置引用类型object 和string。 引用类型包括:类(class、object、string)、接口(interface)、数组(array)、代理(delegate)类包括:用户自定义的类、object基类、字符串类,其中object 、string为C#内置引用类型…

    2018年1月30日
    9.5K0
  • 通用数据库操作类及员工信息查询实例

    package com.common; import java.sql.*; public class DataBaseConn { public Connection conn = null; public void createConn(){ String url = “jdbc:mysql://localhost:3306/employeeDb”; S…

    2019年11月27日
    20.0K0
  • 精!如何在IDEA中导入myeclipse项目、配置并运行(实例演示)

    精!如何在IDEA中导入myeclipse项目、配置并运行(实例演示)精!如何在IDEA中导入myeclipse项目、配置并运行(实例演示)精!如何在IDEA中导入myeclipse项目、配置并运行(实例演示)精!如何在IDEA中导入myeclipse项目、配置并运行(实例演示)

    125建站网站长原来开发的myeclipse项目直接在IDEA打开发现会有很多问题,根据解决过程,写出此文章供大家参考! 1.首先打开IDEA工具,选择导入项目,然后在弹出的窗口中选择要打开的myeclipse文件,然后点击确定。如图所示 2.选择Eclipse,然后一直下一步 3.正常我们SDK这里都配置好了,直接选择就好,然后完成项目的导入 4.导入的完…

    2023年2月3日 编程开发
    8.8K0
  • 第3课:C语言程序的构成和书写规则

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

    2020年4月5日
    12.8K0
  • 输入python显示不是内部命令的原因及解决方法

    输入python显示不是内部命令的原因及解决方法输入python显示不是内部命令的原因及解决方法输入python显示不是内部命令的原因及解决方法输入python显示不是内部命令的原因及解决方法

    问题原因:没有将python的安装路径添加到环境变量中。 解决方法: 首先在桌面上右键点击“此电脑”,选择“属性”,弹出系统界面选择“高级系统设置”,进入系统属性界面后在“高级”选项中选中“环境变量”。 然后在“系统变量”中找到变量Path,双击Path变量进入编辑界面。 接着在编辑环境变量对话框中点击“新建”,添加Python的安装路径,之后一直点确定即可…

    2023年5月18日 编程开发
    6.4K1
  • 精!HTML5调用手机拍照实现图片上传服务器,并将图片地址存进数据库(下)

    这篇文章主要为大家详细介绍如何使用HTML5利用摄像头拍照实现上传功能。 上一篇只讲到前台操作,这篇专门涉及到Java后台处理,前台通过Ajax提交将Base64编码过的图片数据信息传到Java后台,然后Java这边进行接收处理,通过对图片数据信息进行Base64解码,之后使用流将图片数据信息上传至服务器进行保存,并且将图片的路径地址存进数据库。 大家可以点…

    2022年8月11日
    8.5K0

发表回复

登录后才能评论