Maison  >  Article  >  Java  >  Partage d'un didacticiel d'exemple Velocity

Partage d'un didacticiel d'exemple Velocity

零下一度
零下一度original
2017-07-20 16:47:502185parcourir

1. Qu'est-ce que la vitesse ?

Velocity est un moteur de modèle basé sur Java qui fournit un langage de modèle pour référencer des objets définis par du code Java.

2. Que peut faire Velocity ?

  1. Velocity peut créer des pages HTML et réserver des espaces réservés. (L'utilisation la plus basique)

  2. Velocity peut générer du code source Java et SQL basé sur des modèles. (Du jamais vu)

  3. Générer automatiquement des emails. (Jamais vu)

  4. Lisez XML et convertissez-le au format de document requis, généralement HTML. (Je ne l'ai jamais vu)

3. Exemple de vitesse

Annotation de vitesse

Une seule ligne##
Plusieurs lignes#*    *#
Commentaires du bloc de code (information) ##*    *#

Variable de vitesse

définition :

#set( $foo = "Velocity" )

utilisation :

$foo
${foo}

Collection de vitesse

#set( $greatlakes = ["Superior","Michigan","Huron","Erie","Ontario"] )

Jugement conditionnel de vitesse

#if( $foo < 10 )
    <strong>Go North</strong>
#elseif( $foo == 10 )
    <strong>Go East</strong>
#else
    <strong>Go West</strong>
#end

Boucle de vitesse

#foreach( $customer in $customerList )
    #if( $foreach.count > 5 )
        #break
    #end
    $customer.Name
#end

Fichier de référence de vitesse

#include( "one.vm" ) one.vm 不解析。
#parse( "me.vm" ) me.vm 解析。

Bloc de code de définition de vitesse

#define( $block )
Hello $who
#end

#set( $who = &#39;World!&#39; )
$block

Appel de macro de vitesse

  • Pas de ginseng

#macro( d )
<tr><td></td></tr>
#end

#d()
  • Ginseng unique

#macro( d )
<tr><td>$!bodyContent</td></tr>
#end

#@d()Hello#end
  • Tout paramètre

Définition

#macro( tablerows $color $somelist )
#foreach( $something in $somelist )
    <tr><td bgcolor=$color>$something</td></tr>
#end
#end

Appel

#set( $greatlakes = ["Superior","Michigan","Huron","Erie","Ontario"] )
#set( $color = "blue" )

    #tablerows( $color $greatlakes )

Sortie

<table><tr><td bgcolor="blue">Superior</td></tr><tr><td bgcolor="blue">Michigan</td></tr><tr><td bgcolor="blue">Huron</td></tr><tr><td bgcolor="blue">Erie</td></tr><tr><td bgcolor="blue">Ontario</td></tr></table>

Vitesse remplissant les fosses

1. Diverses méthodes d'écriture

$foo
## is the same as
${foo}

$foo.getBar()
## is the same as
$foo.Bar$data.setUser("jon")
## is the same as
#set( $data.User = "jon" )

$data.getRequest().getServerName()
## is the same as
$data.Request.ServerName## is the same as
${data.Request.ServerName}

2. La variable de vitesse n'est pas définie
Utilisez $!, par exemple

$!foo

quand foo n'est pas défini, affiche une chaîne vide.

3. Séquence d'appel de vitesse
Vitesse $customer.address, séquence d'appel :

getaddress()getAddress()get("address")isAddress()

4. ($foo)
Renvoie vrai dans les deux cas :
(1) $foo est un type booléen et est vrai.
(2) $foo n'est ni 0 ni nul.

5. #if ($foo == $bar)
Étant donné que les variables Velocity sont finalement générées sous forme de chaînes, Velocity appellera automatiquement .toString() pour convertir les variables en chaîne. .
Ainsi, $foo et $bar sont comparés comme des chaînes. Même si les types sont différents dans le code Java, il est possible de renvoyer true.

Mode strict de vitesse

Velocity 1.6 introduit le mode de référence strict, qui est activé en définissant la propriété de configuration Velocity "runtime.references.strict" sur true.
Velocity lèvera une exception lorsqu'il n'y a pas de définition ou d'ambiguïté.

J'espère que cet article vous sera utile. par iamtjcn

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