java - 在 Spring MVC 中使用 Hibernate 从 SQL 数据库填充下拉菜单

标签 java spring hibernate jsp spring-mvc

我以前做过类似的事情,但从未使用过这个特定的配置。我查找的每个示例都显示下拉列表在 Controller 中设置了选项,而我不希望它们在 Controller 中逐行设置,而是从 SQL 数据库中的列中提取。

我有其他表单,当前从同一表和列中提取,但具有下拉菜单。我什么也没得到。这是 JSP

这就是我在 jsp 中的内容,之前我使用了 c:forEach,我怀疑我可能必须将其放回与 jsp use bean 结合使用...

<table>
    <tr>
        <td>Job:</td>
        <td>    
            <form:select path="Job.jobName">
                <form:option value="" label="Select Job"/>
                <form:options value="" items="${job.jobName}"/>
            </form:select>
        </td>
        <td><form:errors path="job.jobName" /> </td>
    </tr>
</table>

这是 Controller 中的方法调用,还有更多,但这是我正在使用的..

List<Job> jobList = jobService.listjobsByPage(page);

这是对 DAOImpl 的查询

public List<Job> getDataByJobName(String jobName) {            
     Session session = sessionFactory.openSession();
     List<Job> result = null;
     try{
            session.beginTransaction();
            Query query = session.createQuery("from Job where upper(jobName) like ? " +
                         "order by jobName");
            query.setParameter(0, "%" + jobName + "%");
            result = query.list();
            session.getTransaction().commit();
            session.close();
     } catch(Exception e){
            e.printStackTrace();
     }
     return result;
}

如果有人能够为我指明如何设置的正确方向,那将是一个很大的帮助。

提前致谢。

最佳答案

你必须先做:

    ModelAndView model = new ModelAndView("index");
    model.addObject("lists", list);

    <form:select path="list">
        <form:options items="${lists}" />
    </form:select>

关于java - 在 Spring MVC 中使用 Hibernate 从 SQL 数据库填充下拉菜单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28080570/

相关文章:

java - 为什么 SAXException 是可序列化的?

java - android应用程序部署问题

java - 如何更新这个只允许用户猜测 5 次的方法?

java - Hibernate 级联删除期间的 ConstraintViolationException

java - 矩形计算器应用程序

java - 如何使用hibernate ehcache缓存列表

java - 我如何在 Spring 中使用角色?

java - 如何解决 Spring Boot/Hibernate NoSuchMethodError?

java - 读取完成后关闭流的 InputStream 包装器

java - Hibernate + Dozer - 在映射的集合项属性上使用 map-id