私はappを持っています。これはSpring Bookmarkチュートリアルの簡略版です。その中で、コントローラは@RestController
と注釈され、アプリはJSONだけを返します。SpringブートとThymeleafはテンプレートを生成しません
私はThymeleafテンプレート経由でHTMLを返す機能を追加しました。私のテンプレートは返されていますが、Thymeleafは処理していないようです。私はスプリングブートを使用していますが、build.gradle
fileにはspring-boot-starter-thymeleaf
がありますが、これでは十分ではありません。
例えば、ここではルートのためのシンプルなコントローラです:
package com.latencyzero.hoa;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.servlet.ModelAndView;
@Controller
@RequestMapping("/")
class
MainController
{
@RequestMapping(method = RequestMethod.GET)
ModelAndView
index()
{
ModelAndView mav = new ModelAndView("index");
mav.addObject("version", "0.1");
return mav;
}
}
とsrc/main/resources/templates/index.html
:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8"/>
<title>HOA v${version}</title>
</head>
<body>
<h1>HOA v${version}</h1>
</body>
</html>
レンダリングされている以下のページでの結果:
私が見つけた例では、これはすべてです私はする必要がありますが、それは動作していません。どこかに追加の設定注釈が必要ですか?
ありがとうございました。
'それのために。 –
文書から、 '@ RestController'は' @ContactBody'を持つ '@Controller'です。それにもかかわらず、 '@ Controller'では動作しません。 – Rick
正しい。これは、すべてのメソッドの戻り値がmarshallerになり、ビュー解決メカニズムに渡されないことを意味します。あなたの質問といくつかの設定にコントローラを追加してください... –