【发布时间】:2016-02-08 22:07:42
【问题描述】:
我正在使用 JavaFX 创建一个基本的 GUI。我在 MySQL 中创建了一个数据库来存储数据。 (DBConnect) (连接器/j)
这是我第一次尝试连接两者,以及使用 ResultSets/DBConnect
目前,我有 3 个类:我的 Game 类、我的 GameUI 类(主)和我的 DBConnect 类。
我试图在我的 GameUI 类中引用 ResultSet,它最初是在 Game 类中声明的。
public class Game {
private static DBConnect dbc;
private static Connection conn;
public ResultSet rs;
int id;
String name;
float price;
String vendor;
int rating;
public Game() {
try {
conn = dbc.connect();
String SQL = "Select * from Person";
rs = conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,
ResultSet.CONCUR_UPDATABLE).executeQuery(SQL);
System.out.println("list result set for record..");
printRs(rs);
} catch(SQLException ignore) {
}
}
我的用户定义 moveNext() 方法:
public Game moveNext() {
Game g = new Game();
try {
if(rs.next() == false)
rs.previous();
g.setGameId(rs.getInt("gameId"));
g.setGameName(rs.getString("gameName"));
g.setPrice(rs.getFloat("price"));
g.setVendor(rs.getString("vendor"));
g.setRating(rs.getInt("rating"));
} catch(SQLException e) {
e.printStackTrace();
}
return g;
}
我试图在其中引用它的 GameUI 类:
public class GameUI extends Application {
private Button firstButton = new Button("First");
private Button createButton = new Button("Create");
private Button updateButton = new Button("Update");
private Button deleteButton = new Button("Delete");
private Button lastButton = new Button("Last");
private Button nextButton = new Button("Next");
private Button prevButton = new Button("Prev");
GridPane grid = new GridPane();
HBox hbox = new HBox(14);
private static DBConnect dbc;
private static Connection conn;
// private static
private Pane initButtons() {
hbox.getChildren().addAll(firstButton, createButton, updateButton, deleteButton, lastButton, nextButton, prevButton);
nextButton.setOnAction(new EventHandler<ActionEvent>() {
@Override
public void handle(ActionEvent e) {
Game.rs.moveNext();
}
});
return hbox;
}
我的问题是,我可以在nextButton 事件处理程序(我的 GameUI 类)中引用我的 ResultSet(游戏类)还是必须声明一个新的结果集?
这是我用户定义的moveNext() 方法的正确位置,还是我应该使用next()?
我会根据要求发布更多代码。
【问题讨论】:
-
您的帖子包含三个不同的问题。最好将它们作为单独的问题。