2017-05-11 49 views
0

當前我正在使用Spring MVC和Hibernate。HTML使用Spring MVC選擇組件和Hibernate故障

我需要一些信息從表格到HTML中的選擇組件,但它會填充下一個信息。

<select id="dept" name="dept" size="1"> 
    <option value="{id=1, name=name1}">{id=1, name=name1}</option> 
    <option value="{id=2, name=name2}">{id=2, name=name2}</option> 
    <option value="{id=3, name=name3}">{id=3, name=name3}</option> 
    <option value="{id=4, name=name4}">{id=4, name=name4}</option> 
    <option value="{id=5, name=name5}">{id=5, name=name5}</option> 
</select><input type="hidden" name="_dept" value="1"/> 

代替

<select id="dept" name="dept" size="1"> 
    <option value=1>name1</option> 
    <option value=2>name2</option> 
    <option value=3>name3</option> 
    <option value=4>name4</option> 
    <option value=5>name5</option> 
</select><input type="hidden" name="_dept" value="1"/> 

但我想只是名稱和ID作爲值填充的對象。

爲HTML組件

<form:select path="dept" size="1"> 
    <form:options items="${departments}"/> 
</form:select> 

我的控制器

@RequestMapping("/dept") 
public ModelAndView dept(@RequestParam int id, @RequestParam int idKey) { 
    ModelAndView mav = new ModelAndView(); 


    mav.addObject("departments", DAO.ListCombo(-1, -1)); 
    mav.setViewName("User.jsp"); 

    return mav; 
} 

吾道

@SuppressWarnings("unchecked") 
@Transactional 
public Map<String, String> ListComboDepts(int startResult, int maxRows) throws DataAccessException { 
    Query query = createNamedQuery("ComboDepts", startResult, maxRows); 

    Map Data = new HashMap(); 
    Map<String,String> deptos = new LinkedHashMap<String,String>(); 

    deptos = (Map<String, String>) query.getResultList(); 

    return deptos; 
} 

感謝您幫助我的JSP代碼。

回答

0

一切都看起來不錯只需要反覆JSP你的記錄,PFB代碼片斷

<select id="dept" name="dept"> 
<c:forEach var="department" items="${departments}"> 
    <option value="${department.id}">${department.name}</option> 
</c:forEach> 

+0

感謝。完全忘了jstl lib。 – Juan