gpt4 book ai didi

java - 如何使用方法执行以下操作?

转载 作者:行者123 更新时间:2023-12-01 13:44:18 26 4
gpt4 key购买 nike

该程序将打开一个对话框,用户可以在其中从 7 个选项中进行选择。根据所选的选择,我将使用 SQL 语句从数据库中提取数据并将其打印到屏幕上。

我想知道的是,我想在各自的方法中执行这些步骤,并且只从 main() 调用它们,而不是使用非常大的 Switch 语句。我似乎无法弄清楚如何做到这一点,而不必为每个方法建立连接。

import javax.swing.*;
import java.sql.*;


public class PC_05__PopulationDatabase {

public static void main(String[] args) throws SQLException {
final String DB_URL = "jdbc:derby:CityDB";

// List of actions
String[] arr = new String[7];
arr[0] = "1) Sort Cities by Population - ASCENDING ORDER";
arr[1] = "2) Sort Cities by Population - DESCENDING ORDER";
arr[2] = "3) Sort Cities by Name";
arr[3] = "4) Get Total Population of ALL Cities";
arr[4] = "5) Get Average Population of ALL Cities";
arr[5] = "6) Get Highest Population";
arr[6] = "7) Get Lowest Population";

try {
// Open Connection
Connection conn = DriverManager.getConnection(DB_URL);
System.out.println("Connection created to Population Database.");

// Statement and Result
Statement stmt = conn.createStatement();
String sqlStatement;
ResultSet result;

// Selection dialog
Object userAction = JOptionPane.showInputDialog(null, "Select an action: ", "Actions", JOptionPane.PLAIN_MESSAGE, null, arr, null);
String selection = userAction.toString();

int choice = Integer.parseInt(selection);

// Selection Actions
switch(choice) {
case 0:

break;
case 1:

break;
case 2:

break;
case 3:

break;
case 4:

break;
case 5:

break;
case 6:

break;
}


sqlStatement = "SELECT Description FROM Coffee";
result = stmt.executeQuery(sqlStatement);


// Close Connection
conn.close();
System.out.println("Connection closed.");
}
catch(Exception ex) {
System.out.println("ERROR: " + ex.getMessage());
}

}

public static void sortPopAscending() {

}

public static void sortPopDescending() {

}

public static void sortName() {

}

public static void totalPop() {

}

public static void avgPop() {

}

public static void highestPop() {

}

public static void lowestPop() {

}

}

最佳答案

以下是我解决类似问题的方法:

  • 使Connection conn 成为类的实例变量。不要使其静态,否则如果您需要多个同时连接,您会踢自己一脚。
  • 打开数据库连接
  • 当您希望用户执行某些操作时:让用户做出选择,然后调用一个单独的函数,该函数具有适合该选择的 SQL。您将需要一些东西来确定要调用哪个函数,无论是 switch 语句、匿名类等。
  • 关闭数据库连接

关于java - 如何使用方法执行以下操作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20462400/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com