MyException - 我的异常网
当前位置:我的异常网» Java Web开发 » EL表达式和struts2 tag的区别,该怎么处理

EL表达式和struts2 tag的区别,该怎么处理(3)

www.MyException.Cn  网友分享于:2013-01-03  浏览:138次

很诡异的问题~~奇怪了
------解决方案--------------------
学习了..
------解决方案--------------------
up 
正在学习中!!
------解决方案--------------------
确实不错
------解决方案--------------------
路过
------解决方案--------------------
没有解答的能力,学习,帮顶
------解决方案--------------------
学习下
------解决方案--------------------
VELOCITY的人士飘过
------解决方案--------------------
顶顶
------解决方案--------------------
MARK
------解决方案--------------------
去看一下EL的实现,你会发现用${}表达式去取enum类型的值的时候,它用的是enum.name()方法。而标签的输出的时候用的是enum的toString()方法。
------解决方案--------------------
DING
------解决方案--------------------
用工具调试下,就OK了
------解决方案--------------------
哈,再送楼主一段代码,在EL当然,取回来指定变量的值后,会把它转换为String类型的值,然后处理方式如下:
if (obj == null) {
return "";
} else if (obj instanceof String) {
return (String) obj;
} else if (obj instanceof Enum) {
return ((Enum) obj).name();
} else {
return obj.toString();
}


------解决方案--------------------
哈,至于91楼说的,看jsp编译结果的源代码,还真看不出东西来
------解决方案--------------------
对了,楼主给不给分呀?这问题我也是看了好一会儿了,我在89楼已经给正解了
------解决方案--------------------
无语了!这段代码不用你的,这是EL ${}的实现代码。你在页面是${var}人家调用的就是这段代码。

文章评论

软件开发程序错误异常ExceptionCopyright © 2009-2015 MyException 版权所有