Mais conteúdo relacionado Semelhante a SpringBoot開発の基本 (20) Mais de iPride Co., Ltd. (20) SpringBoot開発の基本3. Spring Boot概要
• Spring Framework
Javaの開発環境で使用できる統合フレームワーク(骨組み)
• Spring MVC
Spring FrameworkをベースとしたWebアプリ開発用フレームワーク
• Spring Boot
プロジェクトの初期設定・環境構築が複雑、といったSpring MVCの
難点を解消したフレームワーク
Spring Frameworkの拡張性を利用しやすくした点が大きな特徴
6. STS(Spring Tool Suite)
• STSはSpring開発元が用意したSpring純正開発ツールのこと
• Eclipse(統合開発環境)をベースに、Spring Frameworkを利用する為の
機能を盛り込むことで、より簡単なアプリ構築を実現
・つまりフレームワークをいちいちダウンロードする必要がない
11. テンプレート
• 表示内容をテンプレートとして準備
• <form method="post" action= /">で
「/」にPOST送信するフォームを設置
• テンプレートのライブラリとして
Thymeleafを用いている
• th:text= ${msg} とすることで
Thymeleafによってレンダリングされる際
コントローラー側のmsgの値が表示される
<!DOCTYPE HTML>
<html xmlns:th="http://www.thymeleaf.org">
<head>
<title>top page</title>
<meta http-equiv="Content-Type"
content="text/html; charset=UTF-8" />
<style>
h1 { font-size:18pt; font-weight:bold; color:gray; }
body { font-size:13pt; color:gray; margin:5px 25px; }
</style>
</head>
<body>
<h1>Helo page</h1>
<p th:text="${msg}">please wait...</p>
<form method="post" action="/">
<input type="text" name="text1" th:value="${value}" />
<input type="submit" value="Click" />
</form>
</body>
</html>
12. コントローラークラス
• ModelAndViewクラスはデータ類とビュー
両方を管理する
• mav.addObject( value",str)で値の保管、
mav.setViewName( index")でテンプレート
の設定を行い、それらを戻り値としている
• 「@RequestParam("text1")」を付けた
引数はtext1という名で送られたフォームの値
package com.tuyano.springboot;
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.RequestParam;
import org.springframework.web.servlet.ModelAndView;
@Controller
public class HeloController {
@RequestMapping(value="/", method=RequestMethod.GET)
public ModelAndView index(ModelAndView mav) {
mav.setViewName("index");
mav.addObject("msg","お名前を書いて送信してください。");
return mav;
}
@RequestMapping(value="/", method=RequestMethod.POST)
public ModelAndView send(@RequestParam("text1")String str,
ModelAndView mav) {
mav.addObject("msg","こんにちは、" + str + "さん!");
mav.addObject("value",str);
mav.setViewName("index");
return mav;
}
}