Java Web登录界面

非常激动的开通了我的第一个博客,在这里希望大家能多多指点,相互学习。

一个简单的登录界面

首先我们先把这个登录分为三块:

一、数据库

数据库我用的是MYSQL;

二、前端

三、后台

1、 后台代码的编写我使用的是eclipse

2、 容器我使用的是Tomcat7

3、 Jdk使用的是1.7版本

按照上面的顺序来,第一步我们先创建数据库;

在创建数据库之前一定要先设计好我们登录的时候需要哪些东西,用户名和密码肯定是需要的,所以数据表里肯定是有这两个字段的,还有一个字段是想都不用想,铁定需要的,那就是id,惯用的手法,id铁定是主键,然后自增;用户名就用username,密码password。

设计好了必须要的字段之后我突然又想到,如果以后我们做注册功能的话,是不是也能用同一张表呢,那这样的话,我干脆现在就设计好吧。Username是用户名,用户名那就随便用户定义吧,我就另外再写一个字段,就用name,注册的时候就把名字给我写进去吧,毕竟我要知道这个账号是谁的,顺便定个性别吧,是男的还是女的总要告诉我吧。好了,不想再定了,如果想定其他的就再去加吧。

废话不多说,数据库直接放上来:

好了,数据库完成后,,对于新手来说前端没必要写的太复杂了,当然,也可以去copy一份,自己稍微改一下就好了,我呢就比较懒,就随便去网上copy了一份,我看了一下,很简单,js导了一个jquery.min的包,然后随便搞了几张图片,放进去了。

接下来我就一步一步的把代码放上来:

1、首先html代码:

好的,上面的代码我想没有哪里可以解释的,已经简单的不能再简单了。

然后就是CSS代码,毕竟做东西要有模有样:

Css代码也是十分易懂的,不懂的童鞋度娘一下你就知道。

前端,数据库都出来了,万事俱备只欠后台了,毕竟真正做苦力的还是后台。

首先我们啥都不说,第一步就把数据库配置好,叫人家去做苦力,你知道得先告诉人家去哪里搬砖是不。

我的数据库配置文件写在c3p0-config.xml里

咳咳,一口老血吐在键盘上,为了防止有容易搞错的的童鞋,我又加上了注释。

好了,告诉它要去哪里搬砖了,现在就要告诉它怎么搬砖了。

首先,我先建了四个包备用:

当然,这是我写完之后的包,里面是有东西的,刚建好的包是空的,包的颜色是白色的。

先从第一个包开始说,bean层放的实体类……完了,有童鞋要骂我了,别跟我扯什么实体类,你就直接告诉我到底是放啥?好,说白了就是你要在类里get、set一下的那个类!你不用管它是干啥的也不用管它的谁,不知道的,下课之后抄代码,给我抄十遍你就自然知道了。

来啊,给朕上bean层的代码:

这下明白bean是干啥的了吧。

好了,搞定bean层之后,你以为要去dao层?

不!我们直接去web层造去。

本来想着一次把 web 层的代码全部贴上来,但是想到,有童鞋在这里学习,那么就一步一步的来吧,到后面再把代码一次复制上来。

首先,我们先在 web 层建一个 servlet

Ok之后我们就在 doPost里面写代码

登录的时候是通过验证username和password来登录的,那么我们就先拿到username和password

然后把User清空清空

这时候UserService会报错,这是因为我们没有这个类,然后就要去造它

UserService会报错,因为里面的UserDao这个类我们没有,接着我们就要去造UserDao

Dao层里写的SQL语句请注意了stu是我数据表的名字,请童鞋们不要搞错了。

Dao层和service层全部搞定之后,我们就要回到web层里了。

判断user不等于空之后就要跳转到其他界面,因为我没有写其他界面,所以干脆来个

提示成功就好了,如果登录失败的话就跳回登录界面,接着给我登录。

我在项目中引入了

c3p0-0.9.5.2.jar

commons-beanutils-1.8.3.jar

commons-dbutils-1.6.jar

mysql-connector-java-5.1.42-bin.jar

等jar包。

好了,登录操作我们就搞定了,下课!

对了,展示一下本堂课的成果↓

