国产成人毛片视频|星空传媒久草视频|欧美激情草久视频|久久久久女女|久操超碰在线播放|亚洲强奸一区二区|五月天丁香社区在线|色婷婷成人丁香网|午夜欧美6666|纯肉无码91视频

創(chuàng)建數(shù)據(jù)庫(kù)和表

首先,在MySQL中創(chuàng)建一個(gè)數(shù)據(jù)庫(kù),并且使用該數(shù)據(jù)庫(kù)。然后,創(chuàng)建一個(gè)名為"usr"的表,并向表中插入4條數(shù)據(jù)。以下是創(chuàng)建表和插入數(shù)據(jù)的SQL語(yǔ)句: CREATE DATABASE test; US

首先,在MySQL中創(chuàng)建一個(gè)數(shù)據(jù)庫(kù),并且使用該數(shù)據(jù)庫(kù)。然后,創(chuàng)建一個(gè)名為"usr"的表,并向表中插入4條數(shù)據(jù)。以下是創(chuàng)建表和插入數(shù)據(jù)的SQL語(yǔ)句:

CREATE DATABASE test;
USE test;
CREATE TABLE usr (
    id INT PRIMARY KEY,
    name VARCHAR(50),
    age INT,
    email VARCHAR(50)
);
INSERT INTO usr (id, name, age, email) VALUES (1, 'John', 25, 'john@');
INSERT INTO usr (id, name, age, email) VALUES (2, 'Amy', 30, 'amy@');
INSERT INTO usr (id, name, age, email) VALUES (3, 'Tom', 28, 'tom@');
INSERT INTO usr (id, name, age, email) VALUES (4, 'Lisa', 35, 'lisa@');

創(chuàng)建Java工程和連接數(shù)據(jù)庫(kù)

打開(kāi)Eclipse,并創(chuàng)建一個(gè)Java工程項(xiàng)目。在src目錄下創(chuàng)建util包,在util包中創(chuàng)建類(lèi)DBConn。然后,創(chuàng)建entity包,在entity包中創(chuàng)建類(lèi)Usr。最后,創(chuàng)建dao包,在dao包中創(chuàng)建類(lèi)UsrDao。創(chuàng)建完成后的工程目錄如下:

- src
    - util
        - 
    - entity
        - 
    - dao
        - 

因?yàn)槲覀兪褂肑DBC方式連接數(shù)據(jù)庫(kù),所以需要編寫(xiě)一個(gè)數(shù)據(jù)庫(kù)連接的工具類(lèi)??梢詤⒖糐ava編寫(xiě)JDBC連接MySQL數(shù)據(jù)庫(kù)的工具類(lèi)。完整的工程目錄及DBConn類(lèi)的內(nèi)容如下:

package util;
import ;
import ;
import java.sql.SQLException;
public class DBConn {
    // 數(shù)據(jù)庫(kù)連接信息
    private static final String URL  "jdbc:mysql://localhost:3306/test";
    private static final String USERNAME  "root";
    private static final String PASSWORD  "password";
    // 獲取數(shù)據(jù)庫(kù)連接對(duì)象
    public static Connection getConnection() throws SQLException {
        return (URL, USERNAME, PASSWORD);
    }
}

接下來(lái),編寫(xiě)類(lèi)用于表示usr表的數(shù)據(jù)結(jié)構(gòu):

package entity;
import ;
public class Usr {
    private int id;
    private String name;
    private int age;
    private String email;
    public Usr(int id, String name, int age, String email) {
          id;
          name;
          age;
          email;
    }
    // Getter and Setter methods
    // ...省略部分代碼...
}

然后,編寫(xiě)類(lèi)作為數(shù)據(jù)訪問(wèn)層,用于執(zhí)行SQL查詢語(yǔ)句并將結(jié)果存放到Java變量中:

package dao;
import ;
import ;
import ;
import java.sql.SQLException;
import ;
import ;
import ;
import util.DBConn;
public class UsrDao {
    // 查詢usr表所有數(shù)據(jù)
    public List getAllUsrs() {
        List usrs  new ArrayList<>();
        try (Connection conn  ();
             PreparedStatement pstmt  ("SELECT * FROM usr");
             ResultSet rs  pstmt.executeQuery()) {
            while (()) {
                int id  ("id");
                String name  ("name");
                int age  ("age");
                String email  ("email");
                Usr usr  new Usr(id, name, age, email);
                (usr);
            }
        } catch (SQLException e) {
            ();
        }
        return usrs;
    }
}

將查詢結(jié)果存放到變量中

在UsrDao類(lèi)中,我們可以看到將查詢結(jié)果存放到變量中的關(guān)鍵代碼如下:

while (()) {
    int id  ("id");
    String name  ("name");
    int age  ("age");
    String email  ("email");
    Usr usr  new Usr(id, name, age, email);
    (usr);
}

在執(zhí)行查詢函數(shù)之后(ptst.executeQuery()),會(huì)返回一個(gè)ResultSet類(lèi)型的結(jié)果集。然后,使用ResultSet類(lèi)中的next()方法來(lái)遍歷結(jié)果集。最后,使用getString()方法可以將對(duì)應(yīng)變量的值取出來(lái)。需要注意的是,取出來(lái)的值是String類(lèi)型的,所以如果要存放到其他類(lèi)型的Java變量中,需要先進(jìn)行類(lèi)型轉(zhuǎn)換。比如在這里,id是int類(lèi)型,需要通過(guò)new Integer(("id"))的方式將String類(lèi)型的值轉(zhuǎn)換為int類(lèi)型。

運(yùn)行程序并查看結(jié)果

在的窗口上右鍵選擇"Run As",然后選擇"Java Application"運(yùn)行程序。運(yùn)行結(jié)果如下:

[Usr{id1, name'John', age25, email'john@'},
 Usr{id2, name'Amy', age30, email'amy@'},
 Usr{id3, name'Tom', age28, email'tom@'},
 Usr{id4, name'Lisa', age35, email'lisa@'}]

通過(guò)JDBC將數(shù)據(jù)庫(kù)的數(shù)據(jù)通過(guò)SQL語(yǔ)句取出來(lái)后存放到變量中,并通過(guò)控制臺(tái)輸出成功。

標(biāo)簽: