${ 1+1 }后台代码是如何解析这个EL表达式的,求告知

u010837486 2016-06-06 02:25:34
本人理解解析时。这个东西传到后台应该是个字符串“1+1”。如何变成算术运算呢?
难道是要判断字符串中是否存在运算符?然后对每个可能的数字进行字符串转数字?
如果这样的话。算式复杂点根本不行吧。

求大神告知,百度都是些EL的用法。底层实现几乎没有
...全文
231 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
HD_XB 2016-06-06
  • 打赏
  • 举报
回复
out.write((java.lang.String) org.apache.jasper.runtime.PageContextImpl
     .proprietaryEvaluate(   "${1+1 }", 
              java.lang.String.class,
             (javax.servlet.jsp.PageContext)_jspx_page_context,
             null));
"${1+1 }"作为参数
OPPPPOP 2016-06-06
  • 打赏
  • 举报
回复
那个应该很复杂,不过好在jdk1.6出了ScriptEngine可以利用一下 ScriptEngine scriptEngine = new ScriptEngineManager().getEngineByName("javascript"); Object rs = scriptEngine.eval("1 + 1"); Number n = (Number) rs; System.out.println(n.intValue());

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