java - 如何使用 hibernate 将数据库表项绘制到 TableView 上

标签 java hibernate javafx tableview h2

感谢大家迄今为止对我项目的帮助。

我今天大部分时间都在研究这个问题,但未能获得任何有用的 Material 。

我的项目使用 Java/JavaFx、Hibernate 和 H2。到目前为止,我可以将项目保存到数据库中,但我无法弄清楚如何将数据拉到 TableView 上。我已经将数据绘制到 System.out.println 上,但仅此而已。

这些是我的类(class):

此类创建数据库对象 NewBeautifulKiwi:

import java.io.Serializable;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;

@Entity(name = "KIWI_TABLE")
public class NewBeautifulKiwi implements Serializable {

    @Id
    @GeneratedValue
    private int KiwiId;
    private String Kiwi;

    public int getKiwiId() {
        return KiwiId;
    }

    public void setKiwiId(int KiwiId) {
        this.KiwiId = KiwiId;
    }

    public String getKiwi() {
        return Kiwi;
    }

    public void setKiwi(String Kiwi) {
        this.Kiwi = Kiwi;
    }
}

此类初始化 NewBeautifulKiwi,创建数据库表并将插入的数据打印到屏幕:

import java.io.Serializable;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;

@Entity(name = "KIWI_TABLE")
public class NewBeautifulKiwi implements Serializable {

    @Id
    @GeneratedValue
    private int KiwiId;
    private String Kiwi;

    public int getKiwiId() {
        return KiwiId;
    }

    public void setKiwiId(int KiwiId) {
        this.KiwiId = KiwiId;
    }

    public String getKiwi() {
        return Kiwi;
    }

    public void setKiwi(String Kiwi) {
        this.Kiwi = Kiwi;
    }
}

我希望在 TableView 中显示屏幕上打印的内容。

任何帮助都会很棒。如果我能得到任何帮助,我将不胜感激。提前谢谢你。

最佳答案

试试这个..

我正在scene builder中创建表和列

 @FXML
 private TableView<PoJoName> table;

 @FXML
 private TableColumn<PoJoName, Integer> col1;

 @FXML
 private TableColumn<PoJoName, String> col2;

 public ObservableList<PoJoName> data; 

@FXML
void initialize() 
{

  col1.setCellValueFactory(new PropertyValueFactory<PoJoName,Integer>("id")); // here id is a variable name which is define in pojo.
  col2.setCellValueFactory(new PropertyValueFactory<PoJoName,String>("name"));

    data  =  FXCollections.observableArrayList();        
    SessionFactory sf = new Configuration().configure().buildSessionFactory();
    Session sess  =sf.openSession();        
    Query qee = sess.createQuery("from PoJoName");
    Iterator ite  =qee.iterate();
    while(ite.hasNext())
    {
        PoJoName obj = (PoJoName)ite.next();    

        data.add(obj);           
    }        
    table.setItems(data);

}

关于java - 如何使用 hibernate 将数据库表项绘制到 TableView 上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21168866/

相关文章:

JavaMelody 1.68.0 - JBoss 找不到 iText 类

java - Hibernate 中 setCalendar 和 setCalendarDate 有什么区别?

hibernate - Spring Data Elasticsearch嵌套搜索-Jhipster

java - 使用JavaFX播放音频"java.lang.IllegalArgumentException: uri.getScheme() == null! "错误

apache-flex - 比较 FLEX、JavaFX 和 Silverlight

java - 带有整数和字符串的 SpringMVC/SpringBoot JSON 数组

java - 格式化文件输入

java - Selenium 在 GWT 中找不到链接、按钮、文本?

java - JPA 对两个 OneToMany 实体使用一个联接表

java - 如何正确关闭 javafx Alerts/fileChooser 等