Original: https://www.cnblogs.com/tiezhuxiong/p/10309186.html
Author: 铁柱兄
Title: Java Web登录界面

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/607860/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • Chrome的强大搜索功能

    前言 前几天一个好朋友求助我,大概问题是他的电脑QQ啥都能上网,就浏览器上不了网不是IE而是chrome,我第一反应可能是dns问题。后来发甩过来一张图,好家伙把我吓得,类似于下面…

    Linux 2023年6月14日
    0107
  • 字典服务的设计与管理

    编码问题,谁不想避其锋芒; 一、业务背景 在搜索引擎的功能上,曾经遇到过这样一个问题,数据库中某个公司名称中存在特殊编码,尽管数据已经正常同步到索引中,但是系统中关键词始终也无法匹…

    Linux 2023年6月14日
    088
  • 聊聊客户档案模型的设计与管理

    可以简单,更需要复杂; 一、基础描述 围绕客户管理通常分为售前、售中、售后、三个核心阶段,即营销、销售、服务三个核心流程与策略,在之前的文章中有聊过CDP系统的设计,本篇从客户档案…

    Linux 2023年6月14日
    089
  • 设置Docker的默认文件存储位置

    对于windows下,直接修改docker desktop界面的配置项目。对于rocky linux下面,对应的配置文件存储在: vim /etc/docker/daemon.js…

    Linux 2023年6月6日
    080
  • Vue3 封装 Element Plus Menu 无限级菜单组件

    本文分别使用 SFC(模板方式)和 tsx 方式对 Element Plus el-menu 组件进行二次封装,实现配置化的菜单,有了配置化的菜单,后续便可以根据路由动态渲染菜单。…

    Linux 2023年6月7日
    0150
  • WEB自动化-03-Cypress 测试框架概述

    3 Cypress 测试框架概述 3.1 Cypress 默认文件结构 在Cypress安装完成后,其生成的默认文件目录如下所示: 3.1.1 Fixtures Fixture又称…

    Linux 2023年6月7日
    0119
  • Identity Server 4资源拥有者密码认证控制访问API(二)

    基于上一篇文章中的代码进行继续延伸,只需要小小的改动即可,不明白的地方可以先看看本人上一篇文章及源码: Identity Server 4客户端认证控制访问API 一、 Quick…

    Linux 2023年6月13日
    0114
  • /dev/random 和 /dev/urandom 的原理

    /dev/random 和 /dev/urandom 是 Linux 上的字符设备文件,它们是随机数生成器,为系统提供随机数 随机数的重要性 随机数在计算中很重要。 TCP/IP …

    Linux 2023年6月13日
    089
  • haproxy-详解

    四层: LVS (Linux Virtual Server)HAProxy (High Availability Proxy)Nginx (1.9以上) 七层: HAProxyNg…

    Linux 2023年6月14日
    0102
  • redis的另一个分支 keydb

    今天无意间发现了redis还有一个分支keydb 是多线程的,貌似在机器内核多的情况下效果比redis效果好 执行这些命令 在这之前先把redis关掉 sudo systemctl…

    Linux 2023年5月28日
    086
  • ORA-01950: no privileges on tablespace ‘USERS’– 解决办法

    ORA-01950: no privileges on tablespace ‘USERS’ 原因: 在表空间 “USERS” 无权…

    Linux 2023年6月6日
    0359
  • Java动态脚本Groovy读取配置文件

    前言:请各大网友尊重本人原创知识分享,谨记本人博客: 南国以南i 核心涉及: @Value:作用是通过注解将常量、配置文件中的值、其他bean的属性值注入到变量中,作为变量的初始值…

    Linux 2023年6月14日
    084
  • Redis安装及配置

    Linux Redis 安装教程 1 安装 下载安装包 官网下载链接我下载的版本是 redis-4.0.9.tar.gz 将下载的安装包上传到服务器(建议到/home/redis)…

    Linux 2023年6月7日
    0126
  • ffmpeg 格式转换

    1.学前知识 1.1视频码率值 码率公式: 码率(kbps)=文件大小(KB)*8/时间(秒) 所以码率和视频文件大小成正比的,不过码率超过一定值后,人眼是看不出效果的. 接下来,…

    Linux 2023年6月7日
    0136
  • 分析redis key大小的几种方法

    当redis被用作缓存时,有时我们希望了解key的大小分布,或者想知道哪些key占的空间比较大。本文提供了几种方法。 一. bigKeys 这是redis-cli自带的一个命令。对…

    Linux 2023年5月28日
    0137
  • linux系统引导过程

    linux系统引导过程 linux-0.11引导时,将依次运行BIOS程序、bootsect.s、setup.s和head.s,完成引导过程后进入到main函数运行。BIOS完成硬…

    Linux 2023年6月13日
    073
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球