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

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

Jun 18, 2023 am 08:39 AM
freemarker java api web模板引擎。

Avec le développement rapide d'Internet, le développement d'applications Web est devenu de plus en plus courant. Pour rendre les applications Web plus lisibles et maintenables, les développeurs utilisent souvent des moteurs de modèles Web pour le rendu des vues. Dans le développement Java, il existe de nombreux moteurs de modèles Web populaires, et FreeMarker en fait partie.

Cet article présentera le moteur de modèles Web FreeMarker et son utilisation dans le développement d'API Java, y compris ses fonctionnalités de base, sa configuration et son application en combat réel.

1. Qu'est-ce que FreeMarker

FreeMarker est un moteur de modèle Java open source qui utilise une méthode basée sur un modèle pour générer du texte statique ou des pages Web dynamiques. Sa caractéristique est la séparation des modèles et du code du programme, qui clarifie les frontières entre performances et logique, sépare le rendu des pages et la logique métier et améliore la lisibilité et la maintenabilité du code. FreeMarker prend en charge plusieurs types de modèles tels que les modèles de texte, les modèles XML, les modèles HTML, les bibliothèques de balises JSP, etc., et peut être intégré à une variété de frameworks Web, tels que Struts2, Spring MVC, etc.

FreeMarker possède les fonctionnalités suivantes :

  1. Séparation des préoccupations : Le fichier modèle définit uniquement l'effet d'affichage de la page et le comportement interactif des utilisateurs frontaux, sans code de logique métier intégré.
  2. Forte prise en charge des types : par rapport à JSP, FreeMarker possède de solides capacités de prise en charge des types, ce qui peut nous aider à vérifier les erreurs de type au moment de la compilation et à réduire les erreurs d'exécution.
  3. Divers formats de fichiers modèles : FreeMarker prend en charge le traitement de plusieurs formats de fichiers modèles, notamment, mais sans s'y limiter, HTML, XML et JSON.
  4. Compatibilité : FreeMarker peut être intégré à divers frameworks Web et est largement utilisé dans SpringMVC, Struts2 et d'autres frameworks.

2. Utilisation de l'API FreeMarker

FreeMarker fournit de nombreuses API pour l'utiliser pour générer des modèles. Notre appel initial consiste à configurer FreeMarker pour émettre des modèles. Ensuite, nous montrons comment configurer et utiliser l'API FreeMarker.

  1. Présentation du package de dépendances de FreeMarker

Tout d'abord, nous devons ajouter les dépendances de FreeMarker dans le pom du projet. Pour charger le modèle, reportez-vous à l'exemple de code suivant :

    <dependency>
        <groupId>org.freemarker</groupId>
        <artifactId>freemarker</artifactId>
        <version>2.3.31</version>
    </dependency>
Copier après la connexion
    Parmi eux, VERSION_2_3_28 est le numéro de version de FreeMarker, et le La méthode setClassForTemplateLoading() définit le chemin permettant à FreeMarker de charger le modèle.
Définir le modèle de données

Ensuite, vous devez définir les données d'entrée du modèle. Dans FreeMarker, cet arrière-plan est une carte, et cette carte doit contenir toutes les données que nous souhaitons utiliser dans le modèle. Nous pouvons utiliser le type SimpleHash pour créer cette Map :

Configuration configuration = new Configuration(Configuration.VERSION_2_3_28);
configuration.setClassForTemplateLoading(YourClass.class, "templates");
Copier après la connexion
    Dans cet exemple, nous avons ajouté "title" comme clé et "FreeMarker Sample" comme valeur à l'entrée.
Charger et restituer le modèle

Enfin, nous devons charger le modèle et restituer les données d'entrée dans le modèle, reportez-vous à l'exemple de code suivant :

Map<String, Object> input = new HashMap<String, Object>();
input.put("title", "FreeMarker Example");
Copier après la connexion
    Dans cet exemple, "example.ftl" est le modèle fichier, nous utilisons la méthode configuration.getTemplate() pour le charger, la méthode template.process() est utilisée pour restituer les données en entrée dans le modèle, et enfin la sortie via la sortie.
Syntaxe du modèle FreeMarker

La syntaxe du modèle FreeMarker définit les balises de modèle, les formats et les méthodes intégrés. Les marqueurs de modèle sont des directives dans les modèles, constituées du code du modèle FreeMarker dans une paire de balises ${} ou <% %>

    Voici quelques marqueurs FreeMarker :
${...} : les expressions FreeMarker peuvent contenir n'importe quelle expression Java légale.

<% ... %> : contient les balises du modèle d'origine.

<@...>.. : indique un fragment de modèle agrégé.
  1. #...#list..#assign...#recover...#stop : Manipulez et contrôlez la balise d'origine de l'instance de modèle.
  2. <#macro...>...<#nested> : Définissez un bloc modèle réutilisable.
  3. 3. Exemples d'application de FreeMarker
  4. Ci-dessous, nous montrerons comment utiliser FreeMarker pour écrire des modèles dans le développement d'API Java.
Écrire un fichier modèle

Tout d'abord, nous devons écrire un fichier modèle FreeMarker, par exemple, test.ftl :

Template template = configuration.getTemplate("example.ftl");
Writer out = new OutputStreamWriter(System.out);
template.process(input, out);
out.flush();
Copier après la connexion
    Dans cet exemple, nous utilisons la balise ${...} pour référencer les données dans l'entrée, en utilisant la balise <#list ...> pour parcourir les utilisateurs et obtenir le nom et les attributs de courrier électronique de chaque utilisateur.
Définissez le modèle de données et chargez le modèle

Ensuite, nous devons définir le modèle de données, reportez-vous à l'exemple de code suivant :

<html>
<head>
<title>${title}</title>
</head>
<body>
<h1>${title}</h1>
<ul>
<#list users as user>
<li>${user.name} (${user.email})</li>
</#list>
</ul>
</body>
</html>
Copier après la connexion
    Dans cet exemple, nous avons créé une classe JavaBean nommée User lors de la création de la carte. , nous ajoutons la userList comme clé et la référence List comme valeur à l'entrée.
  1. 3. Résumé

Cet article présente le moteur de modèles Web FreeMarker et son utilisation dans le développement d'API Java. FreeMarker facilite le développement d'applications Web tout en améliorant la lisibilité et la maintenabilité du code. En expliquant les fonctionnalités de base, la configuration et l'application de FreeMarker dans la pratique, nous espérons aider les lecteurs à mieux comprendre et appliquer FreeMarker.

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 de ce site Web
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

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

Video Face Swap

Video Face Swap

Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Utilisation d'Imgscalr pour le traitement d'images dans le développement d'API Java Utilisation d'Imgscalr pour le traitement d'images dans le développement d'API Java Jun 18, 2023 am 08:40 AM

Utilisation d'Imgscalr pour le traitement d'images dans le développement d'API Java Avec le développement de l'Internet mobile et la popularité de la publicité sur Internet, les images sont devenues un élément indispensable dans de nombreuses applications. Qu'il s'agisse d'afficher des produits, de créer des cercles sociaux ou d'améliorer l'expérience utilisateur, les images jouent un rôle important. Dans les applications, il est souvent nécessaire d'effectuer des opérations telles que le recadrage, la mise à l'échelle et la rotation des images, ce qui nécessite l'utilisation de certains outils de traitement d'image. Imgscalr est une image très couramment utilisée dans le développement d'API Java.

Quels sont les sites Web à interface API gratuite ? Quels sont les sites Web à interface API gratuite ? Jan 05, 2024 am 11:33 AM

Site Web d'interface API gratuite : 1. UomgAPI : une plate-forme qui fournit des services API gratuits stables et rapides, avec plus de 100 interfaces API ; 2. free-api : fournit plusieurs interfaces API gratuites ; 3. API JSON : fournit une interface API de données gratuite ; . AutoNavi Open Platform : fournit des interfaces API liées aux cartes ; 5. Reconnaissance faciale Face++ : fournit des interfaces API liées à la reconnaissance faciale ; 6. Speed ​​​​Data : fournit plus d'une centaine d'interfaces API gratuites, adaptées à divers besoins dans le cas des données ; sources ; 7. Données agrégées, etc.

Comment implémenter le code de vérification d'image dans le développement d'API Java Comment implémenter le code de vérification d'image dans le développement d'API Java Jun 18, 2023 am 09:22 AM

