java servlet mysql_servlet+mysql实现简易的登录功能
本篇记录在idea中搭建web应用框架的过程,并用jsp+servlet+mysql实现简单的登录功能。
1、搭建web项目骨架
新建javaweb应用项目
新建lib文件夹,放入要用到的依赖包。分别是数据库的驱动包和web工具包,添加后右键添加到项目的依赖库中。
添加完毕之后,在项目设置中查看结构,确认依赖导入完毕。如果需要fix,直接点击fix进行修复。
建立项目骨架,在src中新建五个包。代表web项目的各个功能层次。
dao层负责对数据库的相关操作,比如插入查询删改等。
model包存放在程序中的实体形式,包括一系列属性,与数据库中的字段对应。
service包存放业务逻辑中的服务,它根据不同情况,对dao层进行调用
servlet包存放各种页面请求处理。直接根据页面信息作出各种相应,对service层进行调用。
util存放各种工具类
2、编写数据库连接类和dao层:
此处参考上一篇数据库连接的博文,这里不再赘述:
https://editor.csdn.net/md/?articleId=107488124
这里的数据库结构比较简单,如下:
测试数据:
3、编写实体类:
这里的属性要和数据库中的字段对应。这里新建一个用户名和一个密码两个属性用于用户登录。
package com.kisstherain.model;
public class User {
private int id;
private String name;
private String password;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
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;
}
@Override
public String toString() {
return "User{" +
"id=" + id +
", name='" + name + '\'' +
", password='" + password + '\'' +
'}';
}
}
4、编写Service
这里逻辑比较简单,因为只有登录这一个比较简单的操作
package com.kisstherain.service;
import com.kisstherain.dao.UserDao;
import com.kisstherain.model.User;
public class UserService {
UserDao userDao=new UserDao();
public User selectByName(String name){
return userDao.selectByName(name);
}
}
5、编写Servlet:
servlet层继承HttpServlet类,主要是重写doPost方法,对发送的请求根据用户发送的表单进行处理,并进行适当的返回。这里根据用户在登录界面提交的用户名和密码表单,调用dao层的数据库交互方法,对相应用户名的密码进行匹配判断。如果相同返回带有success的相应界面;如果不同或者是其他情况导致密码不匹配,返回fail。
主要有两种请求处理方法 doPost doGet
doGet:处理GET请求
doPost:处理POST请求
当发出客户端请求的时候,调用service 方法并传递一个请求和响应对象。Servlet首先判断该请求是GET 操作还是POST 操作。然后它调用下面的一个方法:doGet 或 doPost。如果请求是GET就调用doGet方法,如果请求是POST就调用doPost方法。doGet和doPost都接受请求(HttpServletRequest)和响应(HttpServletResponse)。get和post这是http协议的两种方法,另外还有head, delete等
这两种方法有本质的区别,get只有一个流,参数附加在url后,大小个数有严格限制且只能是字符串。post的参数是通过另外的流传递的,不通过url,所以可以很大,也可以传递二进制数据,如文件的上传。
在servlet开发中,以doGet()和doPost()分别处理get和post方法。
package com.kisstherain.servlet;
import com.kisstherain.model.User;
import com.kisstherain.service.UserService;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
public class LoginServlet extends HttpServlet {
UserService userService=new UserService();
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
String name=req.getParameter("name");
String password=req.getParameter("password");
User user=userService.selectByName(name);
if(password.equals(user.getPassword())){
resp.getWriter().write("success");
}else{
resp.getWriter().write("fail");
}
}
}
6、编写jsp界面:
主要是两个输入框,供用户输入密码和用户名。这里的action代表处理请求时用户所在的url
Created by IntelliJ IDEA.
User: 84265
Date: 2020/7/21
Time: 8:43
To change this template use File | Settings | File Templates.
--%>
$Title$
登录页面
name:
password:
7、建立servlet映射
最后要告诉web应用有哪些servlet,以及这些servlet与项目中的哪些类对应:
loginServlet
com.kisstherain.servlet.LoginServlet
loginServlet
/login
8、测试
本文地址:https://blog.csdn.net/weixin_42189888/article/details/107480350
希望与广大网友互动??
点此进行留言吧!
java servlet mysql_servlet+mysql实现简易的登录功能相关推荐
- IDEA+Java+Servlet+JSP+Mysql实现学生选课签到系统
一.系统介绍 1.开发环境 开发工具:IDEA2018 JDK版本:jdk1.8 Mysql版本:8.0.13 2.技术选型 Java+Servlet+Boostrap+Jsp+Mysql 3.系统功 ...
- IDEA+Java+Servlet+JSP+Mysql实现Web停车场管理系统【建议收藏】
目录 一.系统介绍 1.开发环境 2.技术选型 3.系统功能 4.数据库 5.工程截图 二.系统展示 1.登录界面 2.主页面 3.系统信息管理-添加角色信息 4.系统信息管理-管理角色信息 5.系统 ...
- 使用vue-cli+element-ui+expsess+mysql做一个简易的登录功能
使用vue-cli+element-ui+expsess+mysql做一个简易的登录功能 1使用webpack下载vue模板 vue init webpack aaa(aaa为项目名称) cd到aaa ...
- Java+Servlet+JSP+Mysql+Tomcat实现Web学生选课管理系统
Java实现Web学生选课管理系统 一.系统介绍 1.软件环境 2.系统功能 3.数据库 二.系统展示 1.登录页面 2.学生-主页面 3.学生-查看个人信息 4.学生-选择课程 5.学生-查看已选课 ...
- 基于JAVA+Servlet+JSP+MYSQL的网上书城
软件架构说明 本项目是基于javaee运用jsp,ajax,servlet,mysql等技术编写,由个人独立完成 使用说明 本项目包含图书资源等数据 sql文件位于web-inf/sql下 项目前台页 ...
- 基于JAVA+Servlet+JSP+MYSQL的教师教学评价系统
项目功能: 系统开发的总体目标是校.系督导及学生实现教学评价,教师实现查看评价信息,管理员实现信息管理.系统功能分析是在用户需求的基础上完成的. 1.学生的需求 A1:学生登录功能:学生的信息包括姓名 ...
- 基于JAVA+Servlet+JSP+MYSQL的网络考试系统
网络考试系统主要用于实现高校在线考试,基本功能包括:自动组卷.试卷发布.试卷批阅.试卷成绩统计等.本系统结构如下: (1)学生端: 登录模块:登录功能:网络考试模块:可参加考试,并查看考试结果,提交试 ...
- java 学生考勤系统(一、登录功能)
1.在你数据库里要建一张表,表中有id.uname.pwd.sex等这些字段,并且添加几个用户为了方便写完后测试. 2.写一个登录页面的jsp,有两个输入框一个是用户名一个是密码,一个登录按钮,一个注 ...
- 基于PHP+MySQL实现注册和登录功能
总述 通过 PHP 连接 MySQL 数据库需要有以下关键的五个步骤 连接数据库 创建数据表 插入数据 获取数据 结束连接 而基于这五个步骤,即可实现简易的登录注册功能 首页 登录成功页面 ├── c ...
- 手把手教程用Java实现微信公众号扫码登录功能
文章目录 前言 一.环境准备 二.使用步骤 1. 使用微信工具包 2. 创建数据表 3. 登录页面代码逻辑 4. 验证微信公众号登录 总结 前言 微信现今是我们必不可少的社交工具了,围绕微信这个生态实 ...
最新文章
- python3.8.5是python3吗_Python 升级到3.8.5
- 字符串还可以这样初始化--uboot篇
- Shared——The best front-end hacking cheatsheets — all in one place.
- 字符串常量是一个字符数组
- 2.1 帮助命令、用户管理、压缩
- WIN7如何替换开机登录画面
- Android工程师面试该怎么准备?年薪50W
- Java使用Optional与Stream来取代if判空逻辑(JDK8以上)
- Docker Swarm集群config集中管理配置文件
- 配对交易方法_COVID下的自适应配对交易,一种强化学习方法
- csdn 用户 蚂蚁翘大象_用户界面设计师房间里的大象
- instring java_Decode a string in Java
- Silverlight中的InkPresenter(可以保存、加载)
- 网络工程 IP地址与子网掩码
- 201542010208、201571030331软件工程结对项目
- html5华文行楷字体代码,html5 支持的字体样式
- 通过PPC来播放PC声音
- 前端字符串去空白字符,包括空格、制表符、换页符
- python代替云打码的超级鹰验证码识别第三方工具使用分享
- 33张你没看过的酷炫化学动图, 秒懂化学反应原理!