我必须从html页面(带有少量输入文本字段的简单表单)向页面控制器发送数据,然后发送到数据库。我正在使用thymeleaf 2.0.17,spring 3.0。我搜索并检查了一些解决方案,但没有工作。也许有人有同样的问题,并找到一些好的解决方案。请帮忙。感谢
答案 0 :(得分:39)
您可以在http://www.thymeleaf.org/doc/tutorials/2.1/thymeleafspring.html#creating-a-form中找到一个示例。
正如教程所示,您需要使用th:object
,th:action
和th:field
在Thymeleaf中创建表单。
看起来像这样:
控制器:
@RequestMapping(value = "/showForm", method=RequestMethod.GET)
public String showForm(Model model) {
Foo foo = new Foo();
foo.setBar("bar");
model.addAttribute("foo", foo);
...
}
@RequestMapping(value = "/processForm", method=RequestMethod.POST)
public String processForm(@ModelAttribute(value="foo") Foo foo) {
...
}
HTML:
<form action="#" th:action="@{/processForm}" th:object="${foo}" method="post">
<input type="text" th:field="*{bar}" />
<input type="submit" />
</form>
Foo.java:
public class Foo {
private String bar;
public String getBar() {
return bar;
}
public void setBar(String bar) {
this.bar = bar;
}
}
希望这有帮助。