Java使用IntelliJ IDEA連接MySQL的詳細(xì)教程
本文將使用IntelliJ IDEA演示教程
安裝MySQL驅(qū)動(dòng)步驟
工具:
IntelliJ IDEA

MySQL8.0.18

MySQL連接驅(qū)動(dòng):mysql-connector-java-8.0.23.jar

連接MySQL需要下載驅(qū)動(dòng)
選擇Platform Independent

點(diǎn)擊Download

點(diǎn)擊No thanks, just start my download.

自動(dòng)開(kāi)始下載

解壓ZIP,復(fù)制出mysql-connector-java-8.0.23.jar文件(選擇自己想要放入的路徑)

打開(kāi)IDEA
(由于安裝了漢化包,英文版的用戶(hù)可以對(duì)應(yīng)圖標(biāo)來(lái)操作)
選中菜單欄文件,之后選擇項(xiàng)目結(jié)構(gòu)

選擇Libraries

點(diǎn)擊+

選擇mysql-connector-java-8.0.23.jar文件

添加成功

點(diǎn)擊Modules

點(diǎn)擊Dependencies,然后點(diǎn)擊+

選擇JARs or directories...

選擇mysql-connector-java-8.0.23.jar文件

打上勾

外部庫(kù)已經(jīng)顯示mysql-connector-java-8.0.23.jar

添加驅(qū)動(dòng)步驟結(jié)束!??!
下面開(kāi)始連接MySQL
導(dǎo)包操作
import java.sql.*;
定義JDBC驅(qū)動(dòng)名、數(shù)據(jù)庫(kù)URL,用戶(hù)名,密碼
MySQL 8.0 以下版本 - JDBC 驅(qū)動(dòng)名及數(shù)據(jù)庫(kù) URL
static final String JDBC_DRIVER = "com.mysql.jdbc.Driver"; static final String DB_URL = "jdbc:mysql://localhost:3306/RUNOOB";
MySQL 8.0 以上版本 - JDBC 驅(qū)動(dòng)名及數(shù)據(jù)庫(kù) URL
static final String JDBC_DRIVER = "com.mysql.cj.jdbc.Driver"; static final String DB_URL = "jdbc:mysql://localhost:3306/RUNOOB?useSSL=false&allowPublicKeyRetrieval=true&serverTimezone=UTC";
這里要說(shuō)明一下數(shù)據(jù)庫(kù) URL
java 無(wú)論是通過(guò) JDBC 或是 使用其他的工具連接 mysql 數(shù)據(jù)庫(kù)時(shí),連接 URL 帶上一定的參數(shù),可以解決很多的問(wèn)題。
不帶參數(shù)的URL格式如下:
jdbc:mysql://localhost:3306/數(shù)據(jù)庫(kù)名
有用的參數(shù)如下:
1.解決數(shù)據(jù)亂碼的問(wèn)題,加參數(shù):characterEncoding=utf-8
2.打開(kāi)mysql存儲(chǔ)批量數(shù)據(jù)的開(kāi)關(guān)
如果不打開(kāi)存儲(chǔ)批量數(shù)據(jù)開(kāi)關(guān),存儲(chǔ)數(shù)據(jù)會(huì)相當(dāng)慢,需要在 URL 中加入?yún)?shù):rewriteBatchedStatement = true
加入這兩個(gè)參數(shù)后,url 的完整格式為:
jdbc:mysql://localhost:3306/數(shù)據(jù)庫(kù)名?characterEncoding=utf-8&rewriteBatchedStatement=true
數(shù)據(jù)庫(kù)的用戶(hù)名與密碼,需要根據(jù)自己的設(shè)置
static final String USER = "root"; static final String PASS = "root";
連接數(shù)據(jù)庫(kù)
數(shù)據(jù)庫(kù):

