0 0

freemarker的宏输出的结果作为变量赋值如何实现?0

用freemarker的#assign 后面跟一个宏的调用,也就是把宏的结果值赋给变量但是无法通过编译,请教如何实现这个功能?
2014年11月18日 11:35

2个答案 按时间排序 按投票排序

0 0

使用freemarker的函数<#function a><#return "b"></#function>

${a()}
这样就可以了

2014年11月18日 16:14
0 0

你可以在宏里面使用<#assign>,例如:
<#macro list=list>
  <#assign n=list.size>
</#macro>

2014年11月18日 13:55

相关推荐

    Velocity 和 FreeMarker区别

    - **Velocity**的变量赋值方式较为简单,通常采用`#set($foo = "value")`的形式。 2. **循环**: - **FreeMarker**提供了多种循环结构,如`&lt;#list items as item&gt;`,可以处理不同的数据类型和复杂度。 - **...

    freemarker总结

    FreeMarker对空值的处理非常严格,FreeMarker的变量必须有值,没有被赋值的变量就会抛出异常,因为FreeMarker未赋值 的变量强制出错可以杜绝很多潜在的错误,如缺失潜在的变量命名,或者其他变量错误.这里所说的空值,...

    freemarker

    它们允许你在模板中进行条件判断、循环和变量赋值。 4. **内置函数(Built-in Functions)**:Freemarker提供了许多内置函数,如`?html`(防止XSS攻击)、`?length`(获取数组或列表长度)等,可以方便地在模板中...

    FreeMarker

    此外,FreeMarker 对变量赋值的要求可能导致额外的编程复杂度。 ### FreeMarker 示例 以下是一个简单的 FreeMarker 使用案例,包括搭建 Maven 项目、配置依赖、创建模板文件以及处理变量等内容。 #### 搭建 Maven...

    freemarker Demo 适用于freemarker初学

    Freemarker是一个强大的模板引擎,常用于JavaEE应用中的视图层处理,尤其与Struts2等MVC框架配合使用,能实现灵活的动态页面渲染。这个"freemarker Demo"是一个适合初学者的示例项目,旨在帮助新接触Freemarker的...

    Freemarker语法规则教程

    - 直接输出一个变量:`${answer}`(假设`answer`被赋值为42)。 - 使用字符串转换:`${answer?string}`,这种形式与直接输出变量类似。 - **数字类型的字符串格式化**: - 数字类型输出:`${answer?string....

    FreeMarker手册-Freemarker 2.3.18

    例如,`&lt;#if&gt;`、`&lt;#foreach&gt;`用于条件判断和循环,`&lt;#assign&gt;`用于变量赋值。 2. **数据模型和变量** FreeMarker的核心概念是数据模型,它是由Java对象构成的结构,这些对象可以被模板引用。在模板中,你可以通过`...

    freemarker.jar下载

    例如,`&lt;#if&gt;`、`&lt;#foreach&gt;`、`&lt;#assign&gt;`等用于条件判断、循环和变量赋值。 2. 数据模型 在Freemarker中,数据模型是程序传递给模板的数据结构,通常由Java对象构成。模板中的变量引用这些数据,以生成最终的...

    freemarker语法完整版

    - `&lt;#global name=value&gt;` 用于全局变量赋值。 - 示例: ```freemarker ``` **10. setting** - `&lt;#setting name=value&gt;` 用于设置环境变量。 - 示例: ```freemarker ``` **11. macro, nested, return...

    freemarker中文文档与包

    例如,`&lt;#if&gt;`用于条件判断,`&lt;#foreach&gt;`用于循环,`&lt;#assign&gt;`用于变量赋值,`&lt;#function&gt;`定义自定义函数。这些元素使得开发者可以在模板中灵活地控制输出内容。 2. **数据模型与变量**: 在Freemarker中,数据...

    FreeMarker中文文档.pdf下载

    FreeMarker是一个开放源代码的模板引擎,它能够将数据模型与表现层分离,使开发人员能够更加专注于业务逻辑的实现,而让前端工程师或设计师专注于界面的设计。这种模式有助于提高开发效率,并且使得维护变得更加容易...

    freemarker_lastest最新最全--文档+安装包+操作手册

    4. **freemarker常用使用文档.ppt**:这个可能是Freemarker的使用教程或者示例集,以PPT形式呈现,适合快速学习和查阅常见用法,例如变量赋值、控制结构、函数调用等。 5. **FreeMarker_2.3.23_Manual_zh_CN.zip**...

    FreeMarker相关学习文档

    3. 指令和变量:FreeMarker支持多种指令,如`&lt;#if&gt;`(条件判断)、`&lt;#foreach&gt;`(循环)和`&lt;#assign&gt;`(赋值)。变量则用于显示数据模型中的值。 二、FreeMarker的主要特性 1. 非脚本语言:FreeMarker模板不包含...

    freemarker 介绍

    - `${var}`用于输出变量的值,Freemarker会计算表达式并替换为结果。 4. **模板结构和语法规则**: - Freemarker模板由文本、插值(Interpolation)、FTL标记和注释组成。 - 插值由`${...}`或`#{...}`包围,计算...

    freemarker实现代码生成器

    3. 标记语法:Freemarker的语法主要包括 `${expression}`(输出表达式的结果)、`&lt;#if&gt;`(条件判断)、`&lt;#foreach&gt;`(循环)、`&lt;#assign&gt;`(赋值)等。 二、代码生成器的实现步骤 1. 设计模板:首先,我们需要设计...

    freemarker-2.3.13.jar.zip

    1. **模板语言**:Freemarker的模板语言支持条件语句(if/else)、循环(foreach)、引入其他模板(include)以及变量赋值和操作。它还支持逻辑运算符、算术运算符和字符串操作。 2. **数据驱动**:Freemarker的...

    freemarker03

    1. **#set指令**:这是最基础的赋值指令,允许你将表达式的结果赋值给一个变量。例如,`&lt;#set var1 = "Hello World"&gt;`,然后可以在模板中使用${var1}来访问这个值。 2. **#if/#else指令**:用于条件判断。如`...

    FreeMarker笔记1

    使用`&lt;#assign&gt;`可以给变量赋值,如: ```freemarker , World!"&gt; ${message} ``` ### 7. 条件语句 FreeMarker支持`#if`、`#elseif`和`#else`来实现条件判断: ```freemarker 欢迎管理员! 欢迎访客! 普通...

    FreeMarker+中文手册

    3. **模板语言(Template Language)**:FreeMarker的模板语言包括了一系列的指令和内置函数,如`&lt;#if&gt;`用于条件判断,`&lt;#foreach&gt;`用于循环,`&lt;#assign&gt;`用于赋值等。 4. **配置(Configuration)**:FreeMarker的...

    Java freemarker demo 【struts + freemarker】 自己修改的一个小例子

    例如,`&lt;#assign user = actionBean.user&gt;`可以将`actionBean`中的`user`属性赋值给FreeMarker变量`user`,然后在模板中可以通过`${user.name}`来显示用户名。 在“Java FreeMarker demo”的压缩包中,可能包含了...

Global site tag (gtag.js) - Google Analytics