> # ♻️ 资源
> **大小:** 3.06MB
> **文档链接:**[**https://www.yuque.com/sxbn/ks/100010145**](https://www.yuque.com/sxbn/ks/100010145)
> **➡️ 资源下载:**[**https://download.csdn.net/download/s1t16/87300940**](https://download.csdn.net/download/s1t16/87300940)
> **注:更多内容可关注微信公众号【神仙别闹】,如当前文章或代码侵犯了您的权益,请私信作者删除!**
> ![qrcode_for_gh_d52056803b9a_344.jpg](https://cdn.nlark.com/yuque/0/2023/jpeg/2469055/1692147256036-49ec7e0c-5434-4963-b805-47e7295c9cbc.jpeg#averageHue=%23a3a3a3&clientId=u8fb96484-770e-4&from=paste&height=140&id=u237e511a&originHeight=344&originWidth=344&originalType=binary&ratio=1.25&rotation=0&showTitle=false&size=8270&status=done&style=none&taskId=ud96bf5f7-fe85-4848-b9c2-82251181297&title=&width=140.1999969482422)
# 用户注册信息存入数据库
### 内容介绍
此项目是前台用户的登录和注册,,这部分包括两个子部分:其中一个为新用户注册,在这里我们可以通过注册浏览更多信息;另一个是用户登录,用户登录系统是一.般 Web 网站都有的子系统,其作用是限制该网站某些资源的使用,只有通过身份确认后的用户才可以访问系统为其设置的使用功能,从而为用户提供了安全的访问和数据操作,防止非法用户进入系统。
登录用到的技术有: ( jsp+servlet+mysq1)首先在网站首页页面下创建一个表单,表单 form、form1 在 ValidateServlet 中进行了具体定义,表单被提交到 /ValidateServlet 映射中,通过在 dbservlet 包中的 ValidateServlet. Java 类 中的 validatelogin (request, response)方法,获得登陆用户的相关信息,最后 在显示页面显示登录是否成功,如果成功登陆,进入 login. JSP 页面;如果不成功,进入 index. JSP 重新登录。
## **一、设计思路**
用户运行登录界面,如果用户没有注册可以单击“注册”按钮跳转到会员注册页面,在用户注册页面分别输入用户名、密码、电话号码、手机验证码,而且对用户名、电话和短信进行了具体的验证,如果输入的具体信息不符合,则不会注册新用户,否则注册成功。
以下是流程图:
![8ccc5204f7746415d07ac7047ac3f9f4.PNG](https://cdn.nlark.com/yuque/0/2024/png/2469055/1704335634030-f38e824e-d9ff-44c6-b6cf-f7ff58ec02ee.png#averageHue=%23f8f8f8&clientId=u1776861f-dee9-4&from=paste&height=385&id=u6fbb6d05&originHeight=481&originWidth=787&originalType=binary&ratio=1.25&rotation=0&showTitle=false&size=56503&status=done&style=none&taskId=uf21da656-21c8-4c29-95ce-e3159875f63&title=&width=629.6)
## **二、数据库设计**
本数据采用 MySQL 数据库,只有一个表:数据表 userinfoinfo 用来存储后台会员名称,密码和基本资料。
### 2.1 用户信息表
下面是用户信息表表的具体内容:
用于保存用户注册基本信息,包括电话号码、短信验证、密码和确认密码。表设计结构如图:
| 字段 | 类型 | 长度 | 说明 |
| --- | --- | --- | --- |
| Username | Varchar | 50 | 用户名(主键) |
| Phone | Varchar | 50 | 电话 |
| note | Varchar | 50 | 短信验证 |
| Pwd | Varchar | 50 | 密码 |
| Password | Varchar | 50 | 确认密码 |
### 2.2 项目结构代码
![50b37702a5ae0e847b2977f0ec3bfc75.PNG](https://cdn.nlark.com/yuque/0/2024/png/2469055/1704335655201-6db955d3-fd28-4ab5-957d-5924bd730c09.png#averageHue=%23292827&clientId=u1776861f-dee9-4&from=paste&height=724&id=u58d36f27&originHeight=905&originWidth=409&originalType=binary&ratio=1.25&rotation=0&showTitle=false&size=126928&status=done&style=none&taskId=u1b438a15-c12e-4134-b259-a66efc8f982&title=&width=327.2)
## **三、用户注册登录**
如果是新用户,那么在登录之前需要先注册为本系统会员。详细步骤如下:
(1)在主页上单击“注册”按钮,则进入用户注册界面。
(2)如果填错,则可以单击“重置”按钮,那么填入的信息被清空。回到刚开始的界面。
(3)填好信息之后,可以单击“提交”按钮,那么信息会被保存到数据库表中。
### 3.1 注册板块及代码
(1)输入用户名,单击“检测而用户名”按钮,检测用户名是否存在。
(2)如存在则重新输入用户名用该用户登录。
(3)若不存在则输入其他信息,验证过通过后点击“注册用户”按钮,完成注册。
代码如下:
```java
@WebServlet("/register.do")
public class RegisterServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
public RegisterServlet() {
super();
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
doPost(request, response);
}
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
Map<String,Object> map=new HashMap<String, Object>();
String mobile = request.getParameter("mobile");
String verifyCode = request.getParameter("verifyCode");
String pwd=request.getParameter("pwd");
System.out.println(mobile);
System.out.println(verifyCode);
JSONObject json = (JSONObject)request.getSession().getAttribute("verifyCode");
if(json == null){
map.put("answer", "验证码错误");
renderData(response, map);
return ;
}
if(!json.getString("mobile").equals(mobile)){
map.put("answer", "电话号码错误");
renderData(response, map);
return ;
}
if(!json.getString("verifyCode").equals(verifyCode)){
map.put("answer", "验证码错误");
renderData(response, map);
return ;
}
if((System.currentTimeMillis() - json.getLong("createTime")) > 1000 * 60 * 1){
map.put("answer", "验证码已过期");
renderData(response,map);
return ;
}
//其他业务代码
map.put("answer", "success");
UserDao.insertUser(mobile,pwd);
renderData(response, map);
}
protected void renderData(HttpServletResponse response,Map<String,Object> map){
try {
response.setContentType("text/plain;charset=UTF-8");
response.getWriter().write(new Gson().toJson(map));
} catch (Exception e) {
e.printStackTrace();
}
}
}
```
### 3.2 实现的界面
![fa97f3503853b7b391a9af30ef629779.PNG](https://cdn.nlark.com/yuque/0/2024/png/2469055/1704335679083-5069ab41-87eb-476b-a29b-5b88acf2e4be.png#averageHue=%23f3f3f3&clientId=u1776861f-dee9-4&from=paste&height=258&id=ua342308c&originHeight=322&originWidth=574&originalType=binary&ratio=1.25&rotation=0&showTitle=false&size=40779&status=done&style=none&taskId=u8bdac7a4-5247-449f-93e4-636012f9f92&title=&width=459.2)
### 3.3 短信验证注册代码
```java
var moblie_info=false;
var code_info=false;
var pwd_info=false;
var repwd_info=false;
$(function(){
//短信验证码倒计时
var countdownHandler = function(){
var $button = $(".sendVerifyCode");
var number = 60;
var countdown = function(){
if (number == 0) {
$button.attr("disabled",false);
$button.html("发送验证码");
number = 60;
return;
} else {
$button.attr("disabled",true);
$button.html(number + "秒重新发送");
number--;
}
setTimeout(countdown,1000);
}
setTimeout(countdown,1000);
}
$("#tele").on("blur",function(){
var $mobile = $("input[name=mobile]");
var data = {};
data.mobile = $.trim($mobile.val());
if(data.mobile ==''){
$("#err1").text("请输入手机号码").css("color","red");
r
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
详情介绍:https://www.yuque.com/sxbn/ks/100010145 本数据采用 MySQL 数据库,只有一个表:数据表 userinfoinfo 用来存储后台会员名称,密码和基本资料。 用户运行登录界面,如果用户没有注册可以单击“注册”按钮跳转到会员注册页面,在用户注册页面分别输入用户名、密码、电话号码、手机验证码,而且对用户名、电话和短信进行了具体的验证,如果输入的具体信息不符合,则不会注册新用户,否则注册成功。
资源推荐
资源详情
资源评论
收起资源包目录
100010145-基于JSP+MySQL实现用户注册登录及短信发送功能.zip (29个子文件)
qiantai
物联网11803-李琴-1804280314.docx 386KB
LICENSE 1KB
RegisterProject
.classpath 825B
.settings
org.eclipse.wst.jsdt.ui.superType.name 6B
org.eclipse.jdt.core.prefs 357B
.jsdtscope 555B
org.eclipse.wst.common.component 489B
org.eclipse.wst.common.project.facet.core.xml 335B
org.eclipse.wst.jsdt.ui.superType.container 49B
src
controller
SendSmsServlet.java 4KB
RegisterServlet.java 2KB
dao
UserDao.java 669B
util
Dbutil.java 2KB
domain
User.java 505B
build
classes
controller
RegisterServlet.class 3KB
SendSmsServlet.class 4KB
dao
UserDao.class 1KB
util
Dbutil.class 2KB
domain
User.class 977B
WebContent
WEB-INF
lib
fastjson-1.2.73.jar 639KB
gson-2.8.6.jar 235KB
ZhenziSmsSDK.jar 10KB
mysql-connector-java-8.0.11.jar 1.94MB
js
function.js 5KB
jquery-3.4.1.min.js 86KB
reg.html 834B
META-INF
MANIFEST.MF 36B
.project 884B
README.md 21KB
共 29 条
- 1
资源评论
神仙别闹
- 粉丝: 2672
- 资源: 7640
下载权益
C知道特权
VIP文章
课程特权
开通VIP
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功