在init.jsp中
<%@ taglib uri="http://jakarta.apache.org/taglibs/unstandard-1.0" prefix="un" %>
在JSP中
<%@ include file="/html/init.jsp"%>
<un:useConstants var="ImageType" className="com.mydomain.model.ImageType" />
<select id="amlCheckType" name="amlCheckType">
<option value="">Please choose one...</option>
<option value="${ImageType.AML_CHECK_SUBTYPE_VERIPHY}">Veriphy</option>
<option value="${ImageType.AML_CHECK_SUBTYPE_EQUIFAX}">Equifax</option>
</select>
在ImageType.java
public static final int AML_CHECK_SUBTYPE_VERIPHY = 135;
public static final int AML_CHECK_SUBTYPE_EQUIFAX = 136;
IntelliJ已将后两者灰显,并表示从未使用过。
IntelliJ是否可以识别这些用法,以免被误删除?
还是有更好的方法在JSP中引用Java常量,以便它们能够被识别?
更新
版本=社区2018.1
答案 0 :(得分:1)
IntelliJ IDEA社区版本不支持该功能。您可以在IntelliJ IDEA旗舰版中找到此功能。它具有Web开发的完整功能,包括在JSP/JSF
页中标识java变量。因此,我建议使用IntelliJ IDEA最终版本。
您可以遵循的另一种方法(通过注释禁止输入字段)
您可以为@Used
对已在JSF中使用的声明变量声明注释
@Used
public static final int AML_CHECK_SUBTYPE_VERIPHY = 135;
现在,您可以在字段中按alt + enter
,然后选择Suppress for fields for annotation ...Used
。现在,所有已标记为@Used
的字段都不会被IntelliJ投诉。
注意::注释过程不取决于您是否在JSF
中使用了变量。它只是提供了一种关闭检查标记标注的方法。如果您决定从JSF
中删除该字段,则必须进入Java
类,并自行删除该变量。 IntelliJ IDEA不会抱怨该变量未被使用