Я недавно начал изучать 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
}
}
У меня следующие вопросы:
- Почему он работает без создания экземпляра объекта из класса Model и добавления к нему этого атрибута модели?Нужна ли мне модель только тогда, когда я общаюсь в другом направлении, поэтому, когда я отправляю некоторые значения из Spring на html-страницу?
- Правильно ли делать это таким образом?
Спасибо заранее.