我正在使用Hibernate MySQL编写基本的CRUD应用程序。
添加新记录很好,但是在编辑现有记录时,让现有记录的值默认显示为选定项时遇到了一些麻烦。
以下是相关代码:

Criteria criteriaz = session.createCriteria(Organisation.class);
final List<Organisation> orgList = criteriaz.list();
BeanItemContainer<Organisation> srcOrgs = new BeanItemContainer<Organisation>(Organisation.class);
srcOrgs.addAll(orgList);

organisationId.setInvalidAllowed(false);
organisationId.setNullSelectionAllowed(false);
organisationId.setContainerDataSource(srcOrgs);
organisationId.setItemCaptionMode(ItemCaptionMode.PROPERTY);
organisationId.setItemCaptionPropertyId("name");

for (Organisation mOrg : orgList) {
                    if (mOrg.getRowid().equals(activity.getOrganisationId()))
                        mOrgID = mOrg.getName();
                }

organisationId.select(mOrgID);


我在这里做错了什么?

最佳答案

仅使用:

for (Organisation mOrg : orgList) {
    if (mOrg.getRowid().equals(activity.getOrganisationId()))
        organisationId.select(mOrg);
        break;
    }


BeanItemContainer包含bean作为ID,因此您始终只能使用bean。

07-26 05:41