本篇记录在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实现简易的登录功能相关推荐

  1. IDEA+Java+Servlet+JSP+Mysql实现学生选课签到系统

    一.系统介绍 1.开发环境 开发工具:IDEA2018 JDK版本:jdk1.8 Mysql版本:8.0.13 2.技术选型 Java+Servlet+Boostrap+Jsp+Mysql 3.系统功 ...

  2. IDEA+Java+Servlet+JSP+Mysql实现Web停车场管理系统【建议收藏】

    目录 一.系统介绍 1.开发环境 2.技术选型 3.系统功能 4.数据库 5.工程截图 二.系统展示 1.登录界面 2.主页面 3.系统信息管理-添加角色信息 4.系统信息管理-管理角色信息 5.系统 ...

  3. 使用vue-cli+element-ui+expsess+mysql做一个简易的登录功能

    使用vue-cli+element-ui+expsess+mysql做一个简易的登录功能 1使用webpack下载vue模板 vue init webpack aaa(aaa为项目名称) cd到aaa ...

  4. Java+Servlet+JSP+Mysql+Tomcat实现Web学生选课管理系统

    Java实现Web学生选课管理系统 一.系统介绍 1.软件环境 2.系统功能 3.数据库 二.系统展示 1.登录页面 2.学生-主页面 3.学生-查看个人信息 4.学生-选择课程 5.学生-查看已选课 ...

  5. 基于JAVA+Servlet+JSP+MYSQL的网上书城

    软件架构说明 本项目是基于javaee运用jsp,ajax,servlet,mysql等技术编写,由个人独立完成 使用说明 本项目包含图书资源等数据 sql文件位于web-inf/sql下 项目前台页 ...

  6. 基于JAVA+Servlet+JSP+MYSQL的教师教学评价系统

    项目功能: 系统开发的总体目标是校.系督导及学生实现教学评价,教师实现查看评价信息,管理员实现信息管理.系统功能分析是在用户需求的基础上完成的. 1.学生的需求 A1:学生登录功能:学生的信息包括姓名 ...

  7. 基于JAVA+Servlet+JSP+MYSQL的网络考试系统

    网络考试系统主要用于实现高校在线考试,基本功能包括:自动组卷.试卷发布.试卷批阅.试卷成绩统计等.本系统结构如下: (1)学生端: 登录模块:登录功能:网络考试模块:可参加考试,并查看考试结果,提交试 ...

  8. java 学生考勤系统(一、登录功能)

    1.在你数据库里要建一张表,表中有id.uname.pwd.sex等这些字段,并且添加几个用户为了方便写完后测试. 2.写一个登录页面的jsp,有两个输入框一个是用户名一个是密码,一个登录按钮,一个注 ...

  9. 基于PHP+MySQL实现注册和登录功能

    总述 通过 PHP 连接 MySQL 数据库需要有以下关键的五个步骤 连接数据库 创建数据表 插入数据 获取数据 结束连接 而基于这五个步骤,即可实现简易的登录注册功能 首页 登录成功页面 ├── c ...

  10. 手把手教程用Java实现微信公众号扫码登录功能

    文章目录 前言 一.环境准备 二.使用步骤 1. 使用微信工具包 2. 创建数据表 3. 登录页面代码逻辑 4. 验证微信公众号登录 总结 前言 微信现今是我们必不可少的社交工具了,围绕微信这个生态实 ...

最新文章

  1. python3.8.5是python3吗_Python 升级到3.8.5
  2. 字符串还可以这样初始化--uboot篇
  3. Shared——The best front-end hacking cheatsheets — all in one place.
  4. 字符串常量是一个字符数组
  5. 2.1 帮助命令、用户管理、压缩
  6. WIN7如何替换开机登录画面
  7. Android工程师面试该怎么准备?年薪50W
  8. Java使用Optional与Stream来取代if判空逻辑(JDK8以上)
  9. Docker Swarm集群config集中管理配置文件
  10. 配对交易方法_COVID下的自适应配对交易,一种强化学习方法
  11. csdn 用户 蚂蚁翘大象_用户界面设计师房间里的大象
  12. instring java_Decode a string in Java
  13. Silverlight中的InkPresenter(可以保存、加载)
  14. 网络工程 IP地址与子网掩码
  15. 201542010208、201571030331软件工程结对项目
  16. html5华文行楷字体代码,html5 支持的字体样式
  17. 通过PPC来播放PC声音
  18. 前端字符串去空白字符,包括空格、制表符、换页符
  19. python代替云打码的超级鹰验证码识别第三方工具使用分享
  20. 33张你没看过的酷炫化学动图, 秒懂化学反应原理!

热门文章

  1. Win10使用说明 - 任务栏设置、触摸板手势和使用偏好
  2. 文本数据挖掘实验:文本分类
  3. 软件测试技术课后习题:第1章软件测试概述-广东高等教育出版社,主编杨胜利
  4. pip 安装第三方库时各种报错It is a distutils installed project and thus we cannot accurately determine
  5. 思科Cisco交换机运维手册
  6. Unity 5.3 官方VR教程(—)VR综述
  7. 详解基于深度学习的伪装目标检测
  8. Go语言之error
  9. 基于视觉无人机的高速公路违章识别技术
  10. 最优化方法 19:近似梯度下降