Eclipse MySql之登录

用Eclipse连接MySql数据库实现登陆的功能。

功能分析
1.MySql数据库的连接
2.判断输入的内容是否为空
3.判断输入的内容是否与数据库的内容相同
4.重定向的使用

效果演示

原始样式
在这里插入图片描述
当账户或者密码任何一个是空的时候点击登录会弹框
在这里插入图片描述

一 MySql数据库

我的数据库名school
我的数据表名login
在这里插入图片描述

二 程序详解

在开始我们的程序之前一定注意:
导入mysql-connector-java-5.1.39-bin.jar架包和jquery.jar架包。

我们有必要先看一下目录结构
在这里插入图片描述

代码展示

LoginServlet.java

package com.zsh.servlet;import java.io.IOException;
import java.io.PrintWriter;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;import com.zsh.util.DBUtil;public class LoginServlet extends HttpServlet {public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {}public void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {request.setCharacterEncoding("utf-8");response.setCharacterEncoding("utf-8");String name = request.getParameter("name");String pwd = request.getParameter("pwd");boolean flag = false;Connection conn = DBUtil.getConn();PreparedStatement ps = null;ResultSet rs = null;String sql = "select * from login where name = ? and pwd = ?";try {ps = conn.prepareStatement(sql);ps.setString(1, name);ps.setString(2, pwd);rs = ps.executeQuery();if(rs.next()){flag = true;}else{flag = false;}} catch (SQLException e) {// TODO Auto-generated catch blocke.printStackTrace();}finally{DBUtil.closeConn(conn, ps, rs);}if(flag){response.sendRedirect("success.jsp");}else{response.sendRedirect("login.jsp");}}}

DBUtil.java

package com.zsh.util;import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;public class DBUtil {public static Connection getConn(){Connection conn = null;String url = "jdbc:mysql://localhost:3306/school";String user = "root";String pwd = "111";try {Class.forName("com.mysql.jdbc.Driver");conn = DriverManager.getConnection(url, user, pwd);} catch (SQLException e) {// TODO Auto-generated catch blocke.printStackTrace();} catch (ClassNotFoundException e) {// TODO Auto-generated catch blocke.printStackTrace();}return conn;}public static void closeConn(Connection conn, PreparedStatement ps, ResultSet rs){if(conn!=null){try {conn.close();} catch (SQLException e) {// TODO Auto-generated catch blocke.printStackTrace();}}if(ps!=null){try {ps.close();} catch (SQLException e) {// TODO Auto-generated catch blocke.printStackTrace();}}if(rs!=null){try {rs.close();} catch (SQLException e) {// TODO Auto-generated catch blocke.printStackTrace();}}}}

JSP页面

login.jsp

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><base href="<%=basePath%>"><title>My JSP 'index.jsp' starting page</title><meta http-equiv="pragma" content="no-cache"><meta http-equiv="cache-control" content="no-cache"><meta http-equiv="expires" content="0">    <meta http-equiv="keywords" content="keyword1,keyword2,keyword3"><meta http-equiv="description" content="This is my page"><!--<link rel="stylesheet" type="text/css" href="styles.css">--><script src="jquery.js"></script></head><style>#all{width: 300px;height: 200px;margin-top: 100px;}input{margin-top: 20px;}</style><body><center><div id="all"><form action="login" method="post">账号:<input type="text" name="name" id="name"><br>密码:<input type="password" name="pwd" id="pwd"><br><input type="submit" value="登录"></form></div></center></body><script>$("form").submit(function(){var name = $("#name").val();var pwd = $("#pwd").val();var nameFlag = false;var pwdFlag = false;if(name == "" || name == "undefined"){nameFlag = false;alert("账户不能为空!");}else{nameFlag = true;}if(pwd == "" || pwd == "undefined"){pwdFlag = false;alert("密码不能为空!");}else{pwdFlag = true;}if(nameFlag == false || pwdFlag == false){return false;}else{return true;}})</script>
</html>

success.jsp

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><base href="<%=basePath%>"><title>My JSP 'success.jsp' starting page</title><meta http-equiv="pragma" content="no-cache"><meta http-equiv="cache-control" content="no-cache"><meta http-equiv="expires" content="0">    <meta http-equiv="keywords" content="keyword1,keyword2,keyword3"><meta http-equiv="description" content="This is my page"><!--<link rel="stylesheet" type="text/css" href="styles.css">--></head><body><h1>欢迎成功登录!!!</h1></body>
</html>

了解更多关注我呦!!!

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

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

相关文章

IDEA MySql之增删改查

用IDEA开发工具和MySql实现登录和增删改查的功能。 功能分析&#xff1a; 1.登录 2.增加 3.删除 4.修改 5.查询 效果演示 登陆页面 信息显示页面 一 &#xff1a;数据库设计 MySql数据库名为 school 登录表名为 login 信息表名为 student 登录表插入合适的数据 信息表…

EXCEL中多行多列数据与一行或一列数据的互相转换

在平常所用数据中&#xff0c;会出现多行多列数据&#xff0c;但是实际又需要一行或一列形式的数据&#xff0c;或者相反者&#xff0c;那么这篇文章将教会你如何在excel中对多行多列数据与一行一列数据的相互转换、或者将行数据变为列数据、列数据变为行数据。 下面将解决这几…

【youcans 的 OpenCV 例程200篇】115. 形态学操作之开运算

欢迎关注 『youcans 的 OpenCV 例程 200 篇』 系列&#xff0c;持续更新中 欢迎关注 『youcans 的 OpenCV学习课』 系列&#xff0c;持续更新中 【youcans 的 OpenCV 例程 200 篇】115. 形态学操作之开运算 形态学的基本思想是利用结构元素测量或提取输入图像中的形状或特征&am…

用特征根判别法判断AR模型的平稳性,再用随机模拟的方法来验证以及做自相关分析

下面将用这两个栗子来讲解本文的内容&#xff0c;将用到的软件&#xff1a;SPSS、EXCEL 一、我们先用特征根判别法判断模型的平稳性。 特征根判别法呢&#xff0c;最主要的就是写出模型的差分方程&#xff0c;然后求出其特征根&#xff0c;若其特征根在单位圆内&#xff0c;…

【youcans 的 OpenCV 例程200篇】116. 形态学操作之闭运算

欢迎关注 『youcans 的 OpenCV 例程 200 篇』 系列&#xff0c;持续更新中 欢迎关注 『youcans 的 OpenCV学习课』 系列&#xff0c;持续更新中 【youcans 的 OpenCV 例程 200 篇】116. 形态学操作之闭运算 形态学的基本思想是利用结构元素测量或提取输入图像中的形状或特征&am…

xmapp 查询文字内容显示乱码

我们使用xmapp工具的MySql数据库的时候会发现使用命令行查询出来的文字内容显示乱码&#xff0c;那么我们如何解决这些乱码文字呢&#xff1f;&#xff1f;&#xff1f; 在我们启动数据库的时候设置相应格式 mysql -uroot -p111 --default-character-setgbk乱码文字显示 关…

数据治理之数据标准管理

目录 一、概述什么是数据标准数据标准的作用什么是数据标准化数据标准的意义业务方面技术方面管理方面 二、数据标准管理的内容数据模型标准基础数据标准主数据和参考数据标准指标数据标准 三、数据标准管理流程数据标准梳理数据标准制定数据标准审查数据标准发布数据标准贯彻 …

公式编译器AxMath安装包及在word中使用的教程

AxMath安装包&#xff1a; 百度网盘链接&#xff1a;https://pan.baidu.com/s/1cMIqsVzo5s6BgJIgi_WrBg 提取码&#xff1a;591h 其安装步骤很简单&#xff0c;直接双击解压缩后的应用程序即可&#xff0c;压缩包里有那啥可以免费使用的方法和安装步骤。 下面讲解在word中如何…

【youcans 的 OpenCV 例程200篇】117. 形态学操作之顶帽运算

欢迎关注 『youcans 的 OpenCV 例程 200 篇』 系列&#xff0c;持续更新中 欢迎关注 『youcans 的 OpenCV学习课』 系列&#xff0c;持续更新中 【youcans 的 OpenCV 例程 200 篇】117. 形态学操作之顶帽运算 形态学的基本思想是利用结构元素测量或提取输入图像中的形状或特征&…

AJAX 信息查询管理

使用AJAX前后端分离技术实现对MySql数据库的数据查询删除和增加等操作。 功能分析&#xff1a; 1.登录 2.查询信息 3.增加信息 4.删除信息 效果演示 登陆页面 列表页面 点击查询信息 实现此功能要准备三部分分别是数据库&#xff0c;前端和后台。 一 &#xff1a; MySql…

【youcans 的 OpenCV 例程 200 篇】118. 形态学操作之底帽运算

欢迎关注 『youcans 的 OpenCV 例程 200 篇』 系列&#xff0c;持续更新中 欢迎关注 『youcans 的 OpenCV学习课』 系列&#xff0c;持续更新中 【youcans 的 OpenCV 例程 200 篇】118. 形态学操作之底帽运算 形态学的基本思想是利用结构元素测量或提取输入图像中的形状或特征&…

SPSS操作(五):主成分分析

为综合评价我国2006年省级地区服务业发展水平&#xff0c;现构建我国省级地区服务业发展水平综合评价指标体系&#xff0c;具体如下&#xff1a;铁路运输业职工人数(人)、城市公共交通业职工人数(人)、邮政业职工人数(人)、电信和其他信息传输服务业职工人数(人)、客运量(万人)…

SpringBoot创建简单的hello world

用目前流行的SpringBoot框架创建一个简单的hello world. 效果演示 控制台输出Spring 在游览器输入地址出现如下所示 代码演示 在代码正式开始之前我们先看一下目录结构吧 我们只需要关心src/main/java包里的内容和pom.xml里面的内容 主启动程序 Application.java内容 p…

【youcans 的 OpenCV 例程 200 篇】119. 图像的形态学梯度

欢迎关注 『youcans 的 OpenCV 例程 200 篇』 系列&#xff0c;持续更新中 欢迎关注 『youcans 的 OpenCV学习课』 系列&#xff0c;持续更新中 【youcans 的 OpenCV 例程 200 篇】119. 图像的形态学梯度 形态学的基本思想是利用结构元素测量或提取输入图像中的形状或特征&…

爬取虎扑步行街论坛数据保存到MySQL、MongoDB

本文内容围绕获取虎扑步行街论坛上所有帖子的数据开展的&#xff0c;爬取的内容包括帖子名称、帖子链接、作者、作者链接、创建时间、回复数、浏览数、最后回复用户和最后回复时间&#xff0c;将爬取的数据分别保存在MongoDB和MySQL里 网页地址&#xff1a; https://bbs.hupu.c…

MyEclipse导入项目后 js文件报错

当我们把项目导入MyEclipse的时候会发现导入的项目报错&#xff0c;点开一看是js文件报错了&#xff0c;那么我们应该如何处理导入MyEclipse之后js文件报错呢&#xff1f;&#xff1f;&#xff1f; 首先&#xff0c;我们要保证我们导入的代码是正确的。 解决js文件报错我总结…

【youcans 的 OpenCV 例程 200 篇】120. 击中-击不中变换

欢迎关注 『youcans 的 OpenCV 例程 200 篇』 系列&#xff0c;持续更新中 欢迎关注 『youcans 的 OpenCV学习课』 系列&#xff0c;持续更新中 【youcans 的 OpenCV 例程 200 篇】120. 击中-击不中变换 形态学的基本思想是利用结构元素测量或提取输入图像中的形状或特征&#…

gets函数会自动加空字符吗_Python高手都知道的内置函数,你不知道就low了

xinxin 菜鸟学Python 阅读本文大概需要5分钟python内置了一些非常巧妙而且强大的内置函数&#xff0c;对初学者来说&#xff0c;一般不怎么用到&#xff0c;我也是用了一段时间python之后才发现&#xff0c;哇还有这么好的函数&#xff0c;这个函数都是经典的而且经过严格测试的…

Tableau2019版本安装步骤

因为需要&#xff0c;所以遍地寻找tableau安装包&#xff0c;然后找到2021等版本&#xff0c;安装发现都不能显示表和图&#xff0c;所以继续寻找&#xff0c;然后发现了2019版安装包&#xff0c;安装发现可以正常使用&#xff0c;以下是安装包的下载地址&#xff1a; 链接&…

HTML全屏背景图

当我们在写前端页面的时候为了页面的美观我们通常会为页面设置图片背景&#xff0c;那么我们如何来设置全屏的背景图呢&#xff1f;&#xff1f;&#xff1f; 设置全屏背景图需要三个属性 background-image: url(img/untitled.png);background-repeat: no-repeat;background-s…