您的位置:首页 > 编程语言 > Java开发

java使用JDBC连接MySql数据库

2017-02-14 11:17 411 查看

java使用JDBC连接MySql数据库

安装MySql

导入MySql驱动jar包

导入java.sql.*;

注册JDBC驱动程序

打开一个连接

执行一个查询

从结果集中提取数据

清理环境

安装MySql

MySql下载链接

下载社区版(免费)

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



导入MySql驱动jar包

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

MySql驱动包下载链接

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



下载之后导入到Eclipse中。

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



导入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!");
}
}


执行结果:



其他

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

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

参考资料

useSSL=false

这一句如果不加上会报错。原因是:新版本的MySQL要求是否进行ssl连接。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  java 数据库 mysql jdbc