Возвращение простого HTML от весеннего контроллера MVC
1. Обзор
В этом учебнике мы хотим посмотреть, как вернуть HTML с контроллера Spring MVC.
Давайте посмотрим, что должно быть сделано.
2. Зависимость от Maven
Во-первых, мы должны добавить весна-загрузка-стартер-веб- Зависимость Maven для нашего контроллера MVC:
org.springframework.boot spring-boot-starter-web 1.3.7.RELEASE
3. Контроллер
Далее давайте создадим наш контроллер:
@Controller public class HtmlController { @GetMapping(value = "/welcome", produces = MediaType.TEXT_HTML_VALUE) @ResponseBody public String welcomeAsHTML() { return "\n" + "\n" + "\n" + "Hello world\n" + "\n" + ""; } } Welcome
Мы используем @Controller аннотация, чтобы сказать Диспетчер Сервлет что этот класс обрабатывает запросы HTTP.
Далее мы настраиваем наши @GetMapping аннотация для производства MediaType.TEXT_HTML_VALUE выпуск.
И, наконец, @ResponseBody аннотация сообщает контроллеру, что возвращенный объект должен быть автоматически сериализован в настроенный тип мультимедиа, то есть, TEXT_HTML_VALUE, или текст/html .
Без этой последней аннотации мы получили бы ошибку 404 с момента Струнные значение возврата по умолчанию относится к имени представления.
С этим контроллером на месте, мы можем проверить его:
curl -v localhost:8081/welcome
Выход будет похож на:
> ... request ... > < HTTP/1.1 200 < Content-Type: text/html;charset=UTF-8 < ... other response headers ... <Hello world Welcome
Как и ожидалось, мы видим, что Контент-тип ответ не текст/html . Кроме того, мы видим, что ответ также имеет правильный HTML-контент.
4. Заключение
В этой статье мы рассмотрели, как вернуть HTML с контроллера Spring MVC.
Как всегда, образцы кода доступны более на GitHub .