Heim >Java >javaLernprogramm >Wie liest Java-Code eine Datenbanktabelle?

Wie liest Java-Code eine Datenbanktabelle?

WBOY
WBOYnach vorne
2023-05-08 09:55:071330Durchsuche

Java liest Datenbanktabelle

package com.easycrud.builder;
import com.easycrud.utils.PropertiesUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.sql.*;
/**
 * @BelongsProject: EasyCrud
 * @BelongsPackage: com.easycrud.builder
 * @Author: xpx
 * @Email: 2436846019@qq.com
 * @CreateTime: 2023-05-02  18:02
 * @Description: 读Table
 * @Version: 1.0
 */
public class BuildTable {
    private static final Logger logger = LoggerFactory.getLogger(BuildTable.class);
    private static Connection conn = null;
    /**
     * 查表名和表注释
     */
    private static String SQL_SHOW_TABLE_STATUS = "show table status";
    /**
     * 读配置,连接数据库
     */
    static {
        String driverName = PropertiesUtils.getString("db.driver.name");
        String url = PropertiesUtils.getString("db.url");
        String user = PropertiesUtils.getString("db.username");
        String password = PropertiesUtils.getString("db.password");
        try {
            Class.forName(driverName);
            conn = DriverManager.getConnection(url,user,password);
        } catch (Exception e) {
            logger.error("数据库连接失败",e);
        }
    }
    /**
     * 读取表
     */
    public static void getTables() {
        PreparedStatement ps = null;
        ResultSet tableResult = null;
        try{
            ps = conn.prepareStatement(SQL_SHOW_TABLE_STATUS);
            tableResult = ps.executeQuery();
            while(tableResult.next()) {
                String tableName = tableResult.getString("name");
                String comment = tableResult.getString("comment");
                logger.info("tableName:{},comment:{}",tableName,comment);
            }
        }catch (Exception e){
            logger.error("读取表失败",e);
        }finally {
            if (tableResult != null) {
                try {
                    tableResult.close();
                } catch (SQLException e) {
                    e.printStackTrace();
                }
            }
            if (ps != null) {
                try {
                    ps.close();
                } catch (SQLException e) {
                    e.printStackTrace();
                }
            }
            if (conn != null) {
                try {
                    conn.close();
                } catch (SQLException e) {
                    e.printStackTrace();
                }
            }
        }
    }
}

Anleitung für Anfänger

Logger

Javas eigenes Protokoll.

Allgemeine Verwendung ist wie folgt: Protokollinformationen drucken:

logger.error("Datenbankverbindung fehlgeschlagen",e)

logger.info("tableName:{},comment:{}",tableName,comment), { } ist Der Platzhalter

LoggerFactory.getLogger(xxx.class)

gibt die Klasse zum Initialisieren des Protokollobjekts an. Bei der Protokollausgabe kann die Klasse der Protokollinformationen ausgedruckt werden.

Connection

Connection-Objekt wird verwendet, um eine Verbindung zu einer Datenquelle herzustellen.

Class.forName(driverName)

Laden Sie den Treiber.

DriverManager.getConnection(url,user,password)

Rufen Sie die Datenbankverbindung ab.

PreparedStatement

ist eine der APIs, die zum Ausführen von SQL-Abfrageanweisungen verwendet werden.

ResultSet

Die Ergebnismenge (ResultSet) ist ein Objekt, das von den Abfrageergebnissen in den Daten zurückgegeben wird. Die Ergebnismenge ist ein Objekt, das die Abfrageergebnisse speichert.

ps = conn.prepareStatement(SQL_SHOW_TABLE_STATUS)

Kompilieren Sie die SQL-Anweisung vor der Ausführung vor, starten Sie dann die Ausführung der SQL-Anweisung und geben Sie das Ergebnis zurück.

tableResult = ps.executeQuery()

speichert die Abfrageergebnisse der Datenbankantwort im ResultSet-Klassenobjekt für unsere Verwendung.

Die next()-Methode in ResultSet

Die Anfangsposition des Zeigers in ResultSet liegt vor der ersten Zeile; der erste Aufruf der next()-Methode legt die erste Zeile als aktuelle Zeile fest.

Name und Kommentar

repräsentieren jeweils den Tabellennamen und den Tabellenkommentar, die nach der Ausführung der Anweisung „Datenbank anzeigen Tabellenstatus“ abgefragt werden. Verwenden Sie die getString()-Methode von ResultSet, um den entsprechenden Wert abzurufen.

Das obige ist der detaillierte Inhalt vonWie liest Java-Code eine Datenbanktabelle?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:yisu.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen