Как из thymeleaf-формы получить данные в DTO или в List?

Чтобы получить данные из Thymeleaf-формы и сохранить их в DTO или List, вам потребуется настроить контроллер и шаблон Thymeleaf.

1. Создайте класс DTO, который будет представлять данные, которые вы хотите получить из формы. Класс должен содержать соответствующие поля, геттеры и сеттеры:

public class MyDTO {
    private String field1;
    private String field2;
    
    // геттеры и сеттеры...
}

2. В контроллере, который обрабатывает POST-запросы, добавьте метод, который будет принимать данные из формы и сохранять их в DTO или List. Для этого вам понадобится аннотация @ModelAttribute, которая привязывает значения полей формы к полям DTO или List:

@Controller
public class MyController {

    //...

    @PostMapping("/submitForm")
    public String submitForm(@ModelAttribute MyDTO myDTO) {
        // сохранение данных в DTO
        // ...
        
        return "redirect:/successPage";
    }
}

3. В шаблоне Thymeleaf, где находится ваша форма, укажите атрибут th:object с именем вашего DTO или List. Это позволяет Thymeleaf автоматически заполнять значения полей формы с данными из модели:

<form th:object="${myDTO}" th:action="@{/submitForm}" method="post">
    <input type="text" th:field="*{field1}" />
    <input type="text" th:field="*{field2}" />
    
    <button type="submit">Submit</button>
</form>

4. Когда пользователь отправляет форму, данные будут переданы на указанный URL контроллера ("/submitForm"), где метод submitForm будет вызван. В этом методе данные будут автоматически привязаны к объекту MyDTO или добавлены в List.

В результате, после отправки формы, данные будут сохранены в указанном DTO или List, и вы сможете использовать их для дальнейшей обработки или хранения.