jdbc连接mysql数据库步骤

发布时间: 2023-11-21 11:22 阅读: 文章来源:1MUMB1330PS
什么是JDBC?

Java数据库连接,(Java Database Connectivity,简称JDBC)是Java语言中用来规范客户端程序如何来访问数据库的应用程序接口,提供了诸如查询和更新数据库中数据的方法。JDBC也是Sun Microsystems的商标。我们通常说的JDBC是面向关系型数据库的。

在MAVEN中引入驱动mysqlmysql-connector-java8.0.28连接数据库并测试

连接数据库分为以下几步:

加载驱动建立数据库连接执行相关的语句关闭连接加载驱动

在JDBC8中其实会自动加载,这里还是按规范演示一下。代码如下:

public class Test {public static void main(String[] args) throws SQLException, ClassNotFoundException {var a = Class.forName("com.mysql.cj.jdbc.Driver");System.out.println(a);}}

结果:驱动加载成功

建立数据库连接

代码:

public class Test {public static void main(String[] args) throws SQLException, ClassNotFoundException {//加载驱动var a = Class.forName("com.mysql.cj.jdbc.Driver");System.out.println(a);//连接数据库 localhost是连接本地IP,3307是数据库的端口,一般端口默认是3306,这里我的端口改过参考一下就可以。//test 是要连接的数据库名,root是账号,我没有设置密码所以不用写。Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3307/test?user=root");System.out.println(conn);}}

结果:

执行查询语句

代码:

public class Test {public static void main(String[] args) throws SQLException, ClassNotFoundException {//加载驱动var a = Class.forName("com.mysql.cj.jdbc.Driver");System.out.println(a);//连接数据库 localhost是连接本地IP,3307是数据库的端口,一般端口默认是3306,这里我的端口改过参考一下就可以。//test 是要连接的数据库名,root是账号,我没有设置密码所以不用写。Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3307/test?user=root");System.out.println(conn);//创建SQL语句执行工具Statement st = conn.createStatement();//ResultSet的意思是结果集,查询返回的结果放在ResultSet对象中,结果集中有一个光标每次只指一行,并且是从第一行开始ResultSet rs = st.executeQuery("select * from user");//判断当前列是否有值//rs.next()rs中的光标向下移动一位while (rs.next()) {//rs.getString将当前列作为String类型保存,参数为当前列的标签System.out.println(rs.getString("name"));}}}

结果:

关闭数据库连接public class Test {public static void main(String[] args) throws SQLException, ClassNotFoundException {//加载驱动var a = Class.forName("com.mysql.cj.jdbc.Driver");System.out.println(a);//连接数据库 localhost是连接本地IP,3307是数据库的端口,一般端口默认是3306,这里我的端口改过参考一下就可以。//test 是要连接的数据库名,root是账号,我没有设置密码所以不用写。Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3307/test?user=root");System.out.println(conn);//创建SQL语句执行工具Statement st = conn.createStatement();//查询sql语句返回一个ResultSet对象ResultSet rs = st.executeQuery("select * from user");//判断当前列是否有值//rs.next()rs中的光标向下移动一位while (rs.next()) {//rs.getString将当前列作为String类型保存,参数为当前列的标签System.out.println(rs.getString("name"));}//关闭连接conn.close();}}最后附上SQL类型对应的JAVA类型

SQL类型

Java类型

char

java.lang.String

VARCHAR

java.lang.String

LONGVARCHAR

java.lang.String

NUMERIC

java.math.BigDecimal

DECIMAL

java.math.BigDecimal

BIT

boolean

TINYINT

byte

SMALLINT

short

INTEGER

int

BIGINT

long

REAL

float

FLOAT

double

DOUBLE

double

BINARY

byte[]

VARBINARY

byte[]

LONGVARBINARY

byte[]

DATE

java.sql.Date

TIME

java.sql.Time

TIMESTAMP

java.sql.Timestamp

BLOB

java.sql.Blob

CLOB

java.sql.Clob

Array

java.sql.Array

REF

java.sql.Ref

Struct

java.sql.Struct

如果感觉小编写得不错,请素质三连:点赞+转发+关注。我会努力写出更好的作品分享给大家。更多JAVA进阶学习资料小编已打包好,可以关注私信找我领取哦!

原文 https://bbs.huaweicloud.com/blogs/348327

•••展开全文