0

在编辑现有的 JSP 页面时,我发现了一些与此类似的代码:

<script type="text/javascript" src="<mytaglib:url 
                 p1="blah" p2="${'/some/path/file.js'}" />">
</script>

mytaglib:url生成一个以 p2 结尾的 URL。

为什么路径字符串放在花括号内?我还看到了不使用大括号的相同代码,而且它似乎工作正常。这是一些在这里没有用的习惯吗?我很确定我可以在这里删除大括号,但是在其他情况下是否会发生将表达式语言用于纯字符串有用的情况?

4

3 回答 3

0

${}是 JSP 表达式语言的表达式。JSP 表达式语言 (EL) 可以轻松访问存储在 JavaBeans 组件中的应用程序数据。

在此处了解有关 JSP 表达式语言的更多信息

于 2013-01-09T06:15:00.090 回答
0

它是jsp表达式语言。当 JSP 编译器${}在属性中看到表单时,它会生成代码来评估表达式并替换表达式的值。它类似于<%=%>在jsp中。

你会从这里得到一个想法

在这种情况下,${} 接受一个不需要计算任何内容的字符串,因此返回相同的字符串。相反,您可以指定一个变量名,在这种情况下,它会评估变量的值并返回相同的值

于 2013-01-09T06:16:25.467 回答
0

我终于能够询问我正在修改的应用程序的一些初始作者。他们都不能告诉我,这似乎实际上是无用的(更糟糕的是:它有一点性能开销),最初是错误地完成的,并且以某种方式在代码库的许多地方复制......

于 2013-01-10T09:41:38.530 回答