Java怎么连接MySQL数据库
发表于:2024-11-23 作者:千家信息网编辑
千家信息网最后更新 2024年11月23日,今天小编给大家分享一下Java怎么连接MySQL数据库的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一
千家信息网最后更新 2024年11月23日Java怎么连接MySQL数据库
今天小编给大家分享一下Java怎么连接MySQL数据库的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。
首先说明,由于是8版本的数据库,所以配置类的写法上与5版本的有所区别,需要注意,同时用idea或eclipse时需要导入jar包
如果想要下载8版本不同的jar包只需要修改8.0.28为指定版本即可。
idea导入jar包的方法如下:
然后是代码部分,首先先建表:
CREATE TABLE `train_message` ( `id` int NOT NULL AUTO_INCREMENT COMMENT '主键id', `train_name` varchar(20) NOT NULL COMMENT '列车名', `origin` varchar(30) NOT NULL COMMENT '始发地', `terminal` varchar(30) NOT NULL COMMENT '终到地', `departure_time` timestamp NOT NULL COMMENT '出站时间', `state` varchar(10) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '正常' COMMENT '列车状态', PRIMARY KEY (`id`)) ENGINE=InnoDB AUTO_INCREMENT=9 DEFAULT CHARSET=utf8mb3
然后创建连接的配置类DbConfig.java,localhost是本机的ip地址,如果有服务器就填服务器的ip地址,message是数据库的名字,这里一张图说下有很多新手误解的名字
import java.sql.Connection;import java.sql.DriverManager;import java.sql.SQLException;/** * 数据库配置类 * @author 景苒 */public class DbConfig { public Connection dbConfig() throws SQLException { try { Class.forName("com.mysql.cj.jdbc.Driver"); }catch (Exception e) { System.out.print("加载驱动失败!"); e.printStackTrace(); } String url = "jdbc:mysql://localhost:3306/message?useSSL=false&useUnicode=true&characterEncoding=utf-8&serverTimezone=GMT%2B8&allowPublicKeyRetrieval=true"; String user = "root"; String password = "123456"; return DriverManager.getConnection(url, user, password); }}
然后写下主函数Main.java,这里主函数的函数体可以在最后再写,需要什么功能就把注释打开就好,快捷注释的方法,选中这句话,按ctrl加/,就能全注释了。
import java.sql.SQLException;/** * 主函数,调用功能 * @author 景苒 */public class Main { public static void main(String[] args) throws SQLException {// new GetMessage().getMessage();// new UpdateTrainState().updateTrainState();// new InsertTrain().insertTrain();// new GetNumber().getNumber(); }}
然后是每个的功能:
1.查询沈阳到武汉的所有列车信息,按出发时间先后排序
建GetMessage.java类
import java.sql.Connection;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.SQLException;/** * 查询沈阳到武汉的所有列车信息,按出发时间先后排序 * @author 景苒 */public class GetMessage { public void getMessage() throws SQLException { Connection con = new DbConfig().dbConfig(); String sql = "select * from `train_message` where origin = ? and terminal = ? ORDER BY departure_time ASC"; String origin = "沈阳"; String terminal = "武汉"; PreparedStatement ps = con.prepareStatement(sql); ps.setString(1, origin); ps.setString(2, terminal); ResultSet rs = ps.executeQuery(); try { while (rs.next()) { System.out.println("列车名:" + rs.getString("train_name") + " 始发站:" + rs.getString("origin") + " 终到站:" + rs.getString("terminal") + " 出发时间:" + rs.getString("departure_time") + " 列车状态:" + rs.getString("state")); } }catch (SQLException e) { e.printStackTrace(); }finally { ps.close(); con.close(); } }}
2.修改T2255列车的状态为停运
建UpdateTrainState.java类
import java.sql.Connection;import java.sql.SQLException;import java.sql.Statement;/** * 修改T2255列车的状态为停运 * @author 景苒 */public class UpdateTrainState { public void updateTrainState() throws SQLException { Connection con = new DbConfig().dbConfig(); String sql = "UPDATE `train_message` SET state = '停运' WHERE train_name = 'T2255'"; Statement statement = con.createStatement(); try { int i = statement.executeUpdate(sql); if (i > 0) { System.out.println("更新成功"); }else { System.out.println("更新失败"); } }catch (SQLException e) { e.printStackTrace(); }finally { statement.close(); con.close(); } }}
3.新增一辆列车信息(自己输入)
建InsertTrain.java类
import java.sql.Connection;import java.sql.PreparedStatement;import java.sql.SQLException;import java.util.Scanner;/** * 新增一辆列车信息(自己输入) * 始发时间为timestamp类型,输入时需要确保格式正确,如:2019-01-01 00:00:00 * @author 景苒 */public class InsertTrain { public void insertTrain() throws SQLException { Connection con = new DbConfig().dbConfig(); Scanner scanner = new Scanner(System.in); String sql = "insert into `train_message` values(null, ?, ?, ?, ?, default)"; System.out.print("请输入列车名:"); String trainName = scanner.nextLine(); System.out.print("请输入始发站:"); String origin = scanner.nextLine(); System.out.print("请输入终到站:"); String terminal = scanner.nextLine(); System.out.print("请输入始发时间:"); String departureTime = scanner.nextLine(); PreparedStatement ps = con.prepareStatement(sql); ps.setString(1, trainName); ps.setString(2, origin); ps.setString(3, terminal); ps.setString(4, departureTime); try { int i = ps.executeUpdate(); if (i > 0) { System.out.println("添加成功"); }else { System.out.println("添加失败"); } }catch (SQLException e) { e.printStackTrace(); }finally { ps.close(); con.close(); } }}
4.查询状态为正常的列车数量
建GetNumber.java类
import java.sql.Statement;/** * 查询状态为正常的列车数量 * @author 景苒 */public class GetNumber { public void getNumber() throws SQLException { Connection con = new DbConfig().dbConfig(); String sql = "select count(state) from `train_message` where state = '正常'"; Statement statement = con.createStatement(); try { ResultSet resultSet = statement.executeQuery(sql); while (resultSet.next()) { System.out.println("状态为正常的列车数量为:" + resultSet.getInt(1)); } }catch (SQLException e){ e.printStackTrace(); }finally { statement.close(); con.close(); } }}
最后附上navicat的属性结构图和样例插入的语句
数据根据自己需求自行写入几个就行,以上就是java连接mysql数据库的实例代码,eclipse也大同小异,就导入jar包的方式不同。
以上就是"Java怎么连接MySQL数据库"这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注行业资讯频道。
列车
数据
状态
输入
数据库
时间
信息
函数
版本
知识
篇文章
查询
不同
功能
数量
注释
武汉
沈阳
更新
配置
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
数据库课程资源百度云
江西dell服务器报价单
网络安全奖学金参评率
深圳诺维尔科技互联网公司
数据库韩束
数据库文件使用什么更安全
数据库操作安全措施
网络安全低中高风险怎么处置
怎样添加数据库的面板
网络安全工程师可以兼职吗
关于网络安全的检查总结
软件开发要学编程什么知识
门户云网络技术有限公司
在交易所租个服务器
中国工业企业数据库匹配数据
网络安全简单手抄报六年级
mc服务器模板下载
数据库备份在哪里看
网络安全知识竞赛的图画
微信软件开发过程实例
联机服务器大全
终端无法连接服务器是什么故障
关于部队网络安全的论述
数据库联合主键可以更改吗
计算机网络技术 课件下载
爬虫数据怎么上传到服务器
奉贤区推广软件开发设备
软件开发的过程流
sql数据库连接时错误5
服务器一直没关机的网游