JAVA——Java连接MySQL数据库
1、配置環(huán)境
Java 連接 MySQL 需要驅(qū)動(dòng)包
最新版下載地址為:http://dev.mysql.com/downloads/connector/j/
解壓后得到j(luò)ar庫文件,然后在對(duì)應(yīng)的項(xiàng)目中導(dǎo)入該庫文件。
Eclipse導(dǎo)入庫教程
2、 數(shù)據(jù)庫
表結(jié)構(gòu)
CREATE TABLE `websites` (`id` int(11) NOT NULL AUTO_INCREMENT,`name` char(20) NOT NULL DEFAULT '' COMMENT '站點(diǎn)名稱',`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;數(shù)據(jù)
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');?
3、源代碼
import java.sql.*;public class MySQLDemo {// MySQL 8.0 以下版本 - JDBC 驅(qū)動(dòng)名及數(shù)據(jù)庫 URLstatic 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ù)庫 URL//static final String JDBC_DRIVER = "com.mysql.cj.jdbc.Driver"; //static final String DB_URL = "jdbc:mysql://localhost:3306/RUNOOB?useSSL=false&serverTimezone=UTC";// 數(shù)據(jù)庫的用戶名與密碼,需要根據(jù)自己的設(shè)置static final String USER = "root";static final String PASS = "123456";public static void main(String[] args) {Connection conn = null;Statement stmt = null;try{// 注冊(cè) JDBC 驅(qū)動(dòng)Class.forName(JDBC_DRIVER);// 打開鏈接System.out.println("連接數(shù)據(jù)庫...");conn = DriverManager.getConnection(DB_URL,USER,PASS);// 執(zhí)行查詢System.out.println(" 實(shí)例化Statement對(duì)象...");stmt = conn.createStatement();String sql;sql = "SELECT id, name, url FROM websites";ResultSet rs = stmt.executeQuery(sql);// 展開結(jié)果集數(shù)據(jù)庫while(rs.next()){// 通過字段檢索int id = rs.getInt("id");String name = rs.getString("name");String url = rs.getString("url");// 輸出數(shù)據(jù)System.out.print("ID: " + id);System.out.print(", 站點(diǎn)名稱: " + name);System.out.print(", 站點(diǎn) URL: " + url);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("Goodbye!");} }注意事項(xiàng)
1、確定打開數(shù)據(jù)庫的服務(wù)
2、對(duì)應(yīng)的數(shù)據(jù)庫是否存在
3、一定要添加 Java 連接 MySQL 需要驅(qū)動(dòng)jar包
4、是否加載了驅(qū)動(dòng)
5、核對(duì)數(shù)據(jù)庫版本,使用相應(yīng)的數(shù)據(jù)庫連接驅(qū)動(dòng)
6、連接字符串、登錄名以及密碼是否有誤
常見問題
[MySQLNonTransientConnectionException:Could not create connection to database server.]解決方案
[MySQLNonTransientConnectionException: Public Key Retrieval is not allowed]解決方案
[com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: Data source rejected establishment of connection, message from server: "Too many connections"]解決方案
資源下載
官方:
https://dev.mysql.com/downloads/connector/j/
第三方:
https://mvnrepository.com/artifact/mysql/mysql-connector-java
參考文章
https://www.runoob.com/java/java-mysql-connect.html
https://blog.csdn.net/weixin_43272781/article/details/102988481
https://www.cnblogs.com/town123/p/8336244.html
https://www.cnblogs.com/centor/p/6142775.html
總結(jié)
以上是生活随笔為你收集整理的JAVA——Java连接MySQL数据库的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Eclipse——添加库(Add Lib
- 下一篇: JAVA——自定义排序(实现Compar