如何迭代 java 数组



我正在春季启动中使用用户角色作为百里香叶下拉选择中的客户端或供应商来设置基于角色的授权。列表项来自 java private List<String> userRoles()。如何迭代视图中的列表项?

我尝试使用角色.java模型类和用户.java模型。我List<String> userRoles()中的列表项为

List<String> ROLE = new ArrayList<>();
ROLE.add("CLIENT");
ROLE.add("SUPPLIER");

控制器 Java 列表项

private List<String> userRoles() {
    List<String> ROLE = new ArrayList<>();
    ROLE.add("CLIENT");
    ROLE.add("SUPPLIER");
    return ROLE;
}

查看迭代

<select th:field="*{userRole}">
    <option th:each="*ROLE:${userRoles}" th:value="${ROLE}" th:text="${ROLE}">
        Select Role
    </option>
</select>

我希望角色变量具有元素客户和供应商,但这就是我得到的 '!', '!=', '%', '&#', '&&', '&gt;', '&lt;', '*', '+', '+=', ',', '-', '.', '/', <, <=, <Literal>, '==', '>', '>=', IDENTIFIER, STRING_IDENTIFIER, and, div, empty, eq, ge, gt, le, lt, mod, ne, not, or, '|' or '||' expected, got ':'我想知道逻辑是错误的还是完全不是这样做的

您收到该错误消息的原因是您的th:each表达式中有一个额外的星号:

th:each="*ROLE:${userRoles}"

应该是

th:each="ROLE: ${userRoles}"

最新更新