@mazt_ser

Как передавать данные из Java в html c дальнейшим использованием JS?

Есть файл html, в котором нужно взять данные всех person и вывести в таблицу.
<!DOCTYPE HTML>
<html xmlns:th="http://www.thymeleaf.org">
<head>
    <meta charset="UTF-8" />
    <title>Person List</title>
    <link rel="stylesheet" type="text/css" th:href="@{/css/style.css}"/>
</head>
<body>
<h1>Person List</h1>
<a href="addPerson">Add Person</a>
<br/><br/>
<div>
    <table border="1">
        <tr>
            <th>First Name</th>
            <th>Last Name</th>
        </tr>
        <tr th:each ="person : ${persons}">
            <td th:utext="${person.firstName}">...</td>
            <td th:utext="${person.lastName}">...</td>
        </tr>
    </table>
</div>
</body>
</html>

Как сделать так, чтобы файл подхватывал данные из класса?
  • Вопрос задан
  • 36 просмотров
Пригласить эксперта
Ответы на вопрос 1
@paalse
Если речь идет про использование феймворка SPRING, то в нем нужно настроить контроллер, выглядеть он будет примерно так:

@Controller
@RequestMapping("/*")
public class PersonrController {

private PersonRepository personRepository;

@Autowired
public PersonController(PersonRepository personRepository) {
this.personRepository= personRepository;
}

// Метод который отрабатывает при наличии в конце URL "/allperson"
@GetMapping("/allperson")
public String listPage(Model model) {
// Данные Html передаются через переменную model, в которой создается атрибут persons
// В атрибут persons помещается коллекция типа ArrayList, которая состоит из элементов класса Person
// В примере ниже personRepository.findAll() как раз возвращает коллекцию с пользователями
model.addAttribute("persons", personRepository.findAll());
return "html_name"; // Возвращает имя файла html, который приведен у вас выше и задан в качестве шаблона
}
}
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы