Постмаппинг - почему работает без модели? - PullRequest
0 голосов
/ 14 декабря 2018

Я недавно начал изучать Spring и написал очень простое «приложение», чтобы понять, как оно обрабатывает получение и публикацию запросов и контроллеров.По сути, он просто получает некое значение из входного текста и помещает его, чтобы убедиться, что я могу работать с ним в программепозже.

Мои коды:

<form th:action="@{/main/form2}" th:method="post">
<input th:object="${postdata}" placeholder="Write it here..." 
name="postdata">
<input type="submit" name="submit" value="submit">

И

@RequestMapping("/main")
public class Controller {
    @GetMapping("/form")
    public String getInfo() {
        return "form";
    }

    @PostMapping("/form2") //end point name
    public String postInfo(@ModelAttribute("postdata") String receivedData){
        System.out.println(receivedData);

        //ModelAttribute: what you get from the HTML.
        //It works, even if i do not have a model

        return "redirect:/main/form"; //HTML name

    }
}

У меня следующие вопросы:

  1. Почему он работает без создания экземпляра объекта из класса Model и добавления к нему этого атрибута модели?Нужна ли мне модель только тогда, когда я общаюсь в другом направлении, поэтому, когда я отправляю некоторые значения из Spring на html-страницу?
  2. Правильно ли делать это таким образом?

Спасибо заранее.

...