词条 | StringTemplate |
释义 | 定义StringTemplate(简称ST)是一个基于Java的模板引擎库(目前同时支持C#、Python、Ruby),可以用于生成源代码、Web页面、电子邮件等各种有格式的文本。StringTemplate不同于其他类似的模板引擎的显著特点是严格执行模型视图分离,尤其擅长多目标代码生成、多种网站风格管理以及网站多语言版本生成等。StringTemplate已经应用到许多大型网站中,例如jGuru.com。 特点使用StringTemplate可以严格保证业务逻辑和表现逻辑相分离,不会互相干扰,提高网站的开发和维护的效率。模型和视图分离所带来的优点包括:模板文件可以在相似的网站开发中重用,清晰的模板文件可以做为网站开发的说明文档,模板文件可以单独修改。 基本语法StringTemplate支持两种分隔符<...>和$...$ 语法 描述 例子 <attribute> 显示变量值或空串 $user$ <attribute.property> 显示集合或对象的属性值或空串 $user.name$ <attribute.(expr)> 与<attribute.property> 意义相同,但是如果expr是保留字,则必须使用<attribute.(expr)> $user.(name_label)$ <multi-valued-attribute> 集合中多个属性连接在一起的值 $users$ <multi-valued-attribute; separator=expr> 多个属性连接在一起,属性之间使用expr分隔 $users; separator=", "$ <template(argument-list)> 调用其它模板,可以向该模板传递参数 $bold()$ <attribute:template(argument-list)> 模板应用 $name:bold()$ <attribute:{argument-name_ | _anonymous-template}> 应用匿名模板 $users:{s|<li>$s$</li>}; separator="\"$ <if(!attribute)>subtemplate<endif> 条件语句 $if(users)$ $users:{u|$u$}$ $endif$ \\$ or \\< 语法分隔符的转义表达 \\$ <\\ >, <\>, <\\t>, <\\r> 转义字符 $\$ <! comment !>, $! comment !$ 注释符号 $! this is a comment !$ |
随便看 |
百科全书收录4421916条中文百科知识,基本涵盖了大多数领域的百科知识,是一部内容开放、自由的电子版百科全书。