有 Java 编程相关的问题?

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

使用Hibernate时,java无法填充jcombo框

我已经使用这些语句使用Hibernate从MySql数据库表填充jcombobox

    String SQL_QUERY ="from Item items";
        org.hibernate.Query query = session.createQuery(SQL_QUERY);
        for(Iterator it=query.iterate();it.hasNext();){
        Object[] row = (Object[]) it.next();
        jcbItemCode.addItem(row[0]);
        }

这里的项目是我的类名&;items是我的数据库表名。但是NetBeans给出了如下错误&;jcombo框不填充

INFO: schema update complete
Hibernate: select item0_.itemid as col_0_0_ from items item0_
eretailer.Item$$EnhancerByCGLIB$$99948c46 cannot be cast to [Ljava.lang.Object;

我怎样才能纠正这个问题。我已经找过了,但找不到合适的答案。 我以前用过这个方法

String SQL_QUERY = "Select items.iid,items.idiscription,items.iprice from Item items";
          org.hibernate.Query query = session.createQuery(SQL_QUERY);
          for(Iterator it=query.iterate();it.hasNext();){
          Object[] row = (Object[]) it.next();
          jcbItemCode.addItem(row[0]);
          }

这是完美的工作

也许网豆不允许这样。我想知道这到底是什么。希望你的帮助。 谢谢


共 (1) 个答案

  1. # 1 楼答案

    如错误消息所示,查询from Item items不返回Object[]实例。它返回Item个实例

    如果希望组合框包含项目实例,只需使用

    for(Iterator it = query.iterate(); it.hasNext();) {
        Item item = (Item) it.next();
        jcbItemCode.addItem(item);
    }