Springboot マイクロサービス プロジェクト統合 HTML ページを実装する方法

WBOY
リリース: 2023-05-13 13:49:06
転載
1360 人が閲覧しました

Spring Boot マイクロサービス プロジェクトは通常、HTML ページを直接統合するのではなく、REST API を通じてサービスを提供します。

Spring Boot プロジェクトに HTML ページを統合する場合は、簡単な調整の後、次の一般的なメソッドを使用できます。

  • **Thymeleaf: **Thymeleaf は次のとおりです。 Web およびスタンドアロン環境で拡張可能な XML/HTML/テキスト テンプレートを作成するための Java テンプレート エンジン。 Spring Boot と簡単に統合でき、使いやすく、テンプレートの継承や式言語などの機能をサポートします。

  • **FreeMarker: **FreeMarker は、動的な HTML、XML、JSON、JavaScript、CSS、およびその他のファイルの生成をサポートする、テンプレート ベースのビュー レンダリング エンジンです。また、Spring Boot と簡単に統合でき、使いやすく、テンプレートの継承やカスタム ディレクティブなどの機能をサポートしています。

  • **JSP: **JSP は Java テクノロジに基づく動的 Web 開発テクノロジであり、Java コードを簡単に埋め込んで HTML ページを生成できます。 Spring Boot と統合することもできますが、依存関係とプラグインの追加構成が必要です。

たとえば、Thymeleaf を使用することを選択した場合は、次の手順に従うことができます:

1、pom.xml に次の依存関係を追加します:

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>
ログイン後にコピー

2、次の設定を application.properties に追加します。

2.1 Thymeleaf テンプレート ファイルが配置されているパスを設定します。

spring.thymeleaf.prefix=classpath:/templates/
ログイン後にコピー

2.2 Thymeleaf テンプレート ファイルのサフィックス名を設定します

spring.thymeleaf.suffix=.html
ログイン後にコピー

2.3 Thymeleaf テンプレート ファイルの文字セットを設定します

spring.thymeleaf.encoding=UTF-8
ログイン後にコピー

2.4 キャッシュをオンにします

spring.thymeleaf.cache=true
ログイン後にコピー

3、HTML テンプレート ファイルを作成します

src/ に HTML テンプレート ファイルを作成しますmain/resources/templates ディレクトリ、および動的データ バインディングや条件付きレンダリングなどの操作に Thymeleaf タグを使用します。

たとえば、次は単純な HTML テンプレート ファイルindex.html です:

<!DOCTYPE html>
<html>
<head>
    <title>Spring Boot + Thymeleaf</title>
</head>
<body>
    <h2>Welcome to Spring Boot</h2>
    <p th:text="${message}">This is a placeholder text.</p>
</body>
</html>
ログイン後にコピー

4、コントローラーを作成します

Spring Boot アプリケーションのコントローラーで、@ を使用します。 GetMapping アノテーションは、ModelAndView オブジェクトを返すリクエスト処理メソッドを定義し、テンプレート ファイル名と動的データを ModelAndView オブジェクトに渡します。

たとえば、次は単純なコントローラ クラス HomeController です:

@Controller
public class HomeController {
    
    @GetMapping("/")
    public ModelAndView index() {
        ModelAndView modelAndView = new ModelAndView("index");
        modelAndView.addObject("message", "Hello, world!");
        return modelAndView;
    }
    
}
ログイン後にコピー

このようにして、ブラウザで http://localhost:8080 にアクセスすると、レンダリングされた HTML ページを確認できます。

別の FreeMarker の例を挙げて簡単に説明します。

Spring Boot を使用して Web アプリケーションを構築する場合、HTML ページをレンダリングするためのテンプレート エンジンとして FreeMarker を使用できます。 FreeMarker は、テンプレートを定義して HTML などのドキュメントを生成できるオープン ソースの Java テンプレート エンジンです。 FreeMarker を Spring Boot プロジェクトに統合するための一般的な方法は次のとおりです:

5, 依存関係の追加

プロジェクトの pom.xml ファイルに FreeMarker の依存関係を追加します:

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-freemarker</artifactId>
</dependency>
ログイン後にコピー

6,ビュー パーサーを構成する

application.properties ファイルに次の構成を追加して、ビューを解析するためのテンプレート エンジンとして FreeMarker を使用するように Spring Boot に指示します。

spring.mvc.view.prefix=/WEB-INF/views/
spring.mvc.view.suffix=.ftl
ログイン後にコピー

7、テンプレート ファイルを作成します。

src/main/resources/templates ディレクトリに .ftl ファイルを作成します。このファイルは、HTML ページのレンダリングに使用されます。テンプレート ファイルでは、FreeMarker のテンプレート言語を使用して HTML ページのコンテンツを定義します。

たとえば、次は「Hello World」を含む HTML ページをレンダリングする単純なテンプレート ファイルです:

<!DOCTYPE html>
<html>
<head>
    <title>Hello World</title>
</head>
<body>
    <h2>${message}</h2>
</body>
</html>
ログイン後にコピー

上記のテンプレートでは、${message} は実際の値に置き換えられます。 。 Java コードでモデルを使用して、この値を設定できます。

8、コントローラーの作成

Spring Boot アプリケーションでコントローラーを作成して、HTTP リクエストを処理し、テンプレートの名前とモデルを返します。サンプル コントローラーを次に示します。

@Controller
public class HomeController {
    @GetMapping("/")
    public String home(Model model) {
        model.addAttribute("message", "Hello World!");
        return "home";
    }
}
ログイン後にコピー

上記の例では、コントローラーは「home」文字列を返します。これはテンプレート ファイルの名前として使用されます。また、「message」というプロパティと「Hello World!」という値を含むモデルをビューに追加します。

これらは、Spring Boot プロジェクトで FreeMarker をテンプレート エンジンとして使用する一般的な方法です。 FreeMarker を使用すると、条件ステートメント、イテレータ、マクロなどの高度な機能を使用して、生成された HTML ページをより詳細に制御することもできます。

以上がSpringboot マイクロサービス プロジェクト統合 HTML ページを実装する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:yisu.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート