web-dev-qa-db-ja.com

ThymeleafのコントローラーにHTMLからデータを送信しますか?

HTMLページ(入力テキストフィールドがほとんどない単純なフォーム)からページコントローラーに、次にデータベースにデータを送信する必要があります。私はthymeleaf 2.0.17、spring 3.0を使用しています。いくつかの解決策を検索して確認しましたが、機能しませんでした。多分誰かが同じ問題を抱えていて、いくつかの良い解決策を見つけました。助けてください。ありがとう

12
user978758

例は http://www.thymeleaf.org/doc/tutorials/2.1/thymeleafspring.html#creating-a-form にあります。

チュートリアルが示唆するように、あなたはth:objectth: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;
  }
}

お役に立てれば。

41
Shinichi Kai