1. 程式人生 > >今天楞了半天硬是沒想到用map,在此還原以下代碼

今天楞了半天硬是沒想到用map,在此還原以下代碼

save class sel code ransac get nsa names list

    /**
     * 左邊為項目類型,樹結構的,需要將項目的樹結構目錄加上項目名拼接在一起,不同的項目做成下拉列表
*/ @Transactional(readOnly = false) public List<Map<String,Object>> findFullName(){
//獲取所有的父id和項目名稱 List
<ProjectInfo> list=projectInfoDao.findParentIdsAndProjectName();
//定義一個list,泛型為map List
<Map<String,Object>> fullNameList=new ArrayList<Map<String,Object>>(); for (ProjectInfo projectInfo : list) {
//獲取所有項目類型的父節點 String parentIds
=projectTypeService.get(projectInfo.getProjectTypeId()).getParentIds();
//獲取本項目的項目類型 String ptName
= projectTypeService.get(projectInfo.getProjectTypeId()).getName();
//獲取本項目名稱 String projectName
=projectInfo.getProjectName();
//拆分父節點 String [] pId
=parentIds.split(","); StringBuffer fullName=new StringBuffer(); Map<String,Object> map = new
HashMap<String,Object>(); for (String str : pId) { if (!"0".equals(str)) {
//通過父節點項目類型名稱 String proTypeName
=projectTypeService.get(str).getName();
//拼接父節點 fullName
=fullName.append(proTypeName+"--"); } }
//在外層循環拼接本次項目類型名稱和項目名稱
fullName.append(
"--"+ptName).append("--"+projectName);
          //數據庫設計存放的是projectId,沒fullName,fullName只是在前臺展示,
//因此在form變單save的時候fullName必須與所屬項目id保持一致,將id傳到後臺
map.put("fullname", fullName); map.put("id",projectInfo.getId()); fullNameList.add(map); } return fullNameList; }

前端也就很好寫了

<div class="control-group">
     <label class="control-label">所屬項目:</label>
      <div class="controls">
         <form:select path="projectId" class="input-xlarge">
             <c:forEach var="fullName" items="${fullNames}">
                         <option value="${fullName.id}" selected>
                            ${fullName.fullname}
                         </option>
                     </c:forEach> 
        </form:select>
      </div>
</div>

好了ok

樹結構的

今天楞了半天硬是沒想到用map,在此還原以下代碼