请输入您要查询的百科知识:

 

词条 StringTemplate
释义

定义

StringTemplate(简称ST)是一个基于Java的模板引擎库(目前同时支持C#、Python、Ruby),可以用于生成源代码、Web页面、电子邮件等各种有格式的文本。StringTemplate不同于其他类似的模板引擎的显著特点是严格执行模型视图分离,尤其擅长多目标代码生成、多种网站风格管理以及网站多语言版本生成等。StringTemplate已经应用到许多大型网站中,例如jGuru.com。

特点

使用StringTemplate可以严格保证业务逻辑和表现逻辑相分离,不会互相干扰,提高网站的开发和维护的效率。模型和视图分离所带来的优点包括:模板文件可以在相似的网站开发中重用,清晰的模板文件可以做为网站开发的说明文档,模板文件可以单独修改。

基本语法

StringTemplate支持两种分隔符<...>和$...$

语法 描述 例子

<attribute>  显示变量值或空串  $user$
<user> 

<attribute.property>  显示集合或对象的属性值或空串 $user.name$
<user.name>

<attribute.(expr)>  与<attribute.property> 意义相同,但是如果expr是保留字,则必须使用<attribute.(expr)> $user.(name_label)$
<user.(name_label)>

<multi-valued-attribute>  集合中多个属性连接在一起的值 $users$
<users>

<multi-valued-attribute; separator=expr>  多个属性连接在一起,属性之间使用expr分隔 $users; separator=", "$
<users; separator=", ">

<template(argument-list)>    调用其它模板,可以向该模板传递参数 $bold()$
<bold(item=title)>

<attribute:template(argument-list)>  模板应用 $name:bold()$
<name:checkoutReceipt(items=skus, ship=shipOpt)>

<attribute:{argument-name_ | _anonymous-template}>  应用匿名模板 $users:{s|<li>$s$</li>}; separator="\"$
<users:{s|<li>$s$</li>}; separator="\">

<if(!attribute)>subtemplate<endif>  条件语句 $if(users)$ $users:{u|$u$}$ $endif$
<if(users)> <users:{u|<u>}> <endif>

\\$ or \\<  语法分隔符的转义表达 \\$
\\<

<\\ >, <\>, <\\t>, <\\r>  转义字符 $\$
<\>

<! comment !>, $! comment !$  注释符号 $! this is a comment !$
<! this is a comment !>

随便看

 

百科全书收录4421916条中文百科知识,基本涵盖了大多数领域的百科知识,是一部内容开放、自由的电子版百科全书。

 

Copyright © 2004-2023 Cnenc.net All Rights Reserved
更新时间:2024/12/23 14:02:42