EL表达式中的数字类型

      今天遇到一个有趣的问题,也很纳闷的问题,不过好在解决了,在此记录下来。

      

      在控制器中定义了一个Map<Integer,String>集合,看似没有问题,将这个集合的对象map传递到一个JSP页面中,我们都知道,用EL表达式 ${map[key]}就可以取得key对应的value了。但是问题就是这么奇怪,这样取不到值。百度,才发现:EL表达式中数字1,2,3,...是Long类型。也就是EL表达式不支持Integer类型的数字作为Map的key


      修改上述集合为:Map<Long,String>,然后再在JSP页面就可以通过${map[key]}获得对应的值了

你可能感兴趣的:(J2EE)