JDBC连接MYSQL分步详解

网友投稿 340 2022-08-22


JDBC连接MYSQL分步详解

目录什么是JDBC?在MAVEN中引入驱动连接数据库并测试加载驱动建立数据库连接执行查询语句关闭数据库连接SQL类型对应的java类型

这里是JAVA成仙之路

什么是JDBC?

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

在MAVEN中引入驱动

mysql

mysql-connector-java

8.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 {

http:////加载驱动

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类型CHARjava.lang.StringVARCHARjava.lang.StringLONGVARCHARjava.lang.StringNUMERICjava.mathADygbosPm.BigDecimalDECIMALjava.math.BigDecimalBITbooleanTINYINTbyteSMALLINTshortINTEGERintBIGINTlongREALfloatFLOATdoubleDOUBLEdoubleBINARYbyte[]VARBINARYbyte[]LONGVARBINARYbyte[]DATEjava.sql.DateTIMEjava.sql.TimeTIMESTAMPjava.sql.TimestampBLOBjava.sql.BlobCLOBjava.sql.ClobArrayjava.sql.ArrayREFjava.sql.RefStructjava.sql.Struct


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:java分布式面试系统限流最佳实践
下一篇:Java泛型T,E,K,V,N,?与Object区别和含义
相关文章

 发表评论

暂时没有评论,来抢沙发吧~