云
8 小时以前 02a1ae81eba7b48223052fb833859f0a65dd7d21
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
import java.nio.file.*;
import java.sql.*;
import java.util.*;
 
public class TempDbAdmin {
    public static void main(String[] args) throws Exception {
        String yaml = Files.readString(Path.of("yudao-server/src/main/resources/application-thzy.yaml"));
        String block = yaml.substring(yaml.indexOf("master:"));
        String[] lines = block.split("\\R");
        String user = null, pass = null;
        boolean master = false;
        for (String line : lines) {
            if (line.trim().equals("master:")) { master = true; continue; }
            if (!master) continue;
            if (line.trim().startsWith("username:")) user = line.trim().substring(9).trim().split("\\s+#", 2)[0];
            if (line.trim().startsWith("password:")) { pass = line.trim().substring(9).trim().split("\\s+#", 2)[0]; break; }
        }
        if (user == null || pass == null) throw new IllegalStateException("Missing database credentials");
        String url = "jdbc:mysql://1.95.78.124:9000/mom-thzynew?useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true";
        try (Connection conn = DriverManager.getConnection(url, user, pass)) {
            System.out.println("DATABASE=" + conn.getCatalog());
            if (args.length == 0) return;
            try (Statement stmt = conn.createStatement(); ResultSet rs = stmt.executeQuery(args[0])) {
                ResultSetMetaData md = rs.getMetaData();
                for (int i = 1; i <= md.getColumnCount(); i++) System.out.print((i > 1 ? "\t" : "") + md.getColumnLabel(i));
                System.out.println();
                while (rs.next()) {
                    for (int i = 1; i <= md.getColumnCount(); i++) System.out.print((i > 1 ? "\t" : "") + Objects.toString(rs.getObject(i), "NULL"));
                    System.out.println();
                }
            }
        }
    }
}