课后练习-登录-2024/9/29

news/2024/9/29 18:01:57

该登录界面是用JOptionPane弹窗接收用户名和密码,之后在数据库中搜索是否存在,最后显示登录成功与否实现

loginTest.java

package JDBC_Test;import com.alibaba.druid.pool.DruidDataSource;
import com.alibaba.druid.pool.DruidDataSourceFactory;import javax.sql.DataSource;
import javax.swing.*;
import java.io.FileInputStream;
import java.sql.*;
import java.util.Properties;public class loginTest {public static void main(String[] args) throws Exception{String username,password;username = JOptionPane.showInputDialog( "输入用户名" );password = JOptionPane.showInputDialog( "输入密码" );if(isExist(username, password)){JOptionPane.showMessageDialog(null, "登录成功!", ">_<",JOptionPane.PLAIN_MESSAGE );}else {JOptionPane.showMessageDialog(null, "登录失败!", "<_>",JOptionPane.PLAIN_MESSAGE );}}public static boolean isExist(String username,String password) throws Exception{//普通连接/*String url = "jdbc:mysql://localhost:3306/lxy?useSSL=false";String user = "root";String pw = "123456";*///数据库连接池获取数据库连接//加载配置文件Properties prop = new Properties();prop.load(new FileInputStream("jdbc-demo/src/druid.properties"));DataSource dataSource = DruidDataSourceFactory.createDataSource(prop);Connection conn = dataSource.getConnection();String sql = "select * from user;";PreparedStatement pstmt = conn.prepareStatement(sql);ResultSet rs = pstmt.executeQuery();while(rs.next()){String u = rs.getString("username");String p = rs.getString("password");if(u.equalsIgnoreCase(username) && p.equalsIgnoreCase(password)){conn.close();pstmt.close();return true;}}conn.close();pstmt.close();return false;}
}

druid.properties配置文件

driverClassName=com.mysql.jdbc.Driver
url=jdbc:mysql:///lxy?useSSL=false&useServerPrepStmts=true
username=root
password=123456# 初始化连接数量
initialSize=5
# 最大连接数
maxActive=10
# 最大等待时间
maxWait=3000

数据库user表为

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈,一经查实,立即删除!

相关文章

数据库连接池实现

本文详细介绍了基于 C++11 的数据库连接池的实现思路,并且有源码提供欢迎访问的另一个博客: https://xingzhu.top/ 源码链接: https://github.com/xingzhuz/MysqlLinkPool前置知识: 相关的环境配置: https://xingzhu.top/archives/shu-ju-ku-lian-jie-chi-huan-jing-pei-zhi M…

接上文实现SpringSecurity,拦截器的实现

实现拦截器有图片可知,在上篇文章我们重写了UserDetailsManager,现在我们来进行之后的操作 在UserDetailsManager中我们可以调动数据库去进行一个账号密码的校验 之后我们这样设置拦截器进行一个token获取存储在usernamePasswordAuthenticationFilter这一层中, 有,则存储在Secu…

error: index-pack died of signal 15

使用Jenkins从gitlab拉取代码构建时,遇到报错error: index-pack died of signal 15一个常见的原因是仓库过大或网络不佳引起的超时,以下配置可解决。 配置工程,为源码管理部分增加Additional Behaviours,选择“高级的克隆行为”,把克隆和拉取操作的超时时间(分钟)设置为…

CentOS 7.9安装ElasticSearch7.14.0、ElasticSearch-Head、Kibana、Node14.18.2

CentOS 7.9安装ElasticSearch7.14.0、ElasticSearch-Head、Kibana、Node14.18.21.安装文件1. elasticsearch-7.14.0-linux-x86 64.tar.gz 2. elasticsearch-head-master.zip 3. jdk-11 linux-x64 bin.tar.gz 4. kibana-7.14.0-linux-x86 64.tar.gz 5. node-v14.18.2-linux-x64.…

「土地那些事儿」我国土地资源的特点:多样而丰富

土地,作为自然资源的核心,承载着国家的经济发展、社会进步和生态安全。我国作为世界上人口最多、面积第三大的国家,土地资源的特点尤为显著。站在这片古老而又充满活力的土地上,我们不禁会思考:我国的土地资源有哪些独特之处?今天,就让我们一起走进这片广袤的土地,探寻…

三维立体自然资源“一张图”

随着信息技术的发展,自然资源管理迎来了新的机遇与挑战。在众多技术中,“三维立体自然资源‘一张图’”的概念尤为引人注目。它不仅代表了地理信息科学领域的最新成果,也为自然资源的有效管理和可持续利用提供了强有力的支持。本文将探讨这一概念的内涵及其在自然资源管理中…

从Anaconda到PyTorch到训练Yolo——Windows系统

1、Anaconda conda能管理不同的开发编译环境,互补干涉影响。 Anaconda和Miniconda是conda的工具,前者带界面(大而全),后者只有命令行窗口(小而精)。作为初学,建议安装Anaconda 1.1 安装Anaconda 下载 Download Anaconda Distribution | Anaconda ,安装到D盘,其他默认…

9月28日,工信部人才交流中心CUUG-PGCA/PGCP/PGCM认证考试完成!

2024年9月28日,由工业和信息化部人才交流中心主办,北京神脑资讯技术有限公司承办的PostgreSQL管理员岗位能力认证考试(PGCP中级/PGCM高级)顺利完成。 中级PG认证专家:PGCP(PostgreSQL Certified Professional),是对PostgreSQL数据库技术能力的一种认可,达到了专家级别…