当前位置: 首页 > 图灵资讯 > 技术篇> Java连接MySQL以及出现的问题

Java连接MySQL以及出现的问题

来源:图灵教育
时间:2023-05-25 09:11:00

Java需要JDBC(驱动文件)来连接数据库。什么是JDBC?.

Java数据库连接,(Java Database Connectivity,JDBC是Java语言中用来规范客户端程序如何访问数据库的应用程序接口,并提供查询和更新数据库中数据的方法。

  • JDBC下载
package sqltest;import java.sql.*;public class TestSql {public static void main(String[] args) (//加载驱动程序try {Class.forName("com.mysql.cj.jdbc.Driver");System.out.println(成功加载驱动程序);} catch (ClassNotFoundException e) {e.printStackTrace();}///链接数据库Stringng str = "jdbc:mysql://127.0.0.1:3306/test?useUnicode=true&characterEncoding=UTF-8&userSSL=false&serverTimezone=GMT%2B8";Connection conn=null;try {conn=DriverManager.getConnection(str,"root","123456");if (!conn.isClosed()) {System.out.println(成功连接数据库);}} catch (SQLException e) {System.out.println(”链接数据库失败: "+e.getMessage());}try{Statement stmt = conn.createStatement();    ResultSet rs = stmt.executeQuery("select user_name,age from student");        while(rs.next(){///如果对象中有数据,它将被循环打印          System.out.println(rs.getString("user_name")+","+rs.getInt("age"));      }}catch(SQLException e){System.out.println(查询失败);}}}

需要注意的是,大多数互联网对应的都是5.x版本,如果你最近下载,你将不可避免地下载高版本的驱动文件,这可能是错误的,以下方法可能会帮助你。

一个是Class.forName(),在5.x版驱动文件jar包对应:Class.forName("com.mysql.jdbc.Driver");加载数据库驱动的语句。如果使用8.0x版本的数据库驱动文件,则应改为以下内容:Class.forName("com.mysql.cj.jdbc.Driver");

另一种是URL的设置也必须修改,原来的URL如下:String ur="jdbc:mysql://127.0.0.1:3306/test";应修改如下:String url="jdbc:mysql://127.0.0.1:3306/testuseUnicode=true&characterEncoding=UTF->8&userSSL=false&serverTimezone=GMT%2B8"; test 是数据库的表名。