gpt4 book ai didi

java - 使用JComboBox在JTable中显示

转载 作者:行者123 更新时间:2023-11-29 09:12:36 25 4
gpt4 key购买 nike

我试图使用组合框来显示表格中的内容。我写了下面的代码,但表格中没有显示任何内容。

Integer i = ((Destination) (jComboBox1.getSelectedItem())).getId();
query1 = entityManager.createQuery("SELECT d FROM Dayactivity d WHERE d.id=:Id");
query1.setParameter("Id", i);
java.util.Collection data = query1.getResultList();
list2.clear();
list2.addAll(data);

当我如下更改代码时,它会正确返回数据并显示在表格中。

Integer i = ((Destination) (jComboBox1.getSelectedItem())).getId();
query1 = entityManager.createQuery("SELECT d FROM Dayactivity d WHERE d.id=:Id");
query1.setParameter("Id", 2);
java.util.Collection data = query1.getResultList();
list2.clear();
list2.addAll(data);

为什么它不适用于第一个代码 (i) 但适用于第二个代码中的 2?

谁能帮我解决这个问题,我是 Java 和 NetBeans 的新手

最佳答案

执行以下操作之一:

  • 调试代码以查看 i 的实际值:

如果 i 为 null 那么您需要更改访问组合框的选定 id 的方式,如下所示:

Integer i = ((Destination) jComboBox1.getSelectedIndex();
  • 你需要检查他方法的参数:

    1. query1.setParameter(String, int);或
    2. query1.setParameter(String, Integer);

关于java - 使用JComboBox在JTable中显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11465380/

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