1. JDBC(Java Database Connectivity)
JDBC是Java提供的一種數據庫連接標準,它允許Java程序連接到任何類型的數據庫,執行SQL語句,并處理結果。
1.1 JDBC連接步驟
- 加載數據庫驅動 :使用
Class.forName()
方法加載數據庫驅動。 - 建立連接 :使用
DriverManager.getConnection()
方法建立與數據庫的連接。 - 創建Statement :通過連接對象創建
Statement
對象,用于執行SQL語句。 - 執行SQL語句 :使用
Statement
對象的executeQuery()
或executeUpdate()
方法執行SQL語句。 - 處理結果 :對于查詢操作,使用
ResultSet
對象處理返回的結果集。 - 關閉資源 :最后,關閉
ResultSet
、Statement
和數據庫連接。
1.2 示例代碼
import java.sql.*;
public class JdbcDemo {
public static void main(String[] args) {
String url = "jdbc:mysql://localhost:3306/mydb";
String user = "root";
String password = "password";
try {
// 加載數據庫驅動
Class.forName("com.mysql.cj.jdbc.Driver");
// 建立連接
Connection conn = DriverManager.getConnection(url, user, password);
// 創建Statement
Statement stmt = conn.createStatement();
// 執行查詢
ResultSet rs = stmt.executeQuery("SELECT * FROM users");
// 處理結果
while (rs.next()) {
String name = rs.getString("name");
int age = rs.getInt("age");
System.out.println(name + ", " + age);
}
// 關閉資源
rs.close();
stmt.close();
conn.close();
} catch (ClassNotFoundException | SQLException e) {
e.printStackTrace();
}
}
}
2. 使用連接池
在Web應用程序中,頻繁地打開和關閉數據庫連接是非常消耗資源的。因此,使用連接池是一個更好的選擇。
2.1 常見的連接池
- HikariCP :性能最好的連接池之一,也是Spring Boot的默認連接池。
- Apache DBCP :Apache Commons提供的數據庫連接池。
- C3P0 :一個成熟的連接池實現。
2.2 配置HikariCP
在Spring Boot項目中,你可以通過application.properties
或application.yml
文件配置HikariCP。
# application.properties
spring.datasource.url=jdbc:mysql://localhost:3306/mydb
spring.datasource.username=root
spring.datasource.password=password
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.hikari.minimum-idle=5
spring.datasource.hikari.maximum-pool-size=20
spring.datasource.hikari.idle-timeout=30000
spring.datasource.hikari.pool-name=MyHikariCP
spring.datasource.hikari.max-lifetime=2000000
spring.datasource.hikari.connection-timeout=30000
3. 使用ORM框架
ORM(Object-Relational Mapping)框架可以簡化數據庫操作,將數據庫表映射為Java對象。
3.1 常見的ORM框架
- Hibernate :一個功能強大的ORM框架,支持多種數據庫。
- MyBatis :一個靈活的SQL映射框架,允許開發者編寫自定義的SQL語句。
- Spring Data JPA :基于Hibernate的JPA實現,簡化了數據訪問層的開發。
3.2 示例:使用Spring Data JPA
- 添加依賴 :在
pom.xml
中添加Spring Data JPA和數據庫驅動的依賴。 - 配置數據源 :在
application.properties
中配置數據源。 - 創建實體類 :定義與數據庫表對應的實體類。
- 創建Repository接口 :繼承
JpaRepository
接口,Spring Data JPA會自動實現接口中的方法。 - 使用Repository :在服務層注入Repository,使用其提供的方法操作數據庫。
import org.springframework.data.jpa.repository.JpaRepository;
public interface UserRepository extends JpaRepository {
}
4. 最佳實踐
- 使用連接池 :避免每次請求都創建新的數據庫連接。
- 使用ORM框架 :減少SQL硬編碼,提高代碼的可維護性。
- 事務管理 :確保數據庫操作的原子性、一致性、隔離性和持久性。
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。
舉報投訴
-
SQL
+關注
關注
1文章
780瀏覽量
44722 -
數據庫
+關注
關注
7文章
3885瀏覽量
65596 -
代碼
+關注
關注
30文章
4882瀏覽量
70047 -
JavaWeb
+關注
關注
0文章
16瀏覽量
6498
發布評論請先 登錄
相關推薦
熱點推薦
數據庫數據恢復——MongoDB數據庫文件拷貝后服務無法啟動的數據恢復
MongoDB數據庫數據恢復環境:
一臺Windows Server操作系統虛擬機上部署MongoDB數據庫。
MongoDB數據庫故障:
管理員在未關閉MongoDB服務的

