采用JSP+JavaBean的方式进行简单的实现用户的网页登陆实例
我们都知道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的方式进行简单的实现用户的网页登陆实例的更多相关文章
- awt可视化界面上传数据到mysql,jsp通过jdbc方式查询数据库,并将结果打印在网页上
今天尝试写一个小demo实现下之前看过的代码,目的了解不同文件的数据访问,掌握如何获取前台数据,如何将数据库的数据在前端页面展示. awt可视化界面可已实现提交数据到数据库,也可查询数据在控制台打印. ...
- JSP+JavaBean+Servlet技术(MVC模型)
一,Servlet开发用户在浏览器中输入一个网址并回车,浏览器会向服务器发送一个HTTP请求.服务器端程序接受这个请求,并对请求进行处理,然后发送一个回应.浏览器收到回应,再把回应的内容显示出来.这种 ...
- 《HTML 5网页开发实例具体解释》样章、内容简单介绍、前言
http://spu.jd.com/1167757597.html http://product.dangdang.com/23484942.html 样章 http://download.csdn. ...
- javaweb学习总结(二十二)——基于Servlet+JSP+JavaBean开发模式的用户登录注册
一.Servlet+JSP+JavaBean开发模式(MVC)介绍 Servlet+JSP+JavaBean模式(MVC)适合开发复杂的web应用,在这种模式下,servlet负责处理用户请求,jsp ...
- 利用JSP编程技术实现一个简单的购物车程序
实验二 JSP编程 一.实验目的1. 掌握JSP指令的使用方法:2. 掌握JSP动作的使用方法:3. 掌握JSP内置对象的使用方法:4. 掌握JavaBean的编程技术及使用方法:5. 掌握JSP ...
- 咸鱼入门到放弃11--Servlet+JSP+JavaBean开发模式
本篇搬运了大佬blog:https://www.cnblogs.com/xdp-gacl/p/3902537.html 一.Servlet+JSP+JavaBean开发模式(MVC)介绍 Servle ...
- JavaWeb学习 (二十一)————基于Servlet+JSP+JavaBean开发模式的用户登录注册
一.Servlet+JSP+JavaBean开发模式(MVC)介绍 Servlet+JSP+JavaBean模式(MVC)适合开发复杂的web应用,在这种模式下,servlet负责处理用户请求,jsp ...
- 基于Servlet+JSP+JavaBean开发模式的用户登录注册
http://www.cnblogs.com/xdp-gacl/p/3902537.html 一.Servlet+JSP+JavaBean开发模式(MVC)介绍 Servlet+JSP+JavaBea ...
- javaweb(二十二)——基于Servlet+JSP+JavaBean开发模式的用户登录注册
一.Servlet+JSP+JavaBean开发模式(MVC)介绍 Servlet+JSP+JavaBean模式(MVC)适合开发复杂的web应用,在这种模式下,servlet负责处理用户请求,jsp ...
随机推荐
- springMVC源码分析--HandlerMethodArgumentResolver参数解析器(一)
HandlerMethodArgumentResolver是用来为处理器解析参数的,主要用在HandlerMethod中,每个Resolver对应一种类型的参数,其实现类特别的多. HandlerMe ...
- POSIX 消息队列相关问题
一.查看和删除消息队列要想看到创建的posix消息队列,需要在root用户下执行以下操作:# mkdir /dev/mqueue# mount -t mqueue none /dev/mqueue删除 ...
- Unity使用UGUI进行VR游戏的界面开发
原文链接:http://gad.qq.com/article/detail/7181505 本文首发腾讯GAD开发者平台,未经允许,不得转载 我不知道有多少同学是跟我一样,在开发VR游戏中,是使用的面 ...
- Android5.0特性阴影效果和裁剪
阴影和剪裁 View的z属性 Material Design建议为了凸显布局的层次,建议使用阴影效果,并且Android L为了简化大家的工作,对View进行了扩展,能使大家非常方便的创建阴影效果: ...
- An internal error occurred during: "Retrieving archetypes:". GC overhead limit exceeded
An internal error occurred during: "Retrieving archetypes:".GC overhead limit exceeded 异常, ...
- CRM 2013 Script Loading Deep Dive
关于CRM中脚本的加载次序梳理的很不错,可以看看 https://community.dynamics.com/crm/b/develop1/archive/2013/11/02/crm-2013-s ...
- [sed]命令笔记
sed是linux下经常用到的工具,英文全名为stream editor. sed 在windows上的实现可以在这里找到 http://gnuwin32.sourceforge.net/packag ...
- activiti processEngineLifecycleListener使用
1.1.1. 前言 实际开发中,有需求如下: 第一:项目启动部署的时候,我们需要监控activiti 工作流引擎是否真正的已经实例化启动了,这里说的是工作流引擎的启动,不是流程实例的启动,对此要特别说 ...
- linux添加环境变量(path)
分为三步 1.sudo vim /etc/profile 2.export PATH="全路径:$PATH" 3.source /etc/profile 我的微信二维码如下,欢迎交 ...
- 1.httpClient和ScrollView
1 在服务器端使用sqllite编写数据库 常见命令是:sqlite3 tank.db 进入之后创建表: create table tscore ( id integer primary key au ...