以下實(shí)例使用了 JDBC 連接 MySQL 數(shù)據(jù)庫(kù),注意一些數(shù)據(jù)如用戶(hù)名,密碼需要根據(jù)你的開(kāi)發(fā)環(huán)境來(lái)配置:
package MySQLTest;
import java.sql.*;
public class Test {
// MySQL 8.0 以上版本 - JDBC 驅(qū)動(dòng)名及數(shù)據(jù)庫(kù) URL
static final String JDBC_DRIVER = "com.mysql.cj.jdbc.Driver";
static final String DB_URL = "jdbc:mysql://localhost:3306/lcz?characterEncoding=utf-8&rewriteBatchedStatement=true";
// 數(shù)據(jù)庫(kù)的用戶(hù)名與密碼,需要根據(jù)自己的設(shè)置
static final String USER = "root";
static final String PASS = "root";
public static void main(String[] args) {
Connection conn = null;
Statement stmt = null;
try{
// 注冊(cè) JDBC 驅(qū)動(dòng)
Class.forName(JDBC_DRIVER);
// 打開(kāi)鏈接
System.out.println("連接數(shù)據(jù)庫(kù)...");
conn = DriverManager.getConnection(DB_URL,USER,PASS);
// 執(zhí)行查詢(xún)
System.out.println(" 實(shí)例化Statement對(duì)象...");
stmt = conn.createStatement();
String sql;
sql = "SELECT * FROM lcztest";
ResultSet rs = stmt.executeQuery(sql);
// 展開(kāi)結(jié)果集數(shù)據(jù)庫(kù)
while(rs.next()){
// 通過(guò)字段檢索
int id = rs.getInt("id");
String name = rs.getString("name");
String age = rs.getString("age");
// 輸出數(shù)據(jù)
System.out.print("ID: " + id);
System.out.print(", 姓名: " + name);
System.out.print(", 年齡: " + age);
System.out.print("\n");
}
// 完成后關(guān)閉
rs.close();
stmt.close();
conn.close();
}catch(SQLException se){
// 處理 JDBC 錯(cuò)誤
se.printStackTrace();
}catch(Exception e){
// 處理 Class.forName 錯(cuò)誤
e.printStackTrace();
}finally{
// 關(guān)閉資源
try{
if(stmt!=null) stmt.close();
}catch(SQLException se2){
}// 什么都不做
try{
if(conn!=null) conn.close();
}catch(SQLException se){
se.printStackTrace();
}
}
System.out.println("連接數(shù)據(jù)庫(kù)結(jié)束!");
}
}
運(yùn)行:

教程到此結(jié)束!??!
總結(jié)
到此這篇關(guān)于Java使用IntelliJ IDEA連接MySQL的文章就介紹到這了,更多相關(guān)Java IDEA連接MySQL內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
java如何實(shí)現(xiàn)postman中用x-www-form-urlencoded參數(shù)的請(qǐng)求
在Java開(kāi)發(fā)中,模擬Postman發(fā)送x-www-form-urlencoded類(lèi)型的請(qǐng)求是一個(gè)常見(jiàn)需求,本文主要介紹了如何在Java中實(shí)現(xiàn)這一功能,首先,需要通過(guò)導(dǎo)入http-client包來(lái)創(chuàng)建HTTP客戶(hù)端,接著,利用該客戶(hù)端發(fā)送Post請(qǐng)求2024-09-09
詳解基于Mybatis-plus多租戶(hù)實(shí)現(xiàn)方案
這篇文章主要介紹了詳解基于Mybatis-plus多租戶(hù)實(shí)現(xiàn)方案,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-04-04
SpringCloud Gateway實(shí)現(xiàn)限流功能詳解
SpringCloud Gateway 是 Spring Cloud 的一個(gè)全新項(xiàng)目,它旨在為微服務(wù)架構(gòu)提供一種簡(jiǎn)單有效的統(tǒng)一的 API 路由管理方式。這篇文章主要介紹了SpringCloud Gateway實(shí)現(xiàn)限流,需要的朋友可以參考下2022-11-11
JAVA導(dǎo)出EXCEL表格的實(shí)例教學(xué)
在本文中我們給大家整理了關(guān)于JAVA導(dǎo)出EXCEL表格的實(shí)例教學(xué)以及相關(guān)知識(shí)點(diǎn),需要的朋友們學(xué)習(xí)下。2019-02-02
Java數(shù)據(jù)結(jié)構(gòu)之單鏈表的實(shí)現(xiàn)與面試題匯總
由于順序表的插入刪除操作需要移動(dòng)大量的元素,影響了運(yùn)行效率,因此引入了線(xiàn)性表的鏈?zhǔn)酱鎯?chǔ)——單鏈表。本文為大家介紹了單鏈表的實(shí)現(xiàn)與面試題匯總,感興趣的可以了解一下2022-10-10
Java對(duì)象創(chuàng)建內(nèi)存案例解析
這篇文章主要介紹了Java對(duì)象創(chuàng)建內(nèi)存案例解析,本篇文章通過(guò)簡(jiǎn)要的案例,講解了該項(xiàng)技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下2021-08-08
ShardingSphere jdbc集成多數(shù)據(jù)源的實(shí)現(xiàn)步驟
本文主要介紹了ShardingSphere jdbc集成多數(shù)據(jù)源的實(shí)現(xiàn)步驟,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-10-10
MyBatis實(shí)現(xiàn)動(dòng)態(tài)SQL更新的代碼示例
本文博小編將帶領(lǐng)大家學(xué)習(xí)如何利用 MyBatis 攔截器機(jī)制來(lái)優(yōu)雅的實(shí)現(xiàn)這個(gè)需求,文中通過(guò)代碼示例介紹的非常詳細(xì),具有一定的參考價(jià)值,需要的朋友可以參考下2023-07-07

