JDBC与MySql数据库

一、系统开发前的环境准备

1.下载Mysql

下载地址:https://dev.mysql.com/downloads/mysql/

文件解压缩到本地
在这里插入图片描述
在此路径下新增my.ini文件以及新建data文件夹

在这里插入图片描述
编辑my.ini文件
在这里插入图片描述
配置环境变量
在这里插入图片描述
在这里插入图片描述
注意是编辑系统变量的Path
在这里插入图片描述
以管理员身份运行cmd
在这里插入图片描述

输入命令:mysqld install
安装成功后输入:mysqld --initialize --user=root --console
注意:最后面的root@localhost后的文字为初始化的root 密码,一定要记住

启动MySQL服务
输入命令:net start mysql

登陆MySQL数据库
输入命令:mysql -u root -p,再按回车,输入密码
密码为上面root@localhost后初始化的密码

修改密码
输入命令:ALTER USER 'root'@'localhost' IDENTIFIED BY ‘新密码’;

2.下载Navicat

下载解压,得到32位和和64位navicat premium 15中文原程序和patch破解文件;64位是第二个
在这里插入图片描述
以64位为例,双击文件“navicat150_premium_cs_x64.exe”安装软件,依提示安装即可;
在这里插入图片描述
成功安装后,先不打开软件,将注册机文件“Navicat_Keygen_Patch_v5.6_By_DFoX.exe”复制到软件安装目录下;
默认目录【C:\Program Files\PremiumSoft\Navicat Premium 15】
在这里插入图片描述
以管理员身份注册机,选择Navicat v15,product选择premium,language选择simplified chinese,再点击patch按纽,注意不要选错版本,显示如下:
在这里插入图片描述
这时打开软件,点击注册按钮;
在这里插入图片描述
返回注册机,点击Generate会自动填写注册码;
在这里插入图片描述
再点击激活按纽,点击手动激活
在这里插入图片描述
将requese值复制到注册机中生成激活码;
在这里插入图片描述
最后将得到的激活码复制到软件框中即可激活软件,以上就是navicat premium 15中文破解版的详细安装教程。
在这里插入图片描述

二、代码

1.在数据库表中添加一条记录

