【问题标题】:How can I show a results from query in hibernate to table in bootstrap?如何将休眠中的查询结果显示到引导程序中的表?
【发布时间】:2018-06-26 11:14:15
【问题描述】:

我有一个项目,我使用休眠弹簧启动,我想在一个查询中连接两个表并在引导表中显示结果。我进行了查询并获取了结果,但它在List<Oject[]> 中,我认为我需要它在List<MyClass> 中。那么有人可以帮我怎么做......如何将查询结果放入引导表中......? 查询是:

TableInfoDAO.java

         CriteriaBuilder builder = getCurrentSession().getCriteriaBuilder();
         CriteriaQuery<Object[]> criteriaQuery = builder.createQuery(Object[].class);

         Root<DocumentBean> rootDept = criteriaQuery.from(DocumentBean.class);
         Root<TableInfoBean> rootEmp = criteriaQuery.from(TableInfoBean.class);


         criteriaQuery.multiselect(rootDept,rootEmp);
         criteriaQuery.where(builder.equal(rootDept.get("user_id"), rootEmp.get("id")));

         Query<Object[]> query = getCurrentSession().createQuery(criteriaQuery);
         List<Object[]> resl = query.getResultList();
         for (Object[] objects : resl) {
                DocumentBean employee=(DocumentBean)objects[0];
                TableInfoBean department=(TableInfoBean)objects[1];
                System.out.println("EMP NAME="+department.getName()+"\t DEPT NAME="+employee.getNote());
             }
         acUsers =  (List<TableInfoBean>) (Object) resl;

还有tableInfo.jsp

<tbody>
        <c:set var="count" value="1" scope="page" />
           <c:forEach var="userActiv" items="${acUsers}">
                <tr>
                   <td class="center">${count}</td> 
                    <td>${userActiv.name}</td>
                    <td>${userActiv.lastname}</td>
                </tr>
          <c:set var="count" value="${count + 1}" scope="page"/>
        </c:forEach>

如何将结果添加到 Bootstrap 表中......谢谢!

【问题讨论】:

  • i take the results but it is in List and i need it in List 什么?
  • @XtremeBaumer 我编辑问题对不起...我想把查询的结果放到表格中,你能帮我吗

标签: java hibernate spring-boot criteria


【解决方案1】:

你可以这样做

<tbody>
    <c:set var="count" value="1" scope="page" />
       <c:forEach var="userActiv" items="${acUsers}">
            <tr>
                <td class="center">${count}</td> 
                <td>${userActiv[0]}</td>
                <td>${userActiv[1]}</td>
            </tr>
      <c:set var="count" value="${count + 1}" scope="page"/>
</c:forEach>

【讨论】:

    【解决方案2】:

    我找到了解决方案,只需更改:

    for (Object[] objects : result) {
                    DocumentBean documentInfo=(DocumentBean)objects[0];
                    TableInfoBean userInfo=(TableInfoBean)objects[1];
                    System.out.println("Kelner="+userInfo.getName()+"\t Masa="+documentInfo.getNote());
                    TableInfoBean zaedno = new TableInfoBean();
                    zaedno.setLastname(documentInfo.getNote());
                    zaedno.setName(userInfo.getName());
                    userInformation.add(zaedno);
             }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-12-08
      • 2011-06-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多