麻豆黑色丝袜jk制服福利网站-麻豆精品传媒视频观看-麻豆精品传媒一二三区在线视频-麻豆精选传媒4区2021-在线视频99-在线视频a

千鋒教育-做有情懷、有良心、有品質的職業教育機構

手機站
千鋒教育

千鋒學習站 | 隨時隨地免費學

千鋒教育

掃一掃進入千鋒手機站

領取全套視頻
千鋒教育

關注千鋒學習站小程序
隨時隨地免費學習課程

當前位置:首頁  >  技術干貨  > java查詢mysql數據庫

java查詢mysql數據庫

來源:千鋒教育
發布人:xqq
時間: 2024-03-31 08:37:22 1711845442

Java查詢MySQL數據庫

_x000D_

Java是一種廣泛使用的編程語言,而MySQL是一種流行的開源關系型數據庫管理系統。Java與MySQL的結合,可以讓我們更輕松地操作和管理數據庫。在Java中,我們可以使用JDBC(Java Database Connectivity)來連接和操作MySQL數據庫。本文將介紹如何使用Java查詢MySQL數據庫。

_x000D_

連接MySQL數據庫

_x000D_

在使用Java查詢MySQL數據庫之前,我們需要先連接數據庫。我們需要下載MySQL的JDBC驅動程序。可以從MySQL官方網站下載,也可以從Maven倉庫中獲取。

_x000D_

在Java中,我們可以使用以下代碼連接MySQL數據庫:

_x000D_

`java

_x000D_

import java.sql.Connection;

_x000D_

import java.sql.DriverManager;

_x000D_

import java.sql.SQLException;

_x000D_

public class MySQLJDBC {

_x000D_

public static void main(String[] args) {

_x000D_

// JDBC驅動程序類名和數據庫URL

_x000D_

final String JDBC_DRIVER = "com.mysql.cj.jdbc.Driver";

_x000D_

final String DB_URL = "jdbc:mysql://localhost:3306/test?useSSL=false&serverTimezone=UTC";

_x000D_

// 數據庫用戶和密碼

_x000D_

final String USER = "root";

_x000D_

final String PASS = "password";

_x000D_

Connection conn = null;

_x000D_

try {

_x000D_

// 注冊JDBC驅動程序

_x000D_

Class.forName(JDBC_DRIVER);

_x000D_

// 打開連接

_x000D_

System.out.println("連接數據庫...");

_x000D_

conn = DriverManager.getConnection(DB_URL, USER, PASS);

_x000D_

// 執行查詢

_x000D_

// ...

_x000D_

} catch (ClassNotFoundException e) {

_x000D_

e.printStackTrace();

_x000D_

} catch (SQLException e) {

_x000D_

e.printStackTrace();

_x000D_

} finally {

_x000D_

try {

_x000D_

if (conn != null) {

_x000D_

conn.close();

_x000D_

}

_x000D_

} catch (SQLException e) {

_x000D_

e.printStackTrace();

_x000D_

}

_x000D_

}

_x000D_

}

_x000D_ _x000D_

在上面的代碼中,我們首先定義了JDBC驅動程序類名和數據庫URL。然后,我們使用Class.forName()方法注冊JDBC驅動程序。接著,使用DriverManager.getConnection()方法打開數據庫連接。在finally塊中關閉連接。

_x000D_

執行查詢

_x000D_

連接MySQL數據庫后,我們就可以執行查詢了。在Java中,我們可以使用StatementPreparedStatement對象執行查詢。Statement對象用于執行靜態SQL語句,而PreparedStatement對象用于執行動態SQL語句。

_x000D_

以下是使用Statement對象執行查詢的示例代碼:

_x000D_

`java

_x000D_

import java.sql.Connection;

_x000D_

import java.sql.DriverManager;

_x000D_

import java.sql.ResultSet;

_x000D_

import java.sql.SQLException;

_x000D_

import java.sql.Statement;

_x000D_

