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

Populating a DropDown Menu From a SQL Database Using Hibernate in Spring MVC

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

我目前还有其他表格来自同一 table 和列,但带有下拉列表。我什么也得不到。这是 JSP

这是我在 jsp 中所拥有的,之前我使用了 c:forEach,我怀疑我可能不得不将其放回 used 中与 jsp 一起使用豆...

<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>
<form:options value="" items="${job.jobName}"/> 

另一个失败是由于 value="".

下拉列表值将始终为空