Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/346.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何获取特定密钥';自由标记中的s值_Java_Freemarker - Fatal编程技术网

Java 如何获取特定密钥';自由标记中的s值

Java 如何获取特定密钥';自由标记中的s值,java,freemarker,Java,Freemarker,我有以下HashMap: Map<String, Object> hashMap = new HashMap<>(); hashMap.put("type", "message"); Map hashMap=new hashMap(); hashMap.put(“类型”、“消息”); 我在freemarker模板中编写了一个switch语句: <#switch hashMap.get("type")> <#case "me

我有以下HashMap:

 Map<String, Object> hashMap = new HashMap<>();
 hashMap.put("type", "message");
Map hashMap=new hashMap();
hashMap.put(“类型”、“消息”);
我在freemarker模板中编写了一个switch语句:

    <#switch hashMap.get("type")>
        <#case "message">
            <p>Message type</p>
            <#default>
                <p>Nothing</p>
    </#switch>

消息类型

没什么

但当我执行代码时,我会遇到异常:


freemarker.core.InvalidReferenceException:[…已打印异常消息;请参见上文…]
位于freemarker.core.InvalidReferenceException.getInstance(InvalidReferenceException.java:134)
位于freemarker.core.UnexpectedTypeException.newDescriptionBuilder(UnexpectedTypeException.java:80)
在freemarker.core.UnexpectedTypeException。(UnexpectedTypeException.java:43)
位于freemarker.core.NonHashException。(NonHashException.java:49)
在freemarker.core.Dot.\u eval(Dot.java:48)
位于freemarker.core.Expression.eval(Expression.java:81)
在freemarker.core.MethodCall.\u eval(MethodCall.java:58)
位于freemarker.core.Expression.eval(Expression.java:81)
在freemarker.core.EvalUtil.compare(EvalUtil.java:111)中
位于freemarker.core.SwitchBlock.accept(SwitchBlock.java:67)
访问(Environment.java:326)
访问(Environment.java:332)
位于freemarker.core.Environment.process(Environment.java:305)
位于freemarker.template.template.process(template.java:378)
在com.comp.www.reports.freemakerreport.main上(freemakerreport.java:70)
有人能指出我做错了什么吗?

而不是

hashMap.get("type")
使用


您是否将hashmap设置为您的模型?在任何情况下,您的开关中应该只有
另一句话:您忘记了
在您的案例之后,应该是
hashMap。键入
。或者,
hashMap[“type”]
,尽管这要长一些
hashMap[type]
不带引号,用
type
变量值的键进行查找。
hashMap.get("type")
hashMap[type]