刚接触Freemarker没多久,今天自己做得东西必需是要有顺序的,但是又没法确定插入的顺序,所以选择了使用TreeMap,自己实现一个比较器,结果在前端遍历TreeMap时,突然发现Freemarker对于TreeMap没法用键拿值!
这是后台比较器的部分代码:
这个是前端页面遍历TreeMap的部分代码:
这个是运行后页面打印的Map里面的值:
从上面的图可以看到,Map里面是有值的,然而你通过键去取值时则报出了如下错误信息:
然后我换了HashMap和LinkedHashMap来代替,结果是都没问题的!所以这个应该是FreeMarker本身的原因(至于什么原因,这个留着后面有时间研究FreeMarker了再回来看看)!
至于解决办法那就是用LinkedHashMap再putAll一次(感觉这个方法好二啊)!
至此问题解决!