- windows环境(默认已有)
- JDK1.8+eclipse(默认已有)
- MySQL-8.0.x下载安装
- 工具(Navicat for MySQL)连接MySQL
- java(mysql-connector-java)连接MySQL
2.Mysql-8.0.x下载安装
- 官网下载下载地址:https://dev.mysql.com/downloads/mysql/ 下拉找到如图所示点击下载:
- 将解压文件解压到你安装的目录:D:\Tools\mysql-8.0.11-winx64,新建一个my.ini文件和一个data文件夹
其中my.ini文件内容如下,红色部分根据实际情况修改:
配置mysql
添加系统环境变量,快捷键“WIN+PauseBreak”—“高级系统设置”—“高级”—“环境变量”—“系统变量”—“path”—“编辑”
管理员的身份打开cmd窗口跳转路径到D:\Tools\mysql-8.0.11-winx64\bin
执行$ mysqld –initialize –user=mysql –console 初始化数据库名称为mysql(后续有用),会生成一个临时密码。
执行$ mysqld -install 进行服务的添加
执行$ net start mysql 启动数据库服务
执行$ mysql -u root -p 进行登录数据库,这时提示需要密码,然后就是用你上面的密码登录
执行$ ALTER USER root@localhost IDENTIFIED BY ‘123456’; 注意命令最后有分号,修改密码为:123456
3.mysql-connector-java使用下载
- 官网下载下载地址:https://dev.mysql.com/downloads/connector/j/ 找到如图所示点击下载:
解压缩后可以找到mysql-connector-java-8.0.11.jar eclipse新建工程
打开eclipse,依次选择“File”—“New”—“Java Projcet”—-填写工程名—-“finish”
“src”文件右击—“new”—“class”,创建测试文件test.java文件
工程名“JDBC_Demo”右击创建测试文件lib文件夹,并将步骤1中的mysql-connector-java-8.0.11.jar复制到该文件夹下
配置工程链接库文件,工程名“JDBC_Demo”右击 “Build Path”——“Add External …”—选中工程中的mysql-connector-java-8.0.11.jar复制如下代码到test.java文件(要修改的可能就是数据库名称,用户名称,密码)
package com.jdbc.demo;
import java.sql.*;
public class test {
static final String JDBC_DRIVER = "com.mysql.cj.jdbc.Driver";
static final String DB_URL = "jdbc:mysql://localhost:3306/mysql?&useSSL=false&serverTimezone=UTC";
// 数据库的用户名与密码,需要根据自己的设置
static final String USER = "root";
static final String PASS = "hryycfl@123";
static final String querysql = "SELECT id, name, url FROM websites"
static final String creatsql = "CREATE TABLE `websites` (\r\n" +
" `id` int(11) NOT NULL AUTO_INCREMENT,\r\n" +
" `name` char(20) NOT NULL DEFAULT '' COMMENT '站点名称',\r\n" +
" `url` varchar(255) NOT NULL DEFAULT '',\r\n" +
" `alexa` int(11) NOT NULL DEFAULT '0' COMMENT 'Alexa 排名',\r\n" +
" `country` char(10) NOT NULL DEFAULT '' COMMENT '国家',\r\n" +
" PRIMARY KEY (`id`)\r\n" +
") ENGINE=InnoDB AUTO_INCREMENT=10 DEFAULT CHARSET=utf8;";
static final String insertsql ="INSERT INTO `websites` VALUES"
+"('1', 'Google', 'https://www.google.cm/', '1', 'USA'),"
+"('2', '淘宝', 'https://www.taobao.com/', '13', 'CN'), "
+"('3', '菜鸟教程', 'http://www.runoob.com', '5892', ''),"
+"('4', '微博', 'http://weibo.com/', '20', 'CN'),"
+"('5', 'Facebook', 'https://www.facebook.com/', '3', 'USA');";
public static void main(String[] args) {
// JDBC 驱动名及数据库 URL
Connection conn = null;
Statement stmt = null;
try{
Class.forName(JDBC_DRIVER);// 注册 JDBC 驱动
System.out.println("连接数据库..."); // 打开链接
conn = DriverManager.getConnection(DB_URL,USER,PASS);
System.out.println(" 实例化Statement对象...");
stmt = conn.createStatement();
if (0 == stmt.executeLargeUpdate(creatsql)) { // 数据库中创建表
System.out.println("成功创建表!");
} else {
System.out.println("创建表失败!");
}
stmt.executeUpdate(insertsql) ; //表中插入数据
ResultSet rs = stmt.executeQuery(querysql); // 执行查询
// 展开结果集数据库
while(rs.next()){
// 通过字段检索
int id = rs.getInt("id");
String name = rs.getString("name");
String url = rs.getString("url");
// 输出数据
System.out.print("ID: " + id);
System.out.print(", 站点名称: " + name);
System.out.print(", 站点 URL: " + url);
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!");
}
}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
- 54
- 55
- 56
- 57
- 58
- 59
- 60
- 61
- 62
- 63
- 64
- 65
- 66
- 67
- 68
- 69
- 70
- 71
- 72
- 73
- 74
- 75
- 76
- 77
- 78
- 79
- 80
- 81
- 82
- 83
- 84
- 85
- 86
- 87
- 88
- 89
- 90
- 91
- 92
- 93
- 94
配置结束可以运行测试,:)
6. 运行, “test.java”右击“Run As”—“java application”
附:
Java MySQL 连接
本章节我们为大家介绍 Java 如何使用 使用 JDBC 连接 MySQL 数据库。
Java 连接 MySQL 需要驱动包,最新版下载地址为:http://dev.mysql.com/downloads/connector/j/,
解压后得到jar库文件,然后在对应的项目中导入该库文件。
你可以下载本站提供的 jar 包:
mysql-connector-java-5.1.39-bin.jar
本实例使用的是 Eclipse,导入 jar 包:
1. 启动Mysql并创建test数据库:
创建测试数据:
接下来我们在 MySQL 中创建 test 数据库,并创建 websites 数据表,表结构如下:
CREATE TABLE `websites` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` char(20) NOT NULL DEFAULT '' COMMENT '站点名称',
`url` varchar(255) NOT NULL DEFAULT '',
`alexa` int(11) NOT NULL DEFAULT '0' COMMENT 'Alexa 排名',
`country` char(10) NOT NULL DEFAULT '' COMMENT '国家',
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=10 DEFAULT CHARSET=utf8;
插入一些数据:
INSERT INTO `websites` VALUES ('1', 'Google', 'https://www.google.cm/', '1', 'USA'), ('2', '淘宝', 'https://www.taobao.com/', '13', 'CN'), ('3', '菜鸟教程', 'http://www.runoob.com', '5892', ''), ('4', '微博', 'http://weibo.com/', '20', 'CN'), ('5', 'Facebook', 'https://www.facebook.com/', '3', 'USA');
数据表显示如下:
2. 代码:
连接数据库
以下实例使用了 JDBC 连接 MySQL 数据库,注意一些数据如用户名,密码需要根据你的开发环境来配置:
package com.hit.demo5;
/** * @Author: zyx * @Date: 2019/4/1 15:50 * @Description: **/
import java.sql.*;
public class MySQLDemo {
static final String JDBC_DRIVER = "com.mysql.jdbc.Driver";
static final String DB_URL = "jdbc:mysql://localhost:3306/test";
static final String USER = "root";
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(" 实例化Statement对象...");
stmt = conn.createStatement();
String sql;
sql = "SELECT * FROM websites";
ResultSet rs = stmt.executeQuery(sql);
// 展开结果集数据库
while (rs.next()) {
// 通过字段检索
int id = rs.getInt("id");
String name = rs.getString("name");
String url = rs.getString("url");
int alexa = rs.getInt("alexa");
String country = rs.getString("country");
// 输出数据
System.out.print("ID: " + id);
System.out.print(", 站点名称: " + name);
System.out.print(", 站点 URL: " + url);
System.out.print(", 站点排名: " + alexa);
System.out.print(", 站点国家: " + country);
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!");
}
}
3. 运行结果: