Maison  >  Article  >  Java  >  Utilisation de Thymeleaf pour le traitement du moteur de modèles Web dans le développement d'API Java

Utilisation de Thymeleaf pour le traitement du moteur de modèles Web dans le développement d'API Java

WBOY
WBOYoriginal
2023-06-18 09:02:381105parcourir

Dans le développement Web, un moteur de modèles est un outil utilisé pour générer du HTML dynamique. Il combine des données avec des modèles HTML pour générer la page HTML finale. Thymeleaf est un moteur de modèles émergent. En tant que moteur de modèles Java, il prend en charge HTML, XML, JSP, JavaScript et CSS. En séparant les données et les modèles, il rend la génération HTML plus flexible et plus facile à maintenir.

Cet article présente principalement comment utiliser Thymeleaf pour traiter le moteur de modèle Web dans le développement d'API Java.

1. Introduction à Thymeleaf

Thymeleaf est un moteur de modèles Java qui peut être utilisé dans des environnements Web et non Web. En tant que moteur de modèles pour les développeurs, Thymeleaf peut offrir une série d'avantages tels que le raccourcissement du cycle de développement, la réduction de la quantité de code, la réduction des dépendances externes et l'amélioration de la maintenabilité en s'intégrant à des frameworks tels que Spring.

2. Utilisez Thymeleaf pour le traitement du moteur de modèle

  1. Introduisez les dépendances Thymeleaf

Ajoutez des dépendances dans le pom Configuration :

<dependency>
    <groupId>org.thymeleaf</groupId>
    <artifactId>thymeleaf-spring5</artifactId>
    <version>3.0.12.RELEASE</version>
</dependency>
  1. Écrivez le modèle Thymeleaf

Créez un fichier HTML dans le fichier src/main/resources. /modèles répertoire :

@Configuration
public class ThymeleafConfig {
    @Autowired
    private ApplicationContext applicationContext;

    @Bean
    public ITemplateResolver templateResolver() {
        SpringResourceTemplateResolver resolver = new SpringResourceTemplateResolver();
        resolver.setApplicationContext(applicationContext);
        resolver.setPrefix("classpath:/templates/");
        resolver.setSuffix(".html");
        resolver.setCharacterEncoding("UTF-8");
        resolver.setCacheable(false);
        return resolver;
    }

    @Bean
    public SpringTemplateEngine templateEngine() {
        SpringTemplateEngine engine = new SpringTemplateEngine();
        engine.setTemplateResolver(templateResolver());
        return engine;
    }

    @Bean
    public ViewResolver viewResolver() {
        ThymeleafViewResolver resolver = new ThymeleafViewResolver();
        resolver.setTemplateEngine(templateEngine());
        resolver.setCharacterEncoding("UTF-8");
        return resolver;
    }
}
    Parmi eux, xmlns:th="http://www.thymeleaf.org" signifie utiliser la balise Thymeleaf, ${name} est le paramètre passé .
    1. Traitement des modèles

    Traitez la requête dans le Controller et restituez le modèle à la manière Thymeleaf :

    <!DOCTYPE html>
    <html xmlns:th="http://www.thymeleaf.org">
    <head>
      <title>Thymeleaf Example</title>
    </head>
    <body>
      <p th:text="'Hello, ' + ${name} + '!'" />
    </body>
    </html>
    xmlns:th="http://www.thymeleaf.org" 表示使用 Thymeleaf 标记,${name} 是传递过来的参数。

    1. 处理模板

    在 Controller 中处理请求,并以 Thymeleaf 的方式渲染模板:

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

    其中,"hello" 参数表示处理完请求后需要渲染的模板。

    1. 运行程序

    在浏览器中输入 http://localhost:8080/hello,可以看到输出结果:Hello, World!Parmi eux, le paramètre "hello" indique qu'après traitement du modèle de demande à restituer.

      Exécutez le programme

      Entrez http://localhost:8080/hello dans le navigateur, vous pouvez voir le résultat : Hello, World ! . 🎜🎜3. Conclusion🎜🎜La simplicité et la facilité d'utilisation de Thymeleaf le rendent largement utilisé dans le développement Web. Cet article présente principalement la méthode d'utilisation de Thymeleaf pour le traitement du moteur de modèles Web dans le développement d'API Java. J'espère que cela sera utile. 🎜

    Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

    Déclaration:
    Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn