Java使用IntelliJ IDEA連接MySQL的詳細教程
本文將使用IntelliJ IDEA演示教程
安裝MySQL驅動步驟
工具:
IntelliJ IDEA
MySQL8.0.18
MySQL連接驅動:mysql-connector-java-8.0.23.jar
連接MySQL需要下載驅動
選擇Platform Independent
點擊Download
點擊No thanks, just start my download.
自動開始下載
解壓ZIP,復制出mysql-connector-java-8.0.23.jar文件(選擇自己想要放入的路徑)
打開IDEA
(由于安裝了漢化包,英文版的用戶可以對應圖標來操作)
選中菜單欄文件,之后選擇項目結構
選擇Libraries
點擊+
選擇mysql-connector-java-8.0.23.jar文件
添加成功
點擊Modules
點擊Dependencies,然后點擊+
選擇JARs or directories...
選擇mysql-connector-java-8.0.23.jar文件
打上勾
外部庫已經(jīng)顯示mysql-connector-java-8.0.23.jar
添加驅動步驟結束?。?!
下面開始連接MySQL
導包操作
import java.sql.*;
定義JDBC驅動名、數(shù)據(jù)庫URL,用戶名,密碼
MySQL 8.0 以下版本 - JDBC 驅動名及數(shù)據(jù)庫 URL
static final String JDBC_DRIVER = "com.mysql.jdbc.Driver"; static final String DB_URL = "jdbc:mysql://localhost:3306/RUNOOB";
MySQL 8.0 以上版本 - JDBC 驅動名及數(shù)據(jù)庫 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";
這里要說明一下數(shù)據(jù)庫 URL
java 無論是通過 JDBC 或是 使用其他的工具連接 mysql 數(shù)據(jù)庫時,連接 URL 帶上一定的參數(shù),可以解決很多的問題。
不帶參數(shù)的URL格式如下:
jdbc:mysql://localhost:3306/數(shù)據(jù)庫名
有用的參數(shù)如下:
1.解決數(shù)據(jù)亂碼的問題,加參數(shù):characterEncoding=utf-8
2.打開mysql存儲批量數(shù)據(jù)的開關
如果不打開存儲批量數(shù)據(jù)開關,存儲數(shù)據(jù)會相當慢,需要在 URL 中加入?yún)?shù):rewriteBatchedStatement = true
加入這兩個參數(shù)后,url 的完整格式為:
jdbc:mysql://localhost:3306/數(shù)據(jù)庫名?characterEncoding=utf-8&rewriteBatchedStatement=true
數(shù)據(jù)庫的用戶名與密碼,需要根據(jù)自己的設置
static final String USER = "root"; static final String PASS = "root";
連接數(shù)據(jù)庫
數(shù)據(jù)庫:
以下實例使用了 JDBC 連接 MySQL 數(shù)據(jù)庫,注意一些數(shù)據(jù)如用戶名,密碼需要根據(jù)你的開發(fā)環(huán)境來配置:
package MySQLTest; import java.sql.*; public class Test { // MySQL 8.0 以上版本 - JDBC 驅動名及數(shù)據(jù)庫 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ù)庫的用戶名與密碼,需要根據(jù)自己的設置 static final String USER = "root"; static final String PASS = "root"; public static void main(String[] args) { Connection conn = null; Statement stmt = null; try{ // 注冊 JDBC 驅動 Class.forName(JDBC_DRIVER); // 打開鏈接 System.out.println("連接數(shù)據(jù)庫..."); conn = DriverManager.getConnection(DB_URL,USER,PASS); // 執(zhí)行查詢 System.out.println(" 實例化Statement對象..."); stmt = conn.createStatement(); String sql; sql = "SELECT * FROM lcztest"; ResultSet rs = stmt.executeQuery(sql); // 展開結果集數(shù)據(jù)庫 while(rs.next()){ // 通過字段檢索 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"); } // 完成后關閉 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("連接數(shù)據(jù)庫結束!"); } }
運行:
教程到此結束?。?!
總結
到此這篇關于Java使用IntelliJ IDEA連接MySQL的文章就介紹到這了,更多相關Java IDEA連接MySQL內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
Java使用Callable和Future創(chuàng)建線程操作示例
這篇文章主要介紹了Java使用Callable和Future創(chuàng)建線程操作,結合實例形式分析了java使用Callable接口和Future類創(chuàng)建線程的相關操作技巧與注意事項,需要的朋友可以參考下2019-09-09Springboot使用put、delete請求報錯405的處理
這篇文章主要介紹了Springboot使用put、delete請求報錯405的處理方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-07-07java中@JsonValue和@JsonCreator使用
本文主要介紹了java中@JsonValue和@JsonCreator使用,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2024-06-06SpringBoot實現(xiàn)分布式任務調度的詳細步驟
隨著互聯(lián)網(wǎng)應用的規(guī)模和復雜度不斷增加,單節(jié)點任務調度系統(tǒng)已經(jīng)難以滿足高并發(fā)、大數(shù)據(jù)量的處理需求,分布式任務調度成為了解決這一問題的重要手段,本文將介紹如何在Spring Boot中實現(xiàn)分布式任務調度,需要的朋友可以參考下2024-08-08Java迭代器實現(xiàn)Python中的range代碼實例
這篇文章主要介紹了Java迭代器實現(xiàn)Python中的range代碼實例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下2020-03-03Java關鍵字synchronized原理與鎖的狀態(tài)詳解
在Java當中synchronized關鍵字通常是用來標記一個方法或者代碼塊。本文將通過示例為大家詳細介紹一下Synchronized的各種使用方法,需要的可以參考一下2022-08-08JDK1.7中HashMap的死循環(huán)問題及解決方案
這篇文章主要為大家介紹了JDK1.7中HashMap的死循環(huán)問題及解決方案,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-10-10