我们都知道J2EE中的Model1开发模式,那么下面就让我们一起简单的进行一下回顾,其主要是体现了一个初步的分层的思想:

jsp层,业务逻辑层,以及我们的数据库层,主要的作用分别为,jsp层负责与用户之间进行交互,业务逻辑层主要是我们的javabean,至于数据库层就是通过javaBean与后台的数据库进行数据交互,这样就可以省去很多的jsp层的逻辑判断,有助于我们开发出容易维护的代码。

javaBean其实就是一种实现了某种标准的简单的java类罢了,不要将其想象的过于复杂。这个标准包含以下四点:

1)此类必须为public公共类

2)成员变量必须是private私有类型

3)必须包含一个没有参数的构造函数

4)使用setXXX()和getXXX()方法来做为我们今后操作的工具

了解了这些,那么就让我们一起来简单的进行代码实现我们的登陆实现吧

下面是项目内的具体的内容

首先我们进行javaBean层的开发:代码如下

package com.po;

//用户类

public class Users {



    private String name;

    private String password;

    

    public Users(){}



    public String getName() {

        return name;

    }



    public void setName(String name) {

        this.name = name;

    }



    public String getPassword() {

        return password;

    }



    public void setPassword(String password) {

        this.password = password;

    }

}

下面是javaBean的业务逻辑类,因为我们是简单的项目实现,所以并没有挂上数据库,所以只是用一个方法进行判断

package com.dao;



import com.po.Users;

//业务逻辑类

public class UserDAO {



    public boolean UserLogin(Users u){

        if("admin".equals(u.getName())&&("123456").equals(u.getPassword())){

            return true;

        }

        return false;

    }

}

JSP实现界面:

1)这里是我们的注册界面

<%@page import="sun.security.action.GetPropertyAction"%>

<%@ page language="java" contentType="text/html; charset=utf-8"

    pageEncoding="utf-8"%>

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8">

<title>Insert title here</title>

</head>

<body>



    <form action="doLogin.jsp" method="GET">

        <br>Name:

        <input type="text" name="name" value="">

        <br>Password:

        <input type="text" name="password" value="">

        <br>

        <br>

        <input type="submit" name="Submit">

        

    </form>

    

</body>

</html>

下面是对注册界面信息的获取,以及jsp界面的跳转操作,此为最核心步骤

<%@ page language="java" contentType="text/html; charset=utf-8"

    pageEncoding="utf-8"%>

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8">

<title>判断登陆信息的jsp界面</title>

</head>

<body>

<jsp:useBean id="loginUser" class="com.po.Users" scope="page"></jsp:useBean>

<jsp:useBean id="userDAO" class="com.dao.UserDAO" scope="page"></jsp:useBean>

<!-- 需要注意的是此处是和表单相关的,所以对property我们就使用自动配对的方式进行数据项的对应-->

<jsp:setProperty property="*" name="loginUser"/>



<%

    if(userDAO.UserLogin(loginUser)){

        session.setAttribute("loginUser", loginUser.getName());

        request.getRequestDispatcher("login_success.jsp").forward(request, response);

    }else{

        response.sendRedirect("login_failure.jsp");

    }

%>    



</body>

</html>

下面是登陆成功界面的jsp代码

<%@ page language="java" contentType="text/html; charset=utf-8"

    pageEncoding="utf-8"%>

<%@page import="java.text.*,java.util.*"%>

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8">

<title>登陆成功</title>

</head>

<body>

欢迎您<font color="GREEN"></font><%= session.getAttribute("name") %><br>

<%

    Date date=new Date();

    SimpleDateFormat sdf=new SimpleDateFormat("yyyy年MM月dd日");

    String currentTime=sdf.format(date);

%>

当前时间:<%= currentTime %><br>

目前您的session是:<%= session.getId() %><br>

<br>登陆成功!



</body>

</html>

接下来就是登录失败索要跳转到的jsp界面的代码实现

<%@page import="javax.xml.crypto.Data"%>

<%@page import="java.text.*,java.util.*"%>

<%@ page language="java" contentType="text/html; charset=utf-8"

    pageEncoding="utf-8"%>

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8">

<title>登录失败</title>

</head>

<body><br>

<%

    Date date=new Date();

    SimpleDateFormat sdf=new SimpleDateFormat("yyyy年MM月dd日");

    String currentTime=sdf.format(date);

%>

当前时间:<%= currentTime %><br>

目前您的session是:<%= session.getId() %><br>

登录失败!请检查你的用户名和密码是否正确。

<a href="Register.jsp"><font color="RED">返回登录</font></a>

</body>

</html>

至此,我们的编码就算结束了,总结一下,我们需要注意的是使用jsp标签语言配合javaBean可以很方便的进行对数据的处理,但是需要对jsp内置对象的有一定的了解

而且还特别注意对scope的使用,其可以有四个不同的用法,另外property同样有四种不同的使用具体的就不在此一一阐述。

下面就让我们一起看一下我们的实现的效果吧:

由于是page,所以我们的用户名为null,你也可以指定其他的scope就可以咯

下面是登录失败界面

好了就是这样了。

