java web 注册登录_javaweb实现登录注册功能实例

前期呢,我们学习了javaweb项目用JDBC连接数据库,还有数据库的建表功能,今天,我们来看一下javaweb实现登录注册功能实例,javaweb项目使用的工具是eclipse,最后把项目部署在了Tomcat中,连接数据库使用的是Mysql数据库。

我们先来看一下web.xml的配置文件:

System01

login.jsp

form

com.demo..FormServlet

form

/form

web.xml是前端的jsp页面和后台的Servlet类交互的一个配置文件,我们可以设置启动页面,还有与页面对应的类Servlet。

然后就是jsp页面login.jsp:

pageEncoding="utf-8"%>

网络交友

shiChao.png

网络交友

记住密码

登  录

在login页面进行输入用户名和密码进行登录,同时也有一个注册的按钮,点击即可进行注册,注册的页面,即ZhuCe.jsp的模样和login.jsp差不多,是通过用户名和密码进行注册的,还有登录成功loginSuccess.jsp、注册成功index.jsp的页面,可以在页面上写上登录成功、注册成功四个字,代表我们的登录和注册已经成功了。

最后就是Servlet类FromServlet.class:

package com.demo;

import java.io.IOException;import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.SQLException;import java.sql.Statement;

import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;

public class FormServlet extends HttpServlet {

private static final long serialVersionUID = 1L;

public static Connection conn = null;

/**

* 重写service方法 处理前台传过来的数据和处理成功后跳转页面

*/

@Override

protected void service(HttpServletRequest request,

HttpServletResponse response) throws ServletException, IOException {

// 设置客户端的格式

request.setCharacterEncoding("utf-8");

// 获取Login.Jsp中控件输入的值

String name = request.getParameter("username");

String pwd = request.getParameter("password");

System.out.println("姓名:" + name);

System.out.println("密码:" + pwd);

// 驱动程序名

String driver = "com.mysql.jdbc.Driver";

// URL指向要访问的数据库名study

String url = "jdbc:mysql://127.0.0.1:3306/study";

String user = "root"; // MySQL配置时的用户名

String password = "123456"; // MySQL配置时的密码

try {

// 加载驱动程序

Class.forName(driver);

// 连接数据库

Connection conn = DriverManager.getConnection(url, user, password);

if (!conn.isClosed())

System.out.println("Succeeded connecting to the Database!");

// statement用来执行sql语句

Statement statement = conn.createStatement();

// 写sql一定要注意

String sql = "select * from user where username = " + "'" + name + "'";

System.out.println(sql);

// sql执行的结果集

ResultSet rs = statement.executeQuery(sql);

if (rs.next()) {

String pwdStr = null;

// 选择pwd这列数据

pwdStr = rs.getString("pwd");

System.out.println(pwdStr);

if (rs.getString("pwd").equals(pwd)) {

// 登录成功跳转的页面

response.sendRedirect("./loginSucess.jsp");

}

} else {

String sqlStr = "insert into user(username,pwd) values('" + name + "','" + pwd + "')";

Statement MyStatement;

try {

MyStatement = conn.createStatement();

MyStatement.executeUpdate(sqlStr);

System.out.println("添加成功");

// 注册成功后跳转的页面

response.sendRedirect("./index.jsp");

} catch (Exception e) {

System.out.println("添加失败");

}

}

} catch (ClassNotFoundException e) {

e.printStackTrace();

} catch (SQLException e) {

e.printStackTrace();

}

}}

在FromServlet类中,我们可以通过用户名、密码和数据库名进行连接Mysql数据库,同时也可以连接其他数据库,比如Oracle等,还有登录、注册成功跳转的页面。

通过以上的描述,大家学会javaweb实现登录注册功能了吗,如果学会了,就赶紧行动起来吧!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/245405.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

source insight 函数不能跳到definition_小技能: Windows10突然不能复制粘贴谁搞鬼

最近连续遇到几次,电脑突然不能复制粘贴了,非常影响工作。(如果不想听我扯,就直接跳到最后看结果啊,我真贴心。)你们都懂得,程序员嘛,用的最多的就是ctrlc,ctrlv。这不能用了,不是让…

flip java_java的flip(). 这里用flip()有什么作用?这是反转缓冲区的方法,好像用不上。...

