在java程序中運用mysql,java程序的

本文目錄一覽:

mySQL在java中的應用

Java連接Mysql詳解

Part I: 驅動/數據源類名, URL語法, Connector/J的屬性配置.假設你應經安裝好了mysql, 和mysql-connector-java-X.X.X-bin.jar

Mysql Connector/J通過com.mysql.jdbc.Driver來實現java.sql.Driver, 同時類名org.gjt.mm.mysql.Driver依舊可用, 以保持向前兼容MM.Mysql.

MySQL的JDBC URL格式如下:

如果沒有明確指定host(主機名), 默認為127.0.0.1, 端口號默認是3306

如果不指定數據庫名, 不會有默認的數據庫, 這樣的話, 你可以調用Connection的setCatalog()方法, 或者在SQL中明確指定所用的數據庫. 這種情況只在為多個數據庫建立工具時有用. 例如建立GUI數據庫管理器.

JDBC應該永遠不使用USE database來指定數據庫, 應該用Connection.setCatalog()方法.

MySQL Connector/J支持fail-over模式, 使用fail-over模式, 必須將connection的autoCommit設置為true.

如果URL的autoReconnect設置為false: Failover會發生在連接初始化時, failback出現在驅動器使第一個主機在此可用時.

如果URL的autoReconnect屬性時true, Failover發生在驅動決定connection失敗時(在每次查詢之前), falls back到第一個主機, 當它決定這個主機在此可用時.

在以上提到的兩種情況中, 無論何時你連接到一個”failed-over”服務器, 這個連接將會是制度的, 因此, 修改數據的查詢, 將會引發異常.

Configuration properties定義Connctor/J將怎樣連接到MySQL服務器. 除了特別聲明, 這些屬性可以設置在DataSource或Connection object中.

Configuration properties可以按照下面的方式進行設置:

①使用MysqlDataSource或MysqlConnectionPoolDataSource的set*()方法.

②以java.util.Properties的key/value對的形式傳遞給DriverManager.getConnection() 或Driver.connect()

③作為JDBC URL的參數傳給java.sql.DriverManger.getConnection()

java.sql.Driver.connect()或MySQL實現的javax.sql.DataSource setURL() 方法.

注意: 如果你用來確定JDBC URL的機制是XML-based, 你需要使用XML字符 來分隔參數.

java如何連接mySQL數據庫?

1.下面代碼是使用jdbc直接來鏈接mysql的操作,方式與SQL SERVER類似,區別在於加載的驅動不同,url的設置也有點區別。

2.執行腳本返回的結果,可以看出java成功鏈接上mysql並獲取到返回值

3.mysql-connector-java-5.1.26-bin.jar是java鏈接mysql使用的jar包,與SQL SERVER鏈接也有專門的jar包,jar包中包含了java鏈接mysql所用到的函數驅動等等,所有的jar包都是放到web工程lib目錄下

4.如果工程是整合在ssh下,一般情況下都會有一個properties文件,該文件配置了數據庫鏈接常用的命令,下圖是mysql中的配置

5.使用spring框架下進行的測試,結果可以成功執行,無論是sql server還是mysql還是其他的數據庫,基本功能都一樣,只是語法結構有所區別,java在調用的過程中大部分功能只要切換了數據庫鏈接命令就可以公用,如果系統架構設計的足夠好,切換數據庫的時候,應用程序是不用調整就能兼容的

在java中怎樣連接mysql數據庫

1. 在開發環境中加載指定數據庫的驅動程序。

接下來的實驗中,使用數據庫MySQL,所以需要下載MySQL支持JDBC的驅動程序(mysql-connector-java-5.1.18-bin.jar)。

2. 開發環境是MyEclipse,將下載得到的驅動程序加載進開發環境中。

3. 在Java程序中加載驅動程序。

在Java程序中,通過 「Class.forName(「指定數據庫的驅動程序」)」 

方式來加載添加到開發環境中的驅動程序,例如Class.forName(「com.mysql.jdbc.Driver」)。

4. 創建數據連接對象:通過DriverManager類創建數據庫連接對象Connection。

DriverManager類作用於Java程序和JDBC驅動程序之間,用於檢查所加載的驅動程序是否可以建立連接,然後通過它的getConnection方法,根據數據庫的URL、用戶名和密碼,創建一個JDBC 

Connection 對象。代碼如:Connection connection =  DriverManager.getConnection(「連接數據庫的URL”, “用戶名”, 

“密碼」)。

    其中,URL=協議名+IP地址(域名)+端口+數據庫名稱;用戶名和密碼是指登錄數據庫時所使用的用戶名和密碼。具體示例創建MySQL的數據庫連接代碼如下:

              Connection connectMySQL  = 

 DriverManager.geiConnection(「jdbc:mysql://localhost:3306/myuser”,”root” 

,”root” );

5. 創建Statement對象:Statement 類的主要是用於執行靜態 SQL 

語句並返回它所生成結果的對象。

通過Connection 對象的 createStatement()方法可以創建一個Statement對象。例如:Statement statament = 

connection.createStatement(); 具體示例創建Statement對象代碼如下:Statement statamentMySQL =connectMySQL.createStatement(); 

6. 調用Statement對象的相關方法執行相對應的 SQL 