Avec le développement rapide de la technologie Internet, afin de garantir la sécurité du système, les codes de vérification sont devenus un élément essentiel de chaque système. Parmi eux, le code de vérification d’image est privilégié par les développeurs en raison de sa facilité d’utilisation et de sa sécurité. Cet article présentera la méthode spécifique d'implémentation du code de vérification d'image dans le développement JavaAPI. 1. Qu'est-ce que le code de vérification d'image ? Le code de vérification d'image est un moyen de vérification homme-machine au moyen d'images. Il s'agit généralement d'une combinaison aléatoire d'images contenant des chiffres, des lettres, des symboles, etc., ce qui améliore la sécurité du système. Son principe de fonctionnement comprend

Utilisation de GreenMail pour tester les e-mails dans le développement d'API Java Utilisation de GreenMail pour tester les e-mails dans le développement d'API Java Jun 18, 2023 pm 02:22 PM

L'API Java est un langage de développement largement utilisé pour développer des applications Web, des applications de bureau, des applications mobiles, etc. Dans le développement JavaAPI, les tests de courrier électronique sont essentiels car la communication par courrier électronique est l'une des principales méthodes de communication dans la société moderne. Par conséquent, les développeurs doivent utiliser certains outils pour tester si leurs e-mails fonctionnent correctement. Cet article présentera un logiciel open source appelé GreenMail, qui peut être utilisé dans le développement JavaAPI pour tester les e-mails. Vert

Quels sont les protocoles courants pour la programmation réseau Java ? Quels sont les protocoles courants pour la programmation réseau Java ? Apr 15, 2024 am 11:33 AM

Les protocoles couramment utilisés dans la programmation réseau Java incluent : TCP/IP : utilisé pour une transmission de données fiable et une gestion des connexions. HTTP : utilisé pour la transmission de données Web. HTTPS : version sécurisée de HTTP qui utilise le cryptage pour transmettre des données. UDP : Pour un transfert de données rapide mais instable. JDBC : utilisé pour interagir avec des bases de données relationnelles.

Qu'est-ce que j2ee et quelles technologies il inclut Qu'est-ce que j2ee et quelles technologies il inclut Apr 14, 2024 pm 09:06 PM

J2EE est une plate-forme Java conçue pour développer des applications d'entreprise et comprend les technologies suivantes : Java Servlet et JSPJava Enterprise Beans (EJB)Java Persistence API (JPA)Java API for XML Web Services (JAX-WS)JavaMailJava Message Service (JMS)Java Transaction API (JTA)Interface de nommage et d'annuaire Java (JNDI)

JAX-RS contre Spring MVC : une bataille entre les géants RESTful JAX-RS contre Spring MVC : une bataille entre les géants RESTful Feb 29, 2024 pm 05:16 PM

Introduction Les API RESTful font désormais partie intégrante des applications WEB modernes. Ils fournissent une approche standardisée pour créer et utiliser des services Web, améliorant ainsi la portabilité, l'évolutivité et la facilité d'utilisation. Dans l'écosystème Java, JAX-RS et springmvc sont les deux frameworks les plus populaires pour créer des API RESTful. Cet article examinera en profondeur les deux frameworks, en comparant leurs fonctionnalités, avantages et inconvénients pour vous aider à prendre une décision éclairée. JAX-RS : JAX-RSAPI JAX-RS (JavaAPI pour RESTful Web Services) est un standard JAX-RSAPI développé par JavaEE pour le développement de REST.

Utilisation de Jgroups pour la communication distribuée dans le développement d'API Java Utilisation de Jgroups pour la communication distribuée dans le développement d'API Java Jun 18, 2023 pm 11:04 PM

Utilisation de JGroups pour la communication distribuée dans le développement JavaAPI Avec le développement rapide d'Internet et la popularité du cloud computing, les systèmes distribués sont devenus l'une des tendances importantes du développement Internet actuel. Dans un système distribué, différents nœuds doivent communiquer et collaborer entre eux pour obtenir une haute disponibilité, des performances élevées, une évolutivité élevée et d'autres caractéristiques du système distribué. La communication distribuée en est un élément crucial. JGroups est une bibliothèque Java qui prend en charge la collaboration multidiffusion et distribuée. Elle fournit une série de fonctionnalités.

See all articles