publicclassNServer{//用于检测所有Channel状态的SelectorprivateSelectorselectornull;staticfinalintPORT30000;privateCharsetcharsetCharset.forName("UTF-8");publicvoidinit(...public class NServer{// 用于检测所有Channel状态的Selectorprivate Selector se…

hsv 明度的范围_通过HSV转换的方式实现图片数据增强

在我的上一篇文章中,我记录了自己将MOT17-Det数据集转换成VOC格式:HUST小菜鸡:将MOT17-Det数据集转成VOC格式​zhuanlan.zhihu.com但是在后期的测试过程中,发现了一些小问题:首先是train.txt里面写入的图片数和标注的数…

java数组如何相加_java数组排序,并将数组内的数据求和

java数据编列并求和,江湖我狼哥,人狠话不多,直接上代码!import java.util.Arrays;public class Intarry {public static void main (String[] args){//定义一个数组int intarry[] {20,30,40,10};int num0;Arrays.sort(intarry);/…

python在工厂中的应用_什么是工厂函数?Python 中工厂函数怎么理解?

其实谈工厂函数前必须首先把嵌套作用域和闭包讲清楚python有一个很有意思的地方,就是def函数可以嵌套在另一个def函数之中。调用外层函数时,运行到的内层def语句仅仅是完成对内层函数的定义,而不会去调用内层函数,除非在嵌套函数之…

java protected关键字_Java 权限protected关键字纠正

以前一直认为自己理解了Java四种权限访问,昨天突然编程时发现protected居然在子类中不能调用,然后越看越迷糊??????public: Java语言中访问限制最宽的修饰符,…

老版本fortran语言 内存无效_编程语言的分类

编程语言世代第一代和第二代语言又称低级语言(Low-level language),其余被视为高级语言(High-level language)第一代编程语言即机器语言,由0和1构成,通过面板、打孔带或者打孔卡输入。第二代编程…

金融统计分析python论文_比较好写的本科金融专业论文题目 本科金融专业论文题目怎么取...

为论文写作提供【100道】比较好写的本科金融专业论文题目,海量本科金融专业相关论文题目,包括专科与本科以及硕士论文题目,解决您的本科金融专业论文题目怎么取的相关难题!一、比较好写的本科金融专业论文题目:1、微观金融视角下财务管理专业应用型本科人才培养目标…

互联网java常用框架_来,带你鸟瞰 Java 中4款常用的并发框架!

1. 为什么要写这篇文章几年前 NoSQL 开始流行的时候,像其他团队一样,我们的团队也热衷于令人兴奋的新东西,并且计划替换一个应用程序的数据库。 但是,当深入实现细节时,我们想起了一位智者曾经说过的话:“细…

2020亚太杯数学建模_比赛 | 2020年APMCM亚太地区大学生数学建模竞赛

2020年11月26日到30日,在我院老师指导下,由统计分析竞赛社组织的41支队伍,共123人,参加了亚太地区大学生数学建模竞赛组委会主办的大学生学科类竞赛。此次竞赛题目分为A题和B题,参赛者需从A,B两题中任选其一…

java声明复数类_JAVA声明复数类

声明复数类,成员变量包括实部和虚部,成员方法包括实现由字符串构造复数、复数加法、减法,字符串描述、比较相等等操作。虽然我只是一个刚学一个月JAVA的菜鸡,但是强迫症让我把复数乘法和除法一起写出来了。public class Complex {…

python接口测试非json的断言_荐在接口自动化测试中,如何利用Pytest + JSONPath 进行接口响应断言...

之前有一篇文章,介绍了如何使用JSONSchema对接口响应进行断言,主要的适用场景是对响应的数据结构进行校验,保证客户端收到的数据结构稳定和合法。今天,介绍使用JSONPath对接口响应的值进行断言方法。上一篇文章《在接口自动化测试…

python3中异常处理_python中的五种异常处理机制介绍|python3教程|python入门|python教程...

https://www.xin3721.com/eschool/python.html从几年前开始学习编程直到现在,一直对程序中的异常处理怀有恐惧和排斥心理。之所以这样,是因为不了解。这次攻python,首先把自己最畏惧和最不熟悉的几块内容列出来,里面就有「异常处理…

java static 单例模式_Java 单例模式全面学习

介绍什么是单例模式:保证一个类仅有一个实例,并提供一个访问它的全局访问点解决什么问题:省略创建对象所花费的时间,不需要频繁创建对象,减轻 GC 压力。单例模式有以下几种实现方式:懒汉式第一次使用的时候…

sql 没有调试 菜单_MySQL递归查询上下级菜单

正文在传统的后台管理系统里面经常会需要展示多级菜单关系,今天我们来学一下如何使用一条SQL语句展示多级菜单。现在我们有一张corpinfo单位表,里面有一个belong字段指向上级单位,首先来看一下现在表里有什么数据:SELECT uid,ubel…

java 桥 word_java导出word的6种方式(转发)

最近做的项目,需要将一些信息导出到word中。在网上找了好多解决方案,现在将这几天的总结分享一下。目前来看,java导出word大致有6种解决方案:1:Jacob是Java-COM Bridge的缩写,它在Java与微软的COM组件之间构…

python删除指定天数前的文件_python 删除指定时间间隔之前的文件实例

遍历指定文件夹下的文件,根据文件后缀名,获取指定类型的文件列表;根据文件列表里的文件路径,逐个获取文件属性里的“修改时间”,如果“修改时间”与“系统当前时间”差值大于某个值,则删除该文件。#!/usr/b…

jieba 词典 词频_在Hanlp词典和jieba词典中手动添加未登录词

在使用Hanlp词典或者jieba词典进行分词的时候,会出现分词不准的情况,原因是内置词典中并没有收录当前这个词,也就是我们所说的未登录词,只要把这个词加入到内置词典中就可以解决类似问题,如何操作呢,下面我…

android访问java服务器_Android_post访问java服务器端

//javaee工程访问地址String url "http://localhost:8080/TestAndroid";//把要请求的值封装到namevalupair的集合中NameValuePair nameValuePair1 new BasicNameValuePair("name","zhangsna");NameValuePair nameValuePair2 new BasicNameVal…

pythonweb啥意思_python-web-guide

Python Web 入坑指南____ _ _ __ __ _ ____ _ _| _ \ _ _| |_| |__ ___ _ __ \ \ / /__| |__ / ___|_ _(_) __| | ___| |_) | | | | __| _ \ / _ \| _ \ \ \ /\ / / _ \ _ \ | | _| | | | |/ _ |/ _ \| __/| |_| | |_| | | | (_) | | | | \ V V / __/ |_) | | |_| | |_| | | (_…