語句:通過execuUpdate()方法用來數據的更新,包括插入和刪除等操作,例如向staff表中插入一條數據的代碼:

statement.excuteUpdate( “INSERT INTO 

staff(name, age, sex,address, depart, worklen,wage)” + ” VALUES (‘Tom1’, 321, 

‘M’, ‘china’,’Personnel’,’3′,’3000′ ) “) ; 

7. 通過調用Statement對象的executeQuery()方法進行數據的查詢,而查詢結果會得到 

ResulSet對象,ResulSet表示執行查詢數據庫後返回的數據的集合,ResulSet對象具有可以指向當前數據行的指針。通過該對象的next()方法,使得指針指向下一行,然後將數據以列號或者字段名取出。如果當next()方法返回null,則表示下一行中沒有數據存在。使用示例代碼如下:

ResultSet resultSel = 

statement.executeQuery( “select * from staff” );

8. 關閉數據庫連接:使用完數據庫或者不需要訪問數據庫時,通過Connection的close() 方法及時關閉數據連接。

如何在Java程序中訪問mysql數據庫中的數據並進行簡單的操作

參考代碼:

package 數據庫編程;

import java.sql.*;

public class 數據庫連接 {

public static void main(String[] args) throws SQLException{

//1.加載驅動程序

try {

Class.forName(“com.mysql.jdbc.Driver”);

} catch (ClassNotFoundException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

//2.創建與DB數據庫的連接

//連接字符串

String url=”jdbc:mysql://192.168.1.101:3306/java數據庫?user=rootpassword=humin”;

Connection con=DriverManager.getConnection(url);

//進行讀寫

if(!con.isClosed()){

System.out.print(“歡迎訪問數據庫!\n想做什麼啊………………\n”);

Statement st=con.createStatement();

ResultSet rs= st.executeQuery(“select * from stu”);

while(rs.next()){

System.out.print( rs.getString(“stuid”)+”,”+rs.getString(“name”)+”,”+rs.getString(“sex”)+”,”+rs.getString(“age”)+”,”+rs.getString(“address”)+”,”+rs.getString(“tel”)+”\n”);

}

}

//關閉數據庫

con.close();

}

}

原創文章,作者:JAHJ,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/139611.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
JAHJ的頭像JAHJ
上一篇 2024-10-04 00:22
下一篇 2024-10-04 00:22

相關推薦

  • java client.getacsresponse 編譯報錯解決方法

    java client.getacsresponse 編譯報錯是Java編程過程中常見的錯誤,常見的原因是代碼的語法錯誤、類庫依賴問題和編譯環境的配置問題。下面將從多個方面進行分析…

    編程 2025-04-29
  • Java JsonPath 效率優化指南

    本篇文章將深入探討Java JsonPath的效率問題,並提供一些優化方案。 一、JsonPath 簡介 JsonPath是一個可用於從JSON數據中獲取信息的庫。它提供了一種DS…

    編程 2025-04-29
  • 如何修改mysql的端口號

    本文將介紹如何修改mysql的端口號,方便開發者根據實際需求配置對應端口號。 一、為什麼需要修改mysql端口號 默認情況下,mysql使用的端口號是3306。在某些情況下,我們需…

    編程 2025-04-29
  • python強行終止程序快捷鍵

    本文將從多個方面對python強行終止程序快捷鍵進行詳細闡述,並提供相應代碼示例。 一、Ctrl+C快捷鍵 Ctrl+C快捷鍵是在終端中經常用來強行終止運行的程序。當你在終端中運行…

    編程 2025-04-29
  • Java騰訊雲音視頻對接

    本文旨在從多個方面詳細闡述Java騰訊雲音視頻對接,提供完整的代碼示例。 一、騰訊雲音視頻介紹 騰訊雲音視頻服務(Cloud Tencent Real-Time Communica…

    編程 2025-04-29
  • Python程序需要編譯才能執行

    Python 被廣泛應用於數據分析、人工智能、科學計算等領域,它的靈活性和簡單易學的性質使得越來越多的人喜歡使用 Python 進行編程。然而,在 Python 中程序執行的方式不…

    編程 2025-04-29
  • Java Bean加載過程

    Java Bean加載過程涉及到類加載器、反射機制和Java虛擬機的執行過程。在本文中,將從這三個方面詳細闡述Java Bean加載的過程。 一、類加載器 類加載器是Java虛擬機…

    編程 2025-04-29
  • Java Milvus SearchParam withoutFields用法介紹

    本文將詳細介紹Java Milvus SearchParam withoutFields的相關知識和用法。 一、什麼是Java Milvus SearchParam without…

    編程 2025-04-29
  • Python程序文件的拓展

    Python是一門功能豐富、易於學習、可讀性高的編程語言。Python程序文件通常以.py為文件拓展名,被廣泛應用於各種領域,包括Web開發、機器學習、科學計算等。為了更好地發揮P…

    編程 2025-04-29
  • Java 8中某一周的周一

    Java 8是Java語言中的一個版本,於2014年3月18日發佈。本文將從多個方面對Java 8中某一周的周一進行詳細的闡述。 一、數組處理 Java 8新特性之一是Stream…

    編程 2025-04-29

發表回復

登錄後才能評論