采用JSP+JavaBean的方式进行简单的实现用户的网页登陆实例的更多相关文章

  1. awt可视化界面上传数据到mysql,jsp通过jdbc方式查询数据库,并将结果打印在网页上

    今天尝试写一个小demo实现下之前看过的代码,目的了解不同文件的数据访问,掌握如何获取前台数据,如何将数据库的数据在前端页面展示. awt可视化界面可已实现提交数据到数据库,也可查询数据在控制台打印. ...

  2. JSP+JavaBean+Servlet技术(MVC模型)

    一,Servlet开发用户在浏览器中输入一个网址并回车,浏览器会向服务器发送一个HTTP请求.服务器端程序接受这个请求,并对请求进行处理,然后发送一个回应.浏览器收到回应,再把回应的内容显示出来.这种 ...

  3. 《HTML 5网页开发实例具体解释》样章、内容简单介绍、前言

    http://spu.jd.com/1167757597.html http://product.dangdang.com/23484942.html 样章 http://download.csdn. ...

  4. javaweb学习总结(二十二)——基于Servlet+JSP+JavaBean开发模式的用户登录注册

    一.Servlet+JSP+JavaBean开发模式(MVC)介绍 Servlet+JSP+JavaBean模式(MVC)适合开发复杂的web应用,在这种模式下,servlet负责处理用户请求,jsp ...

  5. 利用JSP编程技术实现一个简单的购物车程序

    实验二   JSP编程 一.实验目的1. 掌握JSP指令的使用方法:2. 掌握JSP动作的使用方法:3. 掌握JSP内置对象的使用方法:4. 掌握JavaBean的编程技术及使用方法:5. 掌握JSP ...

  6. 咸鱼入门到放弃11--Servlet+JSP+JavaBean开发模式

    本篇搬运了大佬blog:https://www.cnblogs.com/xdp-gacl/p/3902537.html 一.Servlet+JSP+JavaBean开发模式(MVC)介绍 Servle ...

  7. JavaWeb学习 (二十一)————基于Servlet+JSP+JavaBean开发模式的用户登录注册

    一.Servlet+JSP+JavaBean开发模式(MVC)介绍 Servlet+JSP+JavaBean模式(MVC)适合开发复杂的web应用,在这种模式下,servlet负责处理用户请求,jsp ...

  8. 基于Servlet+JSP+JavaBean开发模式的用户登录注册

    http://www.cnblogs.com/xdp-gacl/p/3902537.html 一.Servlet+JSP+JavaBean开发模式(MVC)介绍 Servlet+JSP+JavaBea ...

  9. javaweb(二十二)——基于Servlet+JSP+JavaBean开发模式的用户登录注册

    一.Servlet+JSP+JavaBean开发模式(MVC)介绍 Servlet+JSP+JavaBean模式(MVC)适合开发复杂的web应用,在这种模式下,servlet负责处理用户请求,jsp ...

随机推荐

  1. Node.js TLS/SSL

    Stability: 3 - Stable 可以使用 require('tls') 来访问这个模块. tls 模块 使用 OpenSSL 来提供传输层(Transport Layer)安全性和(或)安 ...

  2. 全面剖析Redis Cluster原理和应用

    全面剖析Redis Cluster原理和应用 1.Redis Cluster总览 1.1 设计原则和初衷 在官方文档Cluster Spec中,作者详细介绍了Redis集群为什么要设计成现在的样子.最 ...

  3. 热烈庆祝自已厉精13年开发的 DB查询分析器 7.01(最新版本) 在中关村在线本月获得近6000次的下载量

    中国本土程序员马根峰(CSDN专访马根峰:海量数据处理与分析大师的中国本土程序员)推出的个人作品----万能数据库查询分析器,中文版本 DB 查询分析器.英文版本DB Query Analyzer.它 ...

  4. 【Unity Shader】自定义材质面板的小技巧

    写在前面 之前遇到过一些朋友问怎么在材质面板里定义类似于bool这种变量,控制一些代码的执行.我们当然可以写一个C#文件来自定义材质面板,就像Unity为Standard Shader写材质面板一样( ...

  5. iOS学习笔记--Quartz2D

    Quartz 2D是一个二维绘图引擎,同时支持iOS和Mac系统. Quartz 2D能完成的工作: 1. 绘制图形 : 线条\三角形\矩形\圆\弧等 2. 绘制文字 3. 绘制\生成图片(图像) 4 ...

  6. iOS 用RunTime来提升按钮的体验

    用RunTime来提升按钮的体验 载请标明出处:http://blog.csdn.net/sk719887916/article/details/52597388,作者:Ryan 经常处理按钮问题都是 ...

  7. Ajax PHP JavaScript MySQL实现简易的无刷新在线聊天室

    思路 消息显示区 发消息 板块 消息显示 消息发送 优化 显示非重复性的数据 优化显示 加上滚动条 每次都显示最新消息 完整代码 前端代码 数据库表结构 服务器端代码 总结与展望 总结 展望 为更好的 ...

  8. SSH 之 Spring的源码(二)——Bean实例化

    首先来看一段代码,看过上一节的朋友肯定对这段代码并不陌生.这一段代码诠释了Spring加载bean的完整过程,包括读取配置文件,扫描包,加载类,实例化bean,注入bean属性依赖. <span ...

  9. 剑指offer-面试题7:俩个栈实现队列(java)

    详细分析请参照C语言版,这里仅仅给出实现代码,注释很详细,不得不说java各种api用起来真是爽飞了 1 package com.xsf.SordForOffer; 2 3 import java.u ...

  10. 自守数算法----C语言实现

    #include <stdio.h> //自守数算法 //ep : 25 ^ 2 = 625 76 ^ 2 = 5776 9376 ^ 2 = 87909376 /*ep : * 376 ...