#spring #spring-boot
#весна #весна-загрузка
Вопрос:
Я должен разработать проект для колледжа с использованием Spring. Я начал смотреть некоторые учебные пособия, и я не могу показать HTML-страницу. Я делаю то же самое, но он возвращает только одну строку. Я использую Visual studio code.
Контроллер:
package com.example.springteste.controllers;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class ProductController {
@GetMapping("/formulario")
public String formulario()
{
return "form";
}
}
Мое представление находится только внутри шаблонов
Вид:
<!DOCTYPE html>
<html lang="pt-br">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<main>
<section id="sectionProduct">
<div>
<div id="sectionProduct-title">
<h1>
Título
</h1>
</div>
<div id="sectionProduct-form">
<form action="">
<div class="sectionProduct-form-inputLabel">
<input type="text" id="title" name="title">
<label for="title">
Título
</label>
</div>
</form>
</div>
</div>
</section>
</main>
</body>
</html>
Я считаю, что чего-то не хватает. Я новичок в Java и spring
Ответ №1:
Если вы хотите вернуть имя представления из обработчика метода контроллера — вы должны использовать @Controller
аннотацию. Также убедитесь, что вы поместили свои представления в правильный каталог в соответствии с вашей конфигурацией распознавателя представлений.
О @RestController
— как следует из названия, оно должно использоваться в случае контроллеров стиля REST, т.Е. Методы обработчика должны возвращать ответ JSON / XML непосредственно клиенту, а не использовать преобразователи представления.
В вашем случае метод обработчика вернется "form"
к клиенту.