java - 如何在 thymeleaf 中打印数组大小?

标签 java spring-mvc thymeleaf

我将 Thymeleafspring mvc 4 一起使用,但是当我想打印列表大小时我遇到了问题

<tr th:each="u : ${users}" th:id="${u.username}" class="odd gradeX">
    <th></th>
    <td th:text="${u.username}"></td>
    <td th:text="${u.email}"></td>
    <td th:switch="${u.enabled}">
        <span th:case="true" class="badge badge-primary">Acitf</span>
        <span th:case="false" class="badge badge-danger">Désactivée</span>
        <span th:case="*" class="badge badge-dark">Inconnue</span>
    </td>
    <td th:switch="${u.roles}">
        <span th:case="ROLE_SUPER_ADMIN">Super ADmin</span>
        <span th:case="ROLE_MANGER">Manager</span>
        <span th:case="ROLE_SUPERVISEUR">Superviseur</span>
        <span th:case="ROLE_USER">User</span>
        <span th:case="*">Inconnue</span>

    </td>
    <td th:text="${#calendars.format(u.creationDate,'dd/MM/yyyy hh:mm')}"></td>
    <td th:text="${#calendars.format(u.lastLogin,'dd/MM/yyyy hh:mm')}"></td>
    **
    <td th:text="${u.engines}"></td>
    <td th:text="${u.subordonnes}"></td>
    **
    <td></td>
</tr>

问题就在这里th:text="${u.engines}</td> . engines是我的 User 中的 ArrayList实体。我试过 th:sizeth:list但它没有用。

谁能帮帮我

已编辑

这是我的 User实体:

@OneToMany(mappedBy = "superieur")
@JsonIgnore
private List<User> subordonnes = new ArrayList<User>();

@ManyToMany(fetch = FetchType.EAGER, cascade = CascadeType.ALL)
@JoinTable(name = "USERS_ENGINES", joinColumns = @JoinColumn(name = "USER_ID"), inverseJoinColumns = @JoinColumn(name = "NUM_EQUIPMENT"))
@JsonIgnore
private List<Engine> engines = new ArrayList<Engine>();

和我的 Controller 方法:

@RequestMapping(value = {"/listeUsers"})
public ModelAndView userlistePage() {
    ModelAndView model = new ModelAndView();
    User logedUser = (User) SecurityContextHolder.getContext().getAuthentication().getPrincipal();
    
    List<User> users = new ArrayList<User>();
    users = userService.findUserSub(logedUser);
    model.addObject("users", users);
    model.setViewName("utilisateur/list_users");
    return model;
}

最佳答案

尝试使用 org.thymeleaf.expression.Lists 的实用方法:

<td th:text="${#lists.size(u.engines)}">[Engine Size]</td>

关于java - 如何在 thymeleaf 中打印数组大小?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43484142/

相关文章:

spring - Spring Controller 的 AOP

java - 如何在 Java 中为 Tree 正确实现 equals(), hashCode()?

java - 一个线程写数据不读,多线程读数据不写

java - Scala 范围、初始化

java - 允许使用代码时编辑和清理 servlet 中的用户输入吗?

java - 尝试在Spring MVC中使用OAuth保护资源

java - jsp页面中没有图像

java - 使用 Thymeleaf onclick 调用服务方法

Java Spring Thymeleaf 将枚举集合绑定(bind)到复选框时出错

java - 如何在 th :if tag using thymeleaf 中有多个条件