我有一个用例,我需要将Handlebars模板上呈现的值作为变量传递给JSP标记。
首先,我定义一个Map<>在我的控制器中,并传递Map<>到JSP视图,如下所示:
MyController.java
public ModelAndView personView(HttpServletRequest req) {
ModelAndView mav = new ModelAndView("/views/personView.jsp");
Map<Long, String> personMap = new HashMap<>();
myMap.put(1L, "Bob");
myMap.put(2L, "Brad");
myMap.put(3L, "Carol");
myMap.put(4L, "Kevin");
myMap.put(5L, "Ned");
mav.addObject("PersonMap", personMap);
return mav;
}
然后从 JSP ,我通常会访问personID,如下所示:
<div> Person: ${PersonMap[1]}</div> // renders as "Bob"
我的 Handlebars 模板通常如下所示:
{{personId}} // renders a number, ie 1
现在我需要将这两者结合起来,并根据呈现的Handlebars值进行地图查找,并将该值(ID)作为键传递给JSP中的地图,如下所示是理想的:
<div> Person: ${PersonMap[{{personId}}]}</div>
{{personId}}
替换硬编码的&#34; 1&#34;。但是这种语法不起作用。有没有办法实现这样的事情?