4. Вывод данных из базы данных

Для вывода данных на странице index, необходимо выполнить следующие действия:

  1. обратиться к базе данных для получения списка студентов;

  2. передать список студентов в View;

  3. предусмотреть вывод полей каждого студента в нужных ячейках таблицы.

Модифицируем метод контроллера, который отвечает за обработку запроса "\"

StudentController.java
@Controller
public class StudentController {

    private StudentService service;

    @Autowired
    public void setService(StudentService service) {
        this.service = service;
    }
    
    @GetMapping("/")
    public String index(Model model) {
        model.addAttribute("students", service.getAllStudents());
        return "index";
    }
    
    ...
}

Модифицируем страницу index.html. Добавим вывод полей каждого объекта типа Student в таблице

index.html
<table class="table table-striped">
    <thead>
    <tr>
        <th class="text-justify">#</th>
        <th class="text-justify">Фамилия</th>
        <th class="text-justify">Имя</th>
        <th class="text-justify">Отчество</th>
        <th class="text-justify">Почта</th>
        <th class="text-justify">Телефон</th>
        <th class="text-justify">Адрес</th>
    </tr>
    </thead>
    <tbody>
    <tr th:each="student : ${students}">
        <td class="align-middle"><span th:text="${student.id}"/></td>
        <td class="align-middle"><span th:text="${student.lastName}"/></td>
        <td class="align-middle"><span th:text="${student.firstName}"/></td>
        <td class="align-middle"><span th:text="${student.patronymic}"/></td>
        <td class="align-middle"><span th:text="${student.email}"/></td>
        <td class="align-middle"><span th:text="${student.phone}"/></td>
        <td class="align-middle"><span th:text="${student.address}"/></td>
    </tr>
    </tbody>
</table>

Запустим приложение и посмотрим на результат. Изначально таблица студентов пустая

Добавляем нового студента

После добавления студента, нас перенаправляют на страницу index

Last updated