public class MySQLJDBC {

_x000D_

public static void main(String[] args) {

_x000D_

// JDBC驅動程序類名和數據庫URL

_x000D_

final String JDBC_DRIVER = "com.mysql.cj.jdbc.Driver";

_x000D_

final String DB_URL = "jdbc:mysql://localhost:3306/test?useSSL=false&serverTimezone=UTC";

_x000D_

// 數據庫用戶和密碼

_x000D_

final String USER = "root";

_x000D_

final String PASS = "password";

_x000D_

Connection conn = null;

_x000D_

Statement stmt = null;

_x000D_

ResultSet rs = null;

_x000D_

try {

_x000D_

// 注冊JDBC驅動程序

_x000D_

Class.forName(JDBC_DRIVER);

_x000D_

// 打開連接

_x000D_

System.out.println("連接數據庫...");

_x000D_

conn = DriverManager.getConnection(DB_URL, USER, PASS);

_x000D_

// 執行查詢

_x000D_

System.out.println("創建Statement對象...");

_x000D_

stmt = conn.createStatement();

_x000D_

String sql = "SELECT id, name, age FROM users";

_x000D_

rs = stmt.executeQuery(sql);

_x000D_

// 處理結果集

_x000D_

while (rs.next()) {

_x000D_

int id = rs.getInt("id");

_x000D_

String name = rs.getString("name");

_x000D_

int age = rs.getInt("age");

_x000D_

System.out.println("ID: " + id + ", Name: " + name + ", Age: " + age);

_x000D_

}

_x000D_

} catch (ClassNotFoundException e) {

_x000D_

e.printStackTrace();

_x000D_

} catch (SQLException e) {

_x000D_

e.printStackTrace();

_x000D_

} finally {

_x000D_

try {

_x000D_

if (rs != null) {

_x000D_

rs.close();

_x000D_

}

_x000D_

if (stmt != null) {

_x000D_

stmt.close();

_x000D_

}

_x000D_

if (conn != null) {

_x000D_

conn.close();

_x000D_

}

_x000D_

} catch (SQLException e) {

_x000D_

e.printStackTrace();

_x000D_

}

_x000D_

}

_x000D_

}

_x000D_ _x000D_

在上面的代碼中,我們首先創建了一個Statement對象。然后,使用executeQuery()方法執行查詢語句,并將結果存儲在ResultSet對象中。在while循環中處理結果集。

_x000D_

以下是使用PreparedStatement對象執行查詢的示例代碼:

_x000D_

`java

_x000D_

import java.sql.Connection;

_x000D_

import java.sql.DriverManager;

_x000D_

import java.sql.PreparedStatement;

_x000D_

import java.sql.ResultSet;

_x000D_

import java.sql.SQLException;

_x000D_

public class MySQLJDBC {

_x000D_

public static void main(String[] args) {

_x000D_

// JDBC驅動程序類名和數據庫URL

_x000D_

final String JDBC_DRIVER = "com.mysql.cj.jdbc.Driver";

_x000D_

final String DB_URL = "jdbc:mysql://localhost:3306/test?useSSL=false&serverTimezone=UTC";

_x000D_

// 數據庫用戶和密碼

_x000D_

final String USER = "root";

_x000D_

final String PASS = "password";

_x000D_

Connection conn = null;

_x000D_

PreparedStatement pstmt = null;

_x000D_

ResultSet rs = null;

_x000D_

try {

_x000D_

// 注冊JDBC驅動程序

_x000D_

Class.forName(JDBC_DRIVER);

_x000D_

// 打開連接

_x000D_

System.out.println("連接數據庫...");

_x000D_

conn = DriverManager.getConnection(DB_URL, USER, PASS);

_x000D_

// 執行查詢

_x000D_

System.out.println("創建PreparedStatement對象...");

_x000D_

String sql = "SELECT id, name, age FROM users WHERE id = ?";

_x000D_

pstmt = conn.prepareStatement(sql);

_x000D_

pstmt.setInt(1, 1);

_x000D_

rs = pstmt.executeQuery();

_x000D_

// 處理結果集

_x000D_

while (rs.next()) {

_x000D_

int id = rs.getInt("id");

_x000D_

String name = rs.getString("name");

_x000D_

int age = rs.getInt("age");

_x000D_

System.out.println("ID: " + id + ", Name: " + name + ", Age: " + age);

_x000D_

}

_x000D_

} catch (ClassNotFoundException e) {

_x000D_

e.printStackTrace();

_x000D_

} catch (SQLException e) {

_x000D_

e.printStackTrace();

_x000D_

} finally {

_x000D_

try {

_x000D_

if (rs != null) {

_x000D_

rs.close();

_x000D_

}

_x000D_

if (pstmt != null) {

_x000D_

pstmt.close();

_x000D_

}

_x000D_

if (conn != null) {

_x000D_

conn.close();

_x000D_

}

_x000D_

} catch (SQLException e) {

_x000D_

e.printStackTrace();

_x000D_

}

_x000D_

}

_x000D_

}

_x000D_ _x000D_

在上面的代碼中,我們首先創建了一個PreparedStatement對象。然后,使用setInt()方法設置查詢參數,并使用executeQuery()方法執行查詢語句。在while循環中處理結果集。

_x000D_

常見問題解答

_x000D_

1. 如何處理MySQL中的日期和時間?

_x000D_

在Java中,可以使用java.sql.Datejava.sql.Timestamp類來處理MySQL中的日期和時間。java.sql.Date類表示日期(年月日),而java.sql.Timestamp類表示日期和時間(年月日時分秒)。

_x000D_

以下是使用java.sql.Datejava.sql.Timestamp類處理MySQL中的日期和時間的示例代碼:

_x000D_

`java

_x000D_

import java.sql.Connection;

_x000D_

import java.sql.DriverManager;

_x000D_

import java.sql.PreparedStatement;

_x000D_

import java.sql.ResultSet;

_x000D_

import java.sql.SQLException;

_x000D_

import java.sql.Timestamp;

_x000D_

public class MySQLJDBC {

_x000D_

public static void main(String[] args) {

_x000D_

// JDBC驅動程序類名和數據庫URL

_x000D_

final String JDBC_DRIVER = "com.mysql.cj.jdbc.Driver";

_x000D_

final String DB_URL = "jdbc:mysql://localhost:3306/test?useSSL=false&serverTimezone=UTC";

_x000D_

// 數據庫用戶和密碼

_x000D_

final String USER = "root";

_x000D_

final String PASS = "password";

_x000D_

Connection conn = null;

_x000D_

PreparedStatement pstmt = null;

_x000D_

ResultSet rs = null;

_x000D_

try {

_x000D_

// 注冊JDBC驅動程序

_x000D_

Class.forName(JDBC_DRIVER);

_x000D_

// 打開連接

_x000D_

System.out.println("連接數據庫...");

_x000D_

conn = DriverManager.getConnection(DB_URL, USER, PASS);

_x000D_

// 執行查詢

_x000D_

System.out.println("創建PreparedStatement對象...");

_x000D_

String sql = "SELECT id, name, birthday, created_time FROM users WHERE id = ?";

_x000D_

pstmt = conn.prepareStatement(sql);

_x000D_

pstmt.setInt(1, 1);

_x000D_

rs = pstmt.executeQuery();

_x000D_

// 處理結果集

_x000D_

while (rs.next()) {

_x000D_

int id = rs.getInt("id");

_x000D_

String name = rs.getString("name");

_x000D_

Date birthday = rs.getDate("birthday");

_x000D_

Timestamp createdTime = rs.getTimestamp("created_time");

_x000D_

System.out.println("ID: " + id + ", Name: " + name + ", Birthday: " + birthday + ", Created Time: " + createdTime);

_x000D_

}

_x000D_

} catch (ClassNotFoundException e) {

_x000D_

e.printStackTrace();

_x000D_

} catch (SQLException e) {

_x000D_

e.printStackTrace();

_x000D_

} finally {

_x000D_

try {

_x000D_

if (rs != null) {

_x000D_

rs.close();

_x000D_

}

_x000D_

if (pstmt != null) {

_x000D_

pstmt.close();

_x000D_

}

_x000D_

if (conn != null) {

_x000D_

conn.close();

_x000D_

}

_x000D_

} catch (SQLException e) {

_x000D_

e.printStackTrace();

_x000D_

}

_x000D_

}

_x000D_

}

_x000D_ _x000D_

在上面的代碼中,我們使用java.sql.Date類獲取MySQL中的日期,并使用java.sql.Timestamp類獲取MySQL中的日期和時間。

_x000D_

2. 如何處理MySQL中的NULL值?

_x000D_

在Java中,可以使用ResultSet對象的wasNull()方法判斷MySQL中的字段是否為NULL。如果字段為NULL,則wasNull()方法返回true,否則返回false

_x000D_

以下是使用wasNull()方法處理MySQL中的NULL值的示例代碼:

_x000D_

`java

_x000D_

import java.sql.Connection;

_x000D_

import java.sql.DriverManager;

_x000D_

import java.sql.PreparedStatement;

_x000D_

import java.sql.ResultSet;

_x000D_

import java.sql.SQLException;

_x000D_

public class MySQLJDBC {

_x000D_

public static void main(String[] args) {

_x000D_

// JDBC驅動程序類名和數據庫URL

_x000D_

final String JDBC_DRIVER = "com.mysql.cj.jdbc.Driver";

_x000D_

final String DB_URL = "jdbc:mysql://localhost:3306/test?useSSL=false&serverTimezone=UTC";

_x000D_

// 數據庫用戶和密碼

_x000D_

final String USER = "root";

_x000D_

final String PASS = "password";

_x000D_

Connection conn = null;

_x000D_

PreparedStatement pstmt = null;

_x000D_

ResultSet rs = null;

_x000D_

try {

_x000D_

// 注冊JDBC驅動程序

_x000D_

Class.forName(JDBC_DRIVER);

_x000D_

// 打開連接

_x000D_

System.out.println("連接數據庫...");

_x000D_

conn = DriverManager.getConnection(DB_URL, USER, PASS);

_x000D_

// 執行查詢

_x000D_

System.out.println("創建PreparedStatement對象...");

_x000D_

String sql = "SELECT id, name, age, email FROM users WHERE id = ?";

_x000D_

pstmt = conn.prepareStatement(sql);

_x000D_

pstmt.setInt(1, 2);

_x000D_

rs = pstmt.executeQuery();

_x000D_

// 處理結果集

_x000D_

while (rs.next()) {

_x000D_

int id = rs.getInt("id");

_x000D_

String name = rs.getString("name");

_x000D_

int age = rs.getInt("age");

_x000D_

String email = rs.getString("email");

_x000D_

if (rs.wasNull()) {

_x000D_

email = "NULL";

_x000D_

}

_x000D_

System.out.println("ID: " + id + ", Name: " + name + ", Age: " + age + ", Email: " + email);

_x000D_

}

_x000D_

} catch (ClassNotFoundException e) {

_x000D_

e.printStackTrace();

_x000D_

} catch (SQLException e) {

_x000D_

e.printStackTrace();

_x000D_

} finally {

_x000D_

try {

_x000D_

if (rs != null) {

_x000D_

rs.close();

_x000D_

}

_x000D_

if (pstmt != null) {

_x000D_

pstmt.close();

_x000D_

}

_x000D_

if (conn != null) {

_x000D_

conn.close();

_x000D_

}

_x000D_

} catch (SQLException e) {

_x000D_

e.printStackTrace();

_x000D_

}

_x000D_

}

_x000D_

}

_x000D_ _x000D_

在上面的代碼中,我們使用wasNull()方法判斷MySQL中的email字段是否為NULL。如果為NULL,則將其賦值為字符串"NULL"。

_x000D_

本文介紹了如何使用Java查詢MySQL數據庫。我們首先需要連接數據庫,然后使用StatementPreparedStatement對象執行查詢。本文還解答了一些常見問題,如如何處理MySQL中的日期和時間、如何處理MySQL中的NULL值等。通過本文的學習,相信讀者已經掌握了Java查詢MySQL數據庫的基本方法。

_x000D_
tags: Java
聲明:本站稿件版權均屬千鋒教育所有,未經許可不得擅自轉載。
10年以上業內強師集結,手把手帶你蛻變精英
請您保持通訊暢通,專屬學習老師24小時內將與您1V1溝通
免費領取
今日已有369人領取成功
劉同學 138****2860 剛剛成功領取
王同學 131****2015 剛剛成功領取
張同學 133****4652 剛剛成功領取
李同學 135****8607 剛剛成功領取
楊同學 132****5667 剛剛成功領取
岳同學 134****6652 剛剛成功領取
梁同學 157****2950 剛剛成功領取
劉同學 189****1015 剛剛成功領取
張同學 155****4678 剛剛成功領取
鄒同學 139****2907 剛剛成功領取
董同學 138****2867 剛剛成功領取
周同學 136****3602 剛剛成功領取
相關推薦HOT
主站蜘蛛池模板: 一区二区三区中文字幕| 本子库里番acg全彩无遮挡| 国产国产精品人在线观看| 草久视频在线观看| 高清仑乱| 色丁香婷婷| 午夜一级毛片| 怡红院美国分院一区二区| 国产嫩草视频| 妖精动漫在线观看| 最新中文字幕在线播放| 黄色不卡视频| 亚洲中字慕日产2020| 翁熄系列回乡下| 健身私教弄了我好几次啊| 窈窕淑女韩国在线看| 欧美换爱交换乱理伦片免费观看| 日本午夜精品一区二区三区电影| 久久久久夜夜夜精品国产| 欧美日韩中文字幕在线视频| 国产成人精品综合在线观看| 免费a级毛片| 污网站在线免费看| 蜜汁肉桃h全篇| 日韩精品一卡2卡3卡4卡三卡| 欧美老少配性视频播放| 女人张开腿日出白浆视频| www.henhenai| 西西人体高清444rt·wang| 日韩精品一卡2卡3卡4卡三卡| 免费在线亚洲| 久久99精品九九九久久婷婷| 美女扒开粉嫩尿口的漫画| 产国语一级特黄aa大片| 亚洲中字慕日产2020| 8x国产在线观看| 亚洲午夜精品一区二区| 青娱乐国产盛宴| 里番本子侵犯肉全彩3d| 国产亚洲婷婷香蕉久久精品| 天堂8在线天堂资源bt|