package com.hbnu.jdbc;import java.sql.*;public class Demo1 {public static void main(String[] args) {Connection connection=null;Statement statement=null;try {//1.注册驱动DriverManager.registerDriver(new com.mysql.cj.jdbc.Driver());//2.获取数据库连接对象String url="jdbc:mysql://localhost:3306/class2110?serverTimezone=GMT&useSSL=false";String user="root";String password="123456";connection=DriverManager.getConnection(url,user,password);//3.获取数据库操作对象statement=connection.createStatement();//创建数据库操作对象//4.执行sql语句String sql="insert into tb_user values('xxxten','湖北',56233)";int count=statement.executeUpdate(sql);//5.处理查询结果集System.out.println("影响了"+count+"条记录");} catch (SQLException e) {e.printStackTrace();}//6.关闭数据库资源finally {try{if(statement!=null){statement.close();}}catch (SQLException e){e.printStackTrace();}if(connection!=null){try {connection.close();} catch (SQLException e) {e.printStackTrace();}}}}
}

2.删除数据表的某条记录

package com.hbnu.jdbc;import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;public class Demo2 {public static void main(String[] args) {try {DriverManager.registerDriver(new com.mysql.cj.jdbc.Driver());String url="jdbc:mysql://localhost:3306/class2110?serverTimezone=GMT&useSSL=false";String user="root";String password="123456";Connection connection = DriverManager.getConnection(url, user, password);Statement statement = connection.createStatement();String sql="delete from tb_user where id=1";int count=statement.executeUpdate(sql);System.out.println("影响了数据表"+count+"条数据");statement.close();connection.close();} catch (SQLException e) {e.printStackTrace();}}
}

3.修改数据表的某条记录

package com.hbnu.jdbc;import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;public class Demo3 {public static void main(String[] args) {try {DriverManager.registerDriver(new com.mysql.cj.jdbc.Driver());String url="jdbc:mysql://localhost:3306/class2110?serverTimezone=GMT&useSSL=false";String user="root";String password="123456";Connection connection = DriverManager.getConnection(url, user, password);Statement statement = connection.createStatement();String sql="update tb_user set username='tp加疾跑' where id=2";int count=statement.executeUpdate(sql);System.out.println("影响了"+count+"条记录");statement.close();connection.close();} catch (SQLException e) {e.printStackTrace();}}
}

4.查询数据表的记录

package com.hbnu.jdbc;import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;public class Demo4
{public static void main(String[] args) {try {Class.forName("com.mysql.cj.jdbc.Driver");String url="jdbc:mysql://localhost:3306/class2110?serverTimezone=GMT&useSSL=false";String user="root";String password="123456";Connection connection = DriverManager.getConnection(url, user, password);Statement statement = connection.createStatement();String sql="select id,username,address,account from tb_user";ResultSet resultSet=statement.executeQuery(sql);//处理查询结果集while(resultSet.next()){//通过具体字段名以具体类型获取数据int id=resultSet.getInt("id");String username=resultSet.getString("username");String address=resultSet.getString("address");double account=resultSet.getDouble("account");System.out.println("id:"+id+"\tusername:"+username+"\taddress:"+address+"\taccount:"+account);}//关闭数据库资源resultSet.close();statement.close();connection.close();} catch (Exception e) {e.printStackTrace();}}
}

5.制作一个用户使用账号和密码登录的案例
数据库内容如:
在这里插入图片描述

package com.hbnu.jdbc;import java.sql.*;
import java.util.HashMap;
import java.util.Map;
import java.util.Scanner;public class Demo5 {public static void main(String[] args) {//用户输入账号和密码的界面Map<String,String>loginInfo=loginUI();//校验用户的登录信息boolean result=checkLoginInfo(loginInfo);System.out.println(result?"账号密码正确,登录成功":"账号密码错误,登录失败");}private static boolean checkLoginInfo(Map<String, String> loginInfo) {//定义一个登录成功或失败的标记boolean flag=false;//从集合中获取用户信息,获取用户输入的账号和密码String username=loginInfo.get("username");String password=loginInfo.get("password");try {Class.forName("com.mysql.cj.jdbc.Driver");String url="jdbc:mysql://localhost:3306/class2110?serverTimezone=GMT&useSSL=false";String user="root";String pwd="123456";Connection connection = DriverManager.getConnection(url, user, pwd);//会产生SQL注入,所以用prepareStatement
//            Statement statement = connection.createStatement();//问号是占位符String sql="select * from tb_user where username=? and password=?";//对SQL语句进行预编译PreparedStatement preparedStatement = connection.prepareStatement(sql);//给占位符赋值,第一个问号的下标就是1preparedStatement.setString(1,username);preparedStatement.setString(2,password);ResultSet resultSet = preparedStatement.executeQuery();while (resultSet.next()){//如果能进入while循环,则说明用户输入的账号和密码是正确的flag=true;break;}} catch (Exception e) {e.printStackTrace();}return flag;}private static Map<String, String> loginUI() {//定义Map集合,用于存放用户的账号和密码Map<String,String>loginInfo=new HashMap<>();//获取用户输入的账号和密码Scanner scanner = new Scanner(System.in);System.out.println("请输入您的账号:");String username=scanner.nextLine();System.out.println("请输入您的密码:");String password=scanner.nextLine();//将用户输入的账号和密码存入集合中loginInfo.put("username",username);loginInfo.put("password",password);//将存放账号和密码的集合发送给后端进行校验return loginInfo;}
}

持续更新。。。

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

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

相关文章

VDA到Excel方案介绍之自定义邮件接收主题

VDA标准是德国汽车工业协会&#xff08;Verband der Automobilindustrie&#xff0c;简称VDA&#xff09;制定的一系列汽车行业标准。这些标准包括了汽车生产、质量管理、供应链管理、环境保护、安全性能等方面的规范和指南。VDA标准通常被德国和国际上的汽车制造商采用&#x…

【机器学习】sklearn特征值选取与处理

sklearn特征值选取与处理 文章目录 sklearn特征值选取与处理1. 调用数据集与数据集的划分2. 字典特征选取3. 英文文本特征值选取4. 中文特征值选取5. 中文分词文本特征抽取6. TfidfVectorizer特征抽取7. 归一化处理8. 标准化处理9. 过滤低方差特征10. 主成分分析11. 案例&#…

制作自己的前端组件库并上传到npm上

最近实现了自己的一个前端组件库demo&#xff0c;目前只上传了几个小组件。话不多说&#xff0c;上图&#xff1a; 我分了三个项目&#xff1a;yt-ui组件库、使用文档、demo。线上地址如下&#xff1a; [yt-ui组件库](mhfwork/yt-ui - npm) [组件库使用文档](介绍 | mhfwork/y…

docker应用部署---Tomcat的部署配置

1. 搜索tomcat镜像 docker search tomcat2. 拉取tomcat镜像 docker pull tomcat3. 创建容器&#xff0c;设置端口映射、目录映射 # 在/root目录下创建tomcat目录用于存储tomcat数据信息 mkdir ~/tomcat cd ~/tomcatdocker run -id --namec_tomcat \ -p 8080:8080 \ -v $PWD:…

拓扑排序详解

拓扑排序 如果说最短路径是有环图的应用&#xff0c;那么拓扑排序就是无环图的应用。 拓扑排序介绍 我们会把施工过程、生产流程、软件开发、教学安排等都当成- -个项目工程来对待&#xff0c;所有的工程都可分为若干个“活动”的子工程。例如下图是我这非专业人士绘制的一张…

bbr 流相互作用图示

类似 AIMD 收敛图&#xff0c;给出 bbr 的对应图示&#xff1a; bbr 多流相互作用非常复杂&#xff0c;和右下角的 AIMD 相比&#xff0c;毫无美感&#xff0c;但是看一眼左下角的 bbr 单流情况&#xff0c;又过于简陋&#xff0c;而 bbr 的核心就基于这简陋的假设。 浙江温…

ChatGPT从入门到精通

目录 什么是ChatGPT&#xff1f;ChatGPT能帮我干什么&#xff1f;标题在哪里可以使用ChatGPT&#xff1f;什么是ILoveChatGPT&#xff08;IMYAI&#xff09;&#xff1f;标题如何拥有头像&#xff1f;如何获取更多对话次数&#xff1f;!标题如何提问GPT&#xff1f;如何正确地利…

【黑马程序员】mysql进阶再进阶篇笔记

64. 进阶-锁-介绍(Av765670802,P121) 为了应对不同场景 全局锁-所有表 表计锁 一张表 行级锁 一行数据 65. 进阶-锁-全局锁-介绍(Av765670802,P122) 66. 进阶-锁-全局锁-一致性数据备份(Av765670802,P123) 67. 进阶-锁-表级锁-表锁(Av765670802,P124) 读锁、写锁 68. 进阶…

SSD1306 oled显示屏的驱动SPI接口

有IIC接口 和SPI接口 还有8080,6080接口等 arduino SPI接口 直接使用u8g2库实现 //U8G2_SSD1306_128X64_NONAME_F_4W_SW_SPI u8g2(U8G2_R0, /* clock*/ 13, /* data*/ 11, /* cs*/ 10, /* dc*/ 9, /* reset*/ 8); asrpro(SPI接口按下方修改&#xff0c;IIC接口官方有驱动&…

数据结构OJ题

目录 1.字符串左旋 2.字符串旋转结果 3.旋转数组 4.移除元素 本篇主要是讲解一些OJ题目。 1.字符串左旋 字符串左旋 实现一个函数&#xff0c;可以左旋字符串中的k个字符 例如&#xff1a; ABCD左旋一个字符得到BCDA ABCD左旋两个字符得到CDAB 方法1【暴力求解】 翻转1…

css overflow-x: scroll 滚动不展示/隐藏滚动条 /如何滚动

overflow-x:scroll 实现滚动效果 .scroll{width: 300rpx;height: 100rpx;//超出部分隐藏overflow-x: hidden;//禁止换行white-space: nowrap;//显示滚动条overflow-x: scroll; } 操作滚动条的伪类元素 ::-webkit-scrollbar — 整个滚动条.::-webkit-scrollbar-button — 滚动…

MSQL系列(八) Mysql实战-SQL存储引擎

Mysql实战-SQL存储引擎 前面我们讲解了索引的存储结构&#xff0c;BTree的索引结构&#xff0c;我们一般都知道Mysql的存储引擎有两种&#xff0c;MyISAM和InnoDB,今天我们来详细讲解下Mysql的存储引擎 文章目录 Mysql实战-SQL存储引擎1.存储引擎2.MyISAM的特点3. InnoDB的特…

Godot 官方2D C#重构(4):TileMap进阶使用

文章目录 前言完成内容项目节点结构TileMap设置图片资源备选图片添加物理碰撞添加y轴遮罩判断Y Sort Enable是干什么的&#xff1f; 脚本代码 前言 Godot 官方 教程 Godot 2d 官方案例C#重构 专栏 Godot 2d 重构 github地址 完成内容 项目节点结构 TileMap设置 图片资源 备选图…

信创优选,国产开源。Solon v2.5.11 发布

Solon 是什么框架&#xff1f; Java 生态级应用开发框架。从零开始构建&#xff0c;有自己的标准规范与开放生态&#xff08;历时五年&#xff0c;具备全球第二级别的生态规模&#xff09;。与其他框架相比&#xff0c;解决了两个重要的痛点&#xff1a;启动慢&#xff0c;费内…

Leetcode—21.合并两个有序链表【简单】

2023每日刷题&#xff08;十三&#xff09; Leetcode—21.合并两个有序链表 直接法实现代码 /*** Definition for singly-linked list.* struct ListNode {* int val;* struct ListNode *next;* };*/ struct ListNode* mergeTwoLists(struct ListNode* list1, struct…

Error: no matching distribution found for tensorflow-cpu==2.6.*

目录 install_tensorflow()安装过程中遇到的问题 查找解决方案过程中&#xff1a; 解决办法&#xff1a; install_tensorflow()安装过程中遇到的问题 在服务器上安装tensorflow时&#xff0c;遇到了一个报错信息&#xff1a; 在网上找到一个类似的错误&#xff08;TensorFlow…

Django 全局配置 settings 详解

文章目录 1 概述1.1 Django 目录结构 2 常用配置&#xff1a;settings.py2.1 注册 APP&#xff1a;INSTALLED_APPS2.2 模板路径&#xff1a;TEMPLATES2.3 静态文件&#xff1a;STATICFILES_DIRS2.4 数据库&#xff1a;DATABASES2.5 允许访问的主机&#xff1a;ALLOWED_HOSTS 1 …

大数据-Storm流式框架(五)---DRPC

DRPC 概念 分布式RPC&#xff08;DRPC&#xff09;背后的想法是使用Storm在运行中并行计算真正强大的函数。 Storm拓扑接收函数参数流作为输入&#xff0c;并为每个函数调用发送结果的输出流。 DRPC并不是Storm的一个特征&#xff0c;因为它基于Storm的spouts&#xff0c;bo…

RTMP在智能眼镜行业应用方案有哪些?

方案示例 视频直播&#xff1a;智能眼镜通常具有摄像头和显示屏&#xff0c;可以实时拍摄和显示视频。RTMP协议可以用于将智能眼镜拍摄的视频传输到服务器&#xff0c;以便其他用户可以实时观看。远程协作&#xff1a;智能眼镜可以用于远程协作&#xff0c;例如在医疗、建筑等…

Ansible脚本进阶---playbook

目录 一、playbooks的组成 二、案例 2.1 在webservers主机组中执行一系列任务&#xff0c;包括禁用SELinux、停止防火墙服务、安装httpd软件包、复制配置文件和启动httpd服务。 2.2 在名为dbservers的主机组中创建一个用户组&#xff08;mysql&#xff09;和一个用户&#xf…