我有一个服务台(带有javaEe,Spring和thymeleaf),向我发送了一个形状如下的目标书:
public class BookDto {
@JsonProperty("id")
private Long id;
@JsonProperty("isbn")
private String isbn;
@JsonProperty("title")
private String title;
@JsonProperty("authors")
@Valid
private List<BooksAuthors> authors;
...
我需要从BooksAuthors对象的列表中提取作者姓名,如下所示:
public class BooksAuthors {
@JsonProperty("firstName")
private String firstName;
@JsonProperty("lastName")
private String lastName;
...
我想在表中显示有关作者的信息,但我不知道如何用Thymeleaf进行处理。我认为这将是一种分析作者的方法,而在每一种方法都可以分析书本的方法中,但是我无法使其工作。 我想要的结果是
<table class="table">
<thead>
<tr>
<th scope="col">Titre</th>
<th scope="col">Auteur</th>
<th scope="col">isbn</th>
<th scope="col">Exemplaires disponibles</th>
</tr>
</thead>
<tbody>
<tr th:each="book:${books}">
<td th:text="${book.getTitle()}"></td>
<td>Author1, Author2</td>
<td th:text="${book.getIsbn()}"></td>
<td>Pas implémenté</td>
</tr>
</tbody>
</table>
我设法取得了结果。我试图创建一个var并将其连接起来,但是我仍然必须删除最后一个','。更重要的是,它对我来说看起来很笨拙。
<td>
<span th:each="author:${book.getAuthors()}"
th:with="authorName=${author.getFirstName()} + ' ' + ${author.getLastName()} + ', '"
th:text="${authorName}">
</span>
</td>
我想知道是否有更好,更简单的解决方案?还是应该在我的业务层而不是在百里香里做? 非常感谢!
答案 0 :(得分:0)
我想您可以为此使用迭代状态对象:
https://www.thymeleaf.org/doc/tutorials/2.1/usingthymeleaf.html#keeping-iteration-status
要做这样的事情:
public ICommand ListSelectionChangedCommand { get; set; }
private void FlashImageForSelectedRow(InnerGridItems obj)
{
//Gives an exception that it cannot type cast to InnerGridItems.
}