重构JSP中的EL表达式

Sea*_*oyd 6 java eclipse refactoring jsp intellij-idea

我有与以下形式的EL表达式许多JSP文件${foo.bar.baz.phleem1},${foo.bar.baz.phleem2}等.(第一两个或三个部分是相等的).为了减少EL查找,我正在重构这些页面:

资源:

<c:out value="${foo.bar.baz.phleem1}" />
<c:out value="${foo.bar.baz.phleem2}" />
<c:out value="${foo.bar.baz.phleem3}" />
Run Code Online (Sandbox Code Playgroud)

重构后:

<c:set var="baz" value="${foo.bar.baz}" />
<c:out value="${baz.phleem1}" />
<c:out value="${baz.phleem2}" />
<c:out value="${baz.phleem3}" />
Run Code Online (Sandbox Code Playgroud)

我知道我可以通过搜索/替换来完成大部分工作,但由于它忽略了代码结构,因此感觉不安全.

在Eclipse或IntelliJ Idea中是否支持这种类型的重构?

Rat*_*kar 0

是的。您可以使用正则表达式在 Eclipse 中使用占位符并进行相应更改。

请参阅以下 URL 以获取 Eclipse 中的正则表达式 http://www.eclipse.org/tptp/home/downloads/installguide/gla_42/ref/rregexp.html

单击“搜索”[ Ctrl+H ],选中“正则表达式”选项和“filepattern to jsp”。

在此输入图像描述

按 Ctrl+空格键获取内容辅助。

在此输入图像描述

单击“搜索匹配”、“替换”以一次性替换所有匹配的字符串。您可以使用正则表达式组来替换内容

在此输入图像描述

在此输入图像描述

在此输入图像描述