jdbc 连接服务器mysql数据库_java使用JDBC连接MySql数据库

本文介绍了如何使用Java JDBC连接到MySQL数据库。首先,需要安装MySQL并导入驱动jar包到Eclipse项目。接着,导入java.sql.*包,注册JDBC驱动,打开数据库连接,执行查询并从结果集中提取数据。在代码示例中,展示了如何创建连接,执行SQL查询并打印结果。注意在URL中添加useUnicode和characterEncoding参数以确保正确的字符编码,同时为避免SSL连接错误,需设置useSSL=false。
摘要由CSDN通过智能技术生成

dc25a6aed567a1f78fbd189afc43525a.png

25780a9324822a72b53b464f8496f2f8.png

安装MySql

导入MySql驱动jar包

导入java.sql.*;

注册JDBC驱动程序

打开一个连接

执行一个查询

从结果集中提取数据

清理环境

安装MySql

MySql下载链接

下载社区版(免费)

傻瓜式安装过程。安装完成之后打开MySQL Workbench(图形操作界面)添加数据库与数据。

d5b22d45f17aa3869d07f8e7b89260aa.png

导入MySql驱动jar包

从MySql官网下载一个jar包导入到Eclipse工程中。

MySql驱动包下载链接

下载下面的zip包,上面的是用于Linux的压缩包

5b01c5137c677b229e1f83f9952771cc.png

下载之后导入到Eclipse中。

导入方法:右键项目名称 -> Properties ->Java Build Path -> Add External JARs

08f56c60f23eb2393e01a6158acc1956.png

导入java.sql.*;

在java代码中加入一下代码:

import java.sql.*;

注册JDBC驱动程序

Class.forName("com.mysql.jdbc.Driver");//JVM查找并加载指定的类,也就是说JVM会执行该类的静态代码段。

打开一个链接

这需要使用DriverManager.getConnection()方法来创建一个Connection对象,它代表一个物理连接的数据库。

执行一个查询

这需要使用一个对象类型Statement或PreparedStatement构建,并提交一个SQL语句到数据库。

从结果集中提取数据

这一步是必需的情况下,从数据库中获取数据。可以使用适当的ResultSet.getXXX()方法来检索的数据结果。

清理环境

应该明确地关闭所有的数据库资源,对依赖于JVM的垃圾收集。

代码示例:

package com.ycty.sql;

import java.sql.*;

public class sqltest {

// JDBC 驱动名及数据库 URL

static final String JDBC_DRIVER = "com.mysql.jdbc.Driver";

static final String DB_URL = "jdbc:mysql://localhost:3306/kunslibrary?useUnicode=true&characterEncoding=utf-8&useSSL=false";

// 数据库的用户名与密码,需要根据自己的设置

static final String USER = "kun";

static final String PASS = "";//密码未贴出

public static void main(String[]args)

{

Connection conn = null;

Statement stmt = null;

try{

// 注册 JDBC 驱动

Class.forName("com.mysql.jdbc.Driver");

// 打开链接

System.out.println("连接数据库...");

conn = DriverManager.getConnection(DB_URL,USER,PASS);

// 执行查询

System.out.println("读取数据...");

stmt = conn.createStatement();

String sql;

sql = "SELECT name FROM table1";

ResultSet rs = stmt.executeQuery(sql);

// 展开结果集数据库

while(rs.next()){

// 通过字段检索

String name = rs.getString("name");

// 输出数据

System.out.print("name: " + name);

System.out.print("\n");

}

// 完成后关闭

rs.close();

stmt.close();

conn.close();

}catch(SQLException se){

// 处理 JDBC 错误

se.printStackTrace();

}catch(Exception e){

// 处理 Class.forName 错误

e.printStackTrace();

}finally{

// 关闭资源

try{

if(stmt!=null) stmt.close();

}catch(SQLException se2){

}// 什么都不做

try{

if(conn!=null) conn.close();

}catch(SQLException se){

se.printStackTrace();

}

}

System.out.println("Goodbye!");

}

}

执行结果:

611e54867a8f9963bd4f8de576031268.png

其他

在URL中添加了useUnicode=true&characterEncoding=UTF-8&useSSL=false这一段

其中useUnicode=true&characterEncoding=UTF-8是指定字符的编码、解码格式。

参考资料

useSSL=false

这一句如果不加上会报错。原因是:新版本的MySQL要求是否进行ssl连接。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值