看板 java 關於我們 聯絡資訊
版上各位先進好 小弟先試著google過滿多資料的 但嘗試很久仍舊無法透過 EL動態取得KEY後再取MAP的值 以下是程式碼片段 某Servlet ServletContext context = getServletContext(); HashMap<Long, String> serviceStatusMap = new HashMap<Long, String>(); serviceStatusMap.put(new Long(0), "零"); serviceStatusMap.put(new Long(1), "一"); context.setAttribute("serviceStatusMap", serviceStatusMap); 某JSP // myBean是一隻JavaBean程式 並且有getStatus(),只會回傳Long 0或1 <c:set var="val" value="${myBean.status}"/> <c:out value="${serviceStatusMap[val]}"/> 這是我從網路上看到的動態key存取map的值的作法, 但是測了一個晚上都看不到結果..... 謝謝各位 ╭(─╴╴─)╮ ▃▇ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 111.249.54.120
PsMonkey:==.=== 你至少也先保證 val 是你想要的值吧? 11/17 11:15
violet90079:我有試過印出該val 確定是我設定的0or1 11/17 11:24
※ 編輯: violet90079 來自: 140.115.236.64 (11/17 11:24)
duck10704:沒有exception可以看嗎 11/17 18:57
mintle:先把${myBean.status}印出來看看 11/17 22:41
mintle:然後再印印看${serviceStatusMap[myBean.status]}" 11/17 22:43
violet90079:沒有exception可以看 單純畫面上沒有值... 11/17 23:58
violet90079:mintle大 我有先試過印出該值 也確實是 0/1 11/17 23:59
violet90079:但放到map中要取值時卻取不到任何東西-.- 11/18 00:01
LaPass:new Long(0)應該可以用1L代替,會比較省事.... 11/18 00:06
LaPass: 0L 11/18 00:07
violet90079:雖然我還沒學到其他framework 但老師要我們先養成用 11/18 11:37
violet90079:物件的好習慣 11/18 11:38
PsMonkey:JVM 會幫你作 autoboxing,所以沒差 11/18 11:56