私はビュー技術としてThymeleafを使ってSpringブートアプリケーションを開発しています。私はsrc/main/resources/templatesフォルダの中にhtmlページdashboard.htmlを持っています。これはコントローラの中から呼び出されています。Thymeleaf - 静的なHTMLページからテンプレートのhtmlページを呼び出す方法
@PostMapping("https://stackoverflow.com/users/register")
public String registerUser(@Validated @ModelAttribute User user, Model model) {
User registeredUser = usersDAO.registerUser(user);
if (registeredUser == null) {
return "500error";
}
model.addAttribute("name", user.getName());
model.addAttribute("username", user.getUsername());
model.addAttribute("emailId", user.getEmailId());
return "dashboard";
}
私はstatic
フォルダ内のいくつかのより多くの静的なhtmlファイルを持っています。アンカータグ<a/>
のような静的なhtmlファイルからdashboard.html
に電話したいと思います。これはどうすればできますか?
自分のアプリがローカルで実行されているときに、このファイルに直接リンクすることはできません。たとえば、localhost:8080/templates/dashboard.html
は機能しません。
ここでは本当にあなたの質問ではありませんが、重要です:ユーザーが 'null'の場合は、適切なエラーページを表示するだけでなく、適切なHTTPコードが使用されるようにする必要があります。現在のコードでは、200 OKを返します。最も簡単な方法は、@ ResponseStatusで注釈を付けられた例外をスローすることです。 –
src/main/resourcesはhtmlページを保存するのに適していません –
ThymeleafスターターでSpring Bootを使用すると、@Gurkanİlleez 'src/main/resources/templates'がデフォルトの場所になります。 'static'サブディレクトリにいくつかのhtmlページがあるのは奇妙なことに私は同意します。主にCSS、JS、イメージファイルに使用されます。 –