Thymeleafのテンプレート
⾯最新のWebサーバー環境とユニークな注目を集め、すぐにJavaのエンドテンプレートエンジン HTML、XML、JavaScriptやCSS、さらには⾄テキストを扱うことができる純粋です。
1. thymeleafの導入
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>
2.Thymeleafの使用&文法
クラスパス上のHTMLページ:/テンプレート/ダウン、thyemeleafは自動的にレンダリングされます
を使用します:
1.インポートThymeleafの名前空間
-
<html lang="en" xmlns:th="http://www.thymeleaf.org">
2.構文thymeleaf
-
<!DOCTYPE html> <html lang="en" xmlns:th="http://www.thymeleaf.org"> <head> <meta charset="UTF-8"> <title>Title</title> </head> <body> <!--<h2>你好</h2>--> <!--th:text 将div里边的文本内容设置为 --> <div th:text="${hello}">这是显示欢迎信息</div> </body> </html>
3.使用中のthymeleafテンプレートspringBoot、このようなパッケージ構造を確立する必要性
- ここでは、新しいフォルダを作成する必要thymeleaf、あなたは(長ったらしい1のspringbootは、JSPファイルをサポートしていません)(springbootが自動的にスキャンされます)このフォルダ内のHTMLファイルが必要です
前記前端と後端データインタラクション
(1)フロントエンド - >リア
フォームを提出、これは入ってくるコントローラ層のニーズに応じて、入力フォームでjaveBeanに名前タグと一致するように後端では、オブジェクトにカプセル化されてもよいです。
login.htmlと
-
<body> <div class="all_wrap"> <form action="goLogin" method="POST" class="form-login"> <h2>Login</h2> <input class="input" type="text" name="username" placeholder="Username"><br> <input class="input" type="password" name="password" placeholder="Password"><br> <input class="btn btn-info" type="submit" value="submit"> </form> </div> </body>
IndexController
-
@RequestMapping("login") public String login(){ return "login"; } @RequestMapping("goLogin") public String goLogin(User user){ boolean flag = iLoginService.isUser(user); if(flag){ //登录成功,跳转首页 return "first"; }else{ //登录失败,重新输入密码 return "login"; } }
(2)後端 - >フロントエンド
私はラインといくつかのプロジェクトを完了し、私にはわからないことの3つの方法が、私はあなたの私が学ぶことのために十分な塗りつぶし、モデルの両方を使用して、とにかく、があることをより単純、より少ないプロジェクトの経験のように見える、ので、再びいくつかの単語以上埋めます。
テストコントローラモデル
-
@GetMapping("/testModel") public String testModel(Model model) { System.out.println("*********testModel方法一**********"); TestModel uu = new TestModel(); uu.setAge(1); uu.setPassword("22"); uu.setUsername("33"); model.addAttribute("model",uu); return "aa"; } @GetMapping("/testModel2") public ModelAndView testModel2() { System.out.println("*********testModel方法二**********"); ModelAndView mv = new ModelAndView(); TestModel uu = new TestModel(); uu.setAge(1); uu.setPassword("22"); uu.setUsername("33"); mv.addObject("model",uu); mv.setViewName("aa"); return mv; }
aa.html
-
<!DOCTYPE html> <html lang="en" xmlns:th="http://www.thymeleaf.org"> <head> <meta charset="UTF-8"> <title>Title</title> </head> <body> <div> <span th:text="${model.username}"></span> <span th:text="${model.age}"></span> <span th:text="${model.password}"></span> </div> </body> </html>
- フロントデスクだから、それがデータを処理し得ることができます。
- このテンプレートについて私もこれを理解して、追加してください〜
合計を追加するよりも、もっと
- 効果的なモデルパラメータのデータのみが特定の原則を知らない、忘れ未満である必要があり、そこで(気持ちは非常のみのA組thymeleafテストに使用された、道を標準化されていません)