有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java从数据库到javafxtableview,id和名称如何相等?

here is Consing.javahere is my table

这是我的密码

public class TableViewByColumn extends Application{
@Override
public void start(Stage primaryStage) throws Exception {
    ArrayList<Integer> intValues = Consing.getInstance().getBook_ID();
    ArrayList<String> stringValues = Consing.getInstance().getBookName();

    TableView<Integer> table = new TableView<>();
    for(int i=0; i<intValues.size()& i<stringValues.size(); i++){
        table.getItems().add(i);
    }

    TableColumn<Integer,String> stringColunm = new TableColumn<>("Name");
    stringColunm.setCellValueFactory(cellData -> {
        Integer rowIndex = cellData.getValue();
        System.out.println(rowIndex);
        return new ReadOnlyStringWrapper(stringValues.get(rowIndex));
    });

    TableColumn<Integer,Number> intColunm = new TableColumn<>("Value");
    intColunm.setCellValueFactory(cellData -> {
        Integer rowIndex = cellData.getValue();
        return new ReadOnlyIntegerWrapper(intValues.get(rowIndex));
    });
    table.getColumns().add(intColunm);
    table.getColumns().add(stringColunm);
    primaryStage.setScene(new Scene(new BorderPane(table),600,600));
    primaryStage.show();
}

here is my result

图书ID和名称与表中的不同


共 (1) 个答案

  1. # 1 楼答案

    如何从MySQL数据库中获取数据?看起来您分别获取了bookIDbookName,对吗?如果这样做,则没有订购保证,因此intValues[0]不必与stringValues[0]匹配