6編JAVA springboot学習-VCとテンプレートエンジン


mvcとは、モデル/ビュー/コントローラのことです
という形式のものになります.
viewとcontrollerは過去に分離されたことがない.△私は2年目の青少年開発者なので、直接的な感触はありません!
viewですべてやったそれは模型1の方式だそうです.
過去、viewのビジネスロジックは非常に複雑でした.これにより、ファイルが非常に大きくなり、メンテナンス量もますます大きくなる現象が発生します.だから最近.
しかし、現在は通常mvc方式で開発されている(mvcモードは完全に正確ではないが:)
役と責任が聞こえます.
viewはスクリーンを直接描くすべての霊量です.
Controllerは、ビジネスロジックまたは内部ロジックの開発に専念します.
<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org/">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<p th:text="'hello' + ${name}"></p>
</body>
</html>
以上のコード
src/main/resources/templates
ここで作ったのです.
上のmvc説明で学習したc部分を担当するコントローラに
次のコードを付けると
//controller part
package hello.hellospring.controller;

import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;

@Controller()
public class HelloController {
    @GetMapping("hello")
    public String hello(Model model){
        model.addAttribute("data","hello!!");
        return "hello";
    }

    @GetMapping("hello-mvc")
     public String helloMvc(@RequestParam("name") String name, Model model){
        model.addAttribute("name", name);

        return "hello-template";
    }
}
この部分にあります.
 @GetMapping("hello-mvc")
     public String helloMvc(@RequestParam("name") String name, Model model){
        model.addAttribute("name", name);

        return "hello-template";
    }
restリクエスト中にgetリクエストを行います.
サーバーが開いていることを確認します.
ブラウザ検索バー
http://localhost:8080/hello-mvc?name=insung!!
のように入力します.

上図のように.
@RequestParam装飾で外部からnameというキー値を受信して返す場合
hello-templete.htmlファイルのnameに入ります.
動作原理は
Webブラウザ
localhost:8080/hello-mvc?name=insung
リクエストを送信するとspringの組み込み猫サーバがリクエストを受信しspringコンテナに送信します.
スプリングコンテナはこの要求を受信し、その要求を満たすコントローラを検索します.
hellomvcメソッドであるため、メソッドが返す値はspringに渡され、ビューに関連する値がspringに渡されるとspringはその部分をviewResolverという部分に内部から渡されます.ではviewResolverはビューを検索してインポートする役割を果たします.これにより、対応する出力が得られます.
▼nestjsの上で開発された開発者の視線の中でspringとの接続点と区別!
nestJSでは、
import { Controller, Get } from '@nestjs/common';

@Controller('/hello-mvc')
export class HelloController {
  @Get()
  findAll(@Param() name): string {
    return `'hello' + ${name}`;
  }
}
上記の合成を行います.
Nodejsに似ていますが、異なる部分の時間が見えます!