Что такое вид двигателя весной mvc Java и как он работает? - PullRequest
0 голосов
/ 12 февраля 2020

Я слышал термин «тимелист» как двигатель представления. Но я не знаю, где он работает в веб-приложении, пожалуйста, уточните это.

1 Ответ

0 голосов
/ 12 февраля 2020

Их чаще называют шаблонизаторами и предоставляют инструменты для отображения данных, содержащихся в ваших Java объектах, в динамически генерируемые HTML.

Быстрый пример, чтобы вы поняли, что это значит, у вас есть @Controller с этим отображением:

@GetMapping("/example")
public String getExample(Model model) {
    List<ExampleDTO> list = exampleService.findAll();
    model.addAttribute("list", list);
    return "list-all";
}

ExampleDTO.java имеет два строковых атрибута: «имя» и «метка». И у вас есть шаблон HTML (list-all.html), подобный этому:

...
<div th:each="item : ${list}">
    Name: <span th:text="${item.name}"></span><br>
    Label: <span th:text="${item.label}"></span>
</div>
...

Здесь th:each и th:text оба оцениваются Thymeleaf и заменяются на HTML. th:each будет перебирать коллекцию и генерировать столько элементов, сколько и collection.size(), тогда как th:text просто заменяет содержимое тега значением атрибута объекта Java.

В конце концов, браузер получит HTML, как показано ниже (представьте, что список содержит 3 элемента):

...
<div>
    Name: <span>Item 1</span><br>
    Label: <span>IT1</span>
</div>
<div>
    Name: <span>Item 2</span><br>
    Label: <span>IT2</span>
</div>
<div>
    Name: <span>Item 3</span><br>
    Label: <span>IT3</span>
</div>
...

Thymeleaf очень мощный, больше информации здесь .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...