JAVA+JSP+HTML+数据库 实现网页的登录和注册(附详细代码)
JAVA+JSP+HTML+数据库 实现网页的登录和注册(附详细代码)
受疫情的影响自己在家鼓捣点了东西,也是项目中的一部分,实现了网页的登录和注册,在大佬面前不可一提,本人只是分享自己的实现过程,希望对看到的你有所帮助。
项目的层次图:
代码:
login.jsp(登录界面实现)
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Wopop</title>
<link href="./Wopop_files/style_log.css" rel="stylesheet" type="text/css">
<link rel="stylesheet" type="text/css" href="./Wopop_files/style.css">
<link rel="stylesheet" type="text/css" href="./Wopop_files/userpanel.css">
<link rel="stylesheet" type="text/css" href="./Wopop_files/jquery.ui.all.css">
<style type="text/css">
<!--
.STYLE1 {
font-size: 24px;
color: #000000;
font-weight: bold;
}
.p_left{display:inline;}
.p_right{display:inline;}
-->
</style>
</head>
<body class="login" mycollectionplug="bind">
<div class="login_m">
<div class="login_logo STYLE1">系统登录</div>
<div class="login_boder">
<div class="login_padding" id="login_model">
<form action="loginpost.jsp" method="post">
<%
Object error=session.getAttribute("error");
if(error!=null)
{
%>
<span style="color:red"><%=error %></span>
<%} %>
<h2>账号</h2>
<label>
<input type="text" id="username" name="username" class="txt_input txt_input2" onfocus="if (value =='Your name'){value =''}" onblur="if (value ==''){value='Your name'}" value="Your name">
</label>
<h2>密码</h2>
<label>
<input type="password" name="userpwd" id="userpwd" class="txt_input" onfocus="if (value =='******'){value =''}" onblur="if (value ==''){value='******'}" value="******">
</label>
<p class="forgot p_left"><a id="iforget" href="register.jsp">注册账号/</a></p>
<p class="forgot p_right"><a id="iforget1" href="javascript:void(0);">忘记密码?</a></p>
<div class="rem_sub">
<div class="rem_sub_l">
<input type="checkbox" name="checkbox" id="save_me">
<label for="checkbox">记住密码</label>
</div>
<label>
<input type="submit" class="sub_button" name="button" id="button" value="登录" style="opacity: 0.7;">
</label>
</div>
</div>
</form>
<div id="forget_model" class="login_padding" style="display:none">
<br>
<h1>Forgot password</h1>
<br>
<div class="forget_model_h2">(Please enter your registered email below and the system will automatically reset users’ password and send it to user’s registered email address.)</div>
<label>
<input type="text" id="usrmail" class="txt_input txt_input2">
</label>
<div class="rem_sub">
<div class="rem_sub_l">
</div>
<label>
<input type="submit" class="sub_buttons" name="button" id="Retrievenow" value="Retrieve now" style="opacity: 0.7;">
</label>
</div>
</div>
<!--login_padding Sign up end-->
</div><!--login_boder end-->
</div><!--login_m end-->
</body></html>
loginpost.jsp(连接数据库,验证密码和账号的正确性)
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ page import="java.sql.*" %>
<%@ page import="P1.*" %>
<!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>
<%
String username=request.getParameter("username");
String password=request.getParameter("userpwd");
try {
// 加载数据库驱动,注册到驱动管理器
Class.forName("com.mysql.cj.jdbc.Driver");
// 数据库连接字符串
String url = "jdbc:mysql://localhost:3306/abc?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useSSL=false&serverTimezone=UTC&allowPublicKeyRetrieval=true";
// 数据库用户名
String usename = "root";
// 数据库密码
String psw = "123456";
// 创建Connection连接
Connection conn = DriverManager.getConnection(url,usename,psw);
// 判断 数据库连接是否为空
if(conn != null){
String sql="select * from login where account='"+username+"' and password='"+ password + "'";
Statement stmt = conn.createStatement();
ResultSet rs=stmt.executeQuery(sql);
if(rs.next()){
response.sendRedirect("main.jsp");
}else{
session.setAttribute("error", "账号或密码错误,请重新输入");
response.sendRedirect("login.jsp");
}
// 输出连接信息
//out.println("数据库连接成功!");
// 关闭数据库连接
conn.close();
}else{
// 输出连接信息
out.println("数据库连接失败!");
}
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}
%>
</body>
</html>
register.jsp(注册界面实现)
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<!-- Head -->
<head>
<title>注册表单</title>
<!-- Meta-Tags -->
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<script type="application/x-javascript"> addEventListener("load", function() { setTimeout(hideURLbar, 0); }, false); function hideURLbar(){ window.scrollTo(0,1); } </script>
<!-- //Meta-Tags -->
<!-- Style --> <link rel="stylesheet" href="css/style.css" type="text/css" media="all">
</head>
<!-- //Head -->
<!-- Body -->
<body>
<h1>注册界面</h1>
<div class="container w3layouts agileits">
<div class="register w3layouts agileits">
<h2>注 册</h2>
<form action="registerpost.jsp" method="post">
<%
Object error=session.getAttribute("error");
if(error!=null)
{
%>
<span style="color:red"><%=error %></span>
<%} %>
<label><input type="text" name="Name" placeholder="用户名" required=""></label>
<input type="text" name="Email" placeholder="邮箱" required="">
<input type="password" name="Password" placeholder="密码" required="">
<input type="text" name="Phone Number" placeholder="手机号码" required="">
<div class="send-button w3layouts agileits">
<form>
<input type="submit" value="注册">
</form>
</div>
</form>
<div class="clear"></div>
</div>
<div class="clear"></div>
</div>
</body>
<!-- //Body -->
</html>
registerpost.jsp(注册账号密码实现存入数据库)
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ page import="java.sql.*" %>
<%@ page import="P1.*" %>
<!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>
<%
request.setCharacterEncoding("UTF-8");
String name=request.getParameter("Name");
String email=request.getParameter("Email");
String password=request.getParameter("Password");
String phonenum=request.getParameter("Phone Number");
Class.forName("com.mysql.jdbc.Driver");
String url = "jdbc:mysql://localhost:3306/abc?useUnicode=true&characterEncoding=utf-8&rewriteBatchedStatements=true&useSSL=false&serverTimezone=UTC&allowPublicKeyRetrieval=true";
String usename = "root";
String psw= "123456";
Connection conn = DriverManager.getConnection(url,usename,psw);//得到连接
out.println("<script language='javascript'>alert('数据库连接成功!');</script>");
PreparedStatement pStmt = conn.prepareStatement("select * from login where account = '" + name + "'");
ResultSet rs = pStmt.executeQuery();
if(rs.next()){
session.setAttribute("error", "该用户账号已存在,请重新输入");
response.sendRedirect("register.jsp");
}
else{
if(phonenum.length()>11){
session.setAttribute("error", "电话号码不合法,请重新注册");
response.sendRedirect("register.jsp");
}else{
PreparedStatement tmt = conn.prepareStatement("Insert into login values('" +name+ "','" +password+ "','" +email+ "','" +phonenum+ "')");
int rst = tmt.executeUpdate();
if (rst != 0){
out.println("<script language='javascript'>alert('用户注册成功!请登录');window.location.href='Login.jsp';</script>");
response.sendRedirect("login.jsp");
}
else{
session.setAttribute("error", "用户注册失败");
response.sendRedirect("register.jsp");
}
}
}
%>
</body>
</html>
main.jsp在登录成功的时候跳转
代码仅供参考
觉得有用的小伙伴点个赞吧
智能推荐
Java连接Mysql数据库,实现初始登录注册
(JDBC学习)Java连接Mysql数据库,实现初始登录注册 作者想说的话 代码要求描述 涉及类的主要作用描述 #JDBCUtils类 #JDBC.properties文件 #jdbc_test类 运行结果 作者想说的话 本篇作品为自己为了学业所做作业,若有问题,可私聊讨论。如果有帮助到你,一起加油。 代码要求描述 登录要求: 1、要求实现Java连接Mysql数据库 2、通过查询指定用户名、密...
Android连接sqlite数据库实现登录与注册
layout: javaBean UsrDBHelper类 Dao类 Activity Login类 Register类...
nodejs自学之旅(3)—— 使用模型对象操作数据库实现简单的注册和登录
上一章的模型创建完之后还没使用过,这一章来简单说明如何通过操作对象的方法操作数据库。 先随便搞个页面出来,样式什么的无所谓 给注册和登录按钮,绑定具体的ajax事件 之前在划分模块的时候,分了三个模块,分别是 所以有关接口的,都会在接口文件(api.js)里面管理代码,首先是统一接口的返回数据格式,一般都是json格式的数据,如下所示,在这里使用了rout...
ASP.NET连接数据库实现登录和注册
连接数据库 在连接之前,我们先在数据库中建立数据表以及待会要用到的数据 创建连接数据库的类 右击项目->添加新项 选择类 点击是 创建好的类如下 连接数据库呢我们肯定需要用到一些关于数据库的类。 首先我们要引入命名空间using System.Data.SqlClient; 然后,网站连接数据库并且操作一共需要三步:连接、准备执行、执行 我们在这个类里面写前两步 ...
php连接mysql数据库,实现简单的登录注册
1.创建test数据库并建立user表 user表结构如下 2.编写lineMysql.php 实现连接mysql数据库,并创建查询,插入等方法 3.login.php 登录页面 4.loginSuccess.php 登录成功页 5.register.php 注册页面 6.registerSuccess.php 注册成功页 7.最后将整个项目文件放到wampserver的www目录下,通过浏览器访...
猜你喜欢
jsp+service+servlet+Oracle实现简单的数据库交互(登录注册)
java部分的整体架构 代码部分: 1.Javabean代码: 2.dao代码: LoginDao.java zhuceDao.java wangjiDao.java 3.service loginservice.java zhuceservice.java wangjiservice.java 4.Servlet loginServlet.java zhuceServlet.java wangj...
开始学习微服务(二)
Eureka 1. 来源 Netflix公司开发,不是Spring公司 2.组件 EurekaServer(独立项目)用于定位服务,实现中间层服务器负载均衡和故障转移。 EurekaClient(微服务)和Server交互,简化交互,通过服务标识符获得服务 3. 关系 用来实现服务的注册与发现,C-S架构(客户端和服务端) 4. 使用小坑 2.0之前依...
React Native开发之——组件DrawerLayoutAndroid
前言 封装了平台DrawerLayout(仅限安卓平台)的React组件。抽屉(通常用于导航切换)是通过renderNavigationView方法渲染的,并且DrawerLayoutAndroid的直接子视图会成为主视图(用于放置你的内容)。导航视图一开始在屏幕上并不可见,不过可以从drawerPosition指定的窗口侧面拖拽出来,并且抽屉的宽度可以使用drawerWidth属性来指定。(借鉴...
CentOS7引导Windows7
简单说下吧 一开始是直接在 boot/grub2/grub.cfg里作如下变动: 找到 ### BEGIN /etc/grub.d/30_os-prober ###,在后面添加 grub2从1计数,win7装在C盘上的(可以在终端里输入 fdisk -l 来确定下,一般win都是装在C的吧) OK,保存后,启动画面里出现了win7的选项 接下来是修改等待时间和默认启动项 这里有个问题,...
尚硅谷2020周阳老师SpringCloud学习整理笔记第二部分
第一部分:尚硅谷周阳老师SpringCloud学习整理笔记第一部分 经过5天的学习,目前学到了P92,刚刚结束了SpringCloud Stream,由于还有一些别的事情所以进度有点慢,笔记也整理得有点潦草。第一部分篇幅逐渐臃肿,故下面的笔记,分享于这篇博客。 笔记供自己日后复习,若有需要也供大家参考。若有不足,还请指正。 十三、Hystrix Hystrix介绍 在微服务场景中,通常会有很多层的...