Конечно, я с радостью помогу!
Чтобы сохранить список телефонов пользователя в приложении Spring Boot с использованием Thymeleaf, вам потребуется выполнить несколько шагов.
1. Создайте сущность User с полями, включая поле phones для хранения списка телефонов. Например:
```java
@Entity
public class User {
// другие поля
@ElementCollection
private List<String> phones;
// геттеры и сеттеры
}
```
2. Создайте репозиторий для доступа к базе данных:
```java
@Repository
public interface UserRepository extends JpaRepository<User, Long> {
}
```
3. Создайте контроллер, который будет обрабатывать запросы для добавления и сохранения пользователей:
```java
@Controller
public class UserController {
private final UserRepository userRepository;
public UserController(UserRepository userRepository) {
this.userRepository = userRepository;
}
@GetMapping("/users/new")
public String createUserForm(Model model) {
model.addAttribute("user", new User());
return "createUserForm";
}
@PostMapping("/users")
public String createUser(@ModelAttribute("user") User user) {
userRepository.save(user);
return "redirect:/users";
}
}
```
4. Создайте HTML-шаблон createUSerForm.html с формой для добавления пользователя и его телефонов:
```html
<form id="userForm" action="/users" method="post" th:object="${user}">
<!-- другие поля пользователя -->
<label for="phones">Телефоны:</label>
<input type="text" id="phones" name="phones" th:field="*{phones}" multiple="multiple">
<input type="submit" value="Сохранить">
</form>
```
5. Создайте страницу для отображения списка пользователей:
```java
@Controller
public class UserController {
// ...
@GetMapping("/users")
public String getUsers(Model model) {
List<User> users = userRepository.findAll();
model.addAttribute("users", users);
return "users";
}
}
```
6. Создайте HTML-шаблон users.html для отображения списка пользователей:
```html
<table>
<thead>
<tr>
<th>Имя</th>
<!-- другие заголовки -->
<th>Телефоны</th>
</tr>
</thead>
<tbody>
<tr th:each="user : ${users}">
<td th:text="${user.name}"></td>
<!-- другие ячейки -->
<td th:text="${user.phones}"></td>
</tr>
</tbody>
</table>
```
Теперь, при создании нового пользователя, вы сможете вводить список его телефонов через запятую или другой разделитель, и он будет сохраняться в базе данных и отображаться в списке пользователей.
Надеюсь, это поможет вам решить проблему! Если у вас возникнут дополнительные вопросы, не стесняйтесь задавать.