數據庫數據恢復—SQL Server附加數據庫提示“錯誤 823”的數據恢復案例
SQL Server數據庫附加數據庫過程中比較常見的報錯是“錯誤 823”,附加數據庫失敗。
如果數據庫有備份則只需還原備份即可。但是如果沒有備份,備份時間太久,或者其他原因導致備份

從Delphi、C++ Builder和Lazarus連接到MySQL數據庫
? 從 Delphi、C++ Builder 和 Lazarus 連接到 MySQL 數據庫 MySQL 數據訪問組件(MyDAC)是一個組件庫,提供從 Delphi 和 C++ Bu

適用于MySQL和MariaDB的Python連接器:可靠的MySQL數據連接器和數據庫
和 Linux 的 wheel 包分發。 直接連接 該解決方案使您能夠通過 TCP/IP 建立與 MySQL 或者 MariaDB 數據庫服務器的直接連接,而無需數據庫客戶端

避坑指南:云服務器數據庫購買方法全攻略
云服務器數據庫購買方法包含:先明確業務需求與數據庫類型,再挑選信譽好、技術支持強的云服務提供商,接著根據需求配置數據庫實例及選擇付費方式。購買后,通過云管理平臺訪問管理
從Delphi、C++ Builder和Lazarus連接到Oracle數據庫
從 Delphi、C++ Builder 和 Lazarus 連接到 Oracle 數據庫 Oracle 數據訪問組件 (ODAC) 是一個組件庫,它為 32 位和 64 位平臺提供從
MySQL數據庫的安裝
MySQL數據庫的安裝 【一】各種數據庫的端口 MySQL :3306 Redis :6379 MongoDB :27017 Django :8000 flask :5000 【二】MySQL 介紹

云數據庫是哪種數據庫類型?
云數據庫是一種部署在虛擬計算環境中的數據庫,它融合了云計算的彈性和可擴展性,為用戶提供高效、靈活的數據庫服務。云數據庫主要分為兩大類:關系型數據庫
數據庫數據恢復—MYSQL數據庫ibdata1文件損壞的數據恢復案例
mysql數據庫故障:
mysql數據庫文件ibdata1、MYI、MYD損壞。
故障表現:1、數據庫無法進行查詢等操作;2、使用mysqlcheck和myisamchk無法修復數據庫
數據庫數據恢復—通過拼接數據庫碎片恢復SQLserver數據庫
一個運行在存儲上的SQLServer數據庫,有1000多個文件,大小幾十TB。數據庫每10天生成一個NDF文件,每個NDF幾百GB大小。數據庫包含兩個LDF文件。
存儲損壞,數據庫不

數據庫數據恢復—SQL Server數據庫出現823錯誤的數據恢復案例
SQL Server數據庫故障:
SQL Server附加數據庫出現錯誤823,附加數據庫失敗。數據庫沒有備份,無法通過備份恢復數據庫。

Oracle數據恢復—Oracle數據庫delete刪除的數據恢復方法
刪除Oracle數據庫數據一般有以下2種方式:delete、drop或truncate。下面針對這2種刪除oracle數據庫數據的方式探討一下oracle
數據庫數據恢復—SQL Server數據庫所在分區空間不足報錯的數據恢復案例
Server數據庫故障:
存放SQL Server數據庫的D盤分區容量不足,管理員在E盤中生成了一個.ndf的文件并且將數據庫路徑指向E盤繼續使用。數據庫繼續運行一段時間后出現故障
數據庫數據恢復—raid5陣列上層Sql Server數據庫數據恢復案例
數據庫數據恢復環境:
5塊硬盤組建一組RAID5陣列,劃分LUN供windows系統服務器使用。windows系統服務器內運行了Sql Server數據庫,存儲空間在操作系統層面劃分了三個邏輯分區

評論