还说下函数吧。
1. 创建一个方法变量
<#function avg x y>
<#return (x + y) / 2>
</#function>
${avg(10, 20)}
该函数的结构就如上所示,<#function ^^^>,其中函数名字叫avg,参数为x y。函数是带返回值的。很简单,没啥必要废话。
2. 用java实现
import java.util.List;
import freemarker.template.TemplateMethodModel;
import freemarker.template.TemplateModelException;
public class AVGFreemarker implements TemplateMethodModel {
@SuppressWarnings("unchecked")
public Object exec(List list) throws TemplateModelException {
Integer s= Integer.parseInt((String) list.get(0));
Integer t= Integer.parseInt((String) list.get(1));
int m=(s+t)/2;
return m;
}
}
方法写完之后注册呗,同自定义指令相同。
cfg.setSharedVariable("average", new AVGFreemarker());
注册完当然调用即可。
${average(10, 20)}
没啥好说的。
分享到:
相关推荐
自己整理的freemarker基础知识,适合初学者哦。
freemarker_-_基础知识
FreeMarker语法知识,该文档里面详细的描述了FreeMarker的基本语句和一些示例
适合新手快速了解入门的资料,里面涉及到的都是基础知识
本文的介绍的是freemarker技术以及freemarker技术的一些语法等基础知识。
常用web开发基础,包括html,js,jquery,freemarker等相关知识点
域名要备案了,直接用IP访问吧 #博客简介: 本博客十分轻量,适合正在初学Java Web又没有顺手项目练习的同学,所以需要你有一定的Java基础和前端知识. 基于网上大多数开源站点结构较复杂,功能较繁重,并且页面布局...
十二、总结 本教程对struts2的基本知识进行了一些说明,关于struts2的更多详细内容应参看struts2的官方文档及提供的app实例。 下面对struts2的基本执行流程作一简要说明,此流程说明可以结合官方提供的struts2结构图...
- Spring Boot 基础知识,包括SpringBoot起步、配置详解、aop、filter、拦截器、监听、启动器、全局异常处理、外部Tomcat启动、HTTPS、监控 等。 - springboot-data - Spring Boot 数据库操作,包括SpringJDBC、...
它采用MySQL作为底层数据库,前端使用Freemarker模板引擎和Bootstrap作为UI框架,同时集成了JPA和MyBatis等框架。 对于初学Spring Boot的同学来说,Oasys是一个很不错的项目,可以通过学习和分析该项目的源码来了解...
即便你是编程小白,没有任何编程基础也可以学习本课程。 知识点 1,Java 2,springboot 3,freemarker 4,bootstrap4.3 5,Javaweb 6,微信小程序 同时会借助当下最热门的微信小程序来作为我们的前端展示。所以课程...
Context-support模块:提供了对第三方库嵌入Spring应用的集成支持,比如缓存(EhCache、Guava、JCache)、邮件服务(JavaMail)、任务调度(CommonJ、Quartz)和模板引擎(FreeMarker、JasperReports、速率)。 SpEL模块:...
6) 平缓的学习曲线:学习使用JessMA只需掌握一定的Core Java与JSP/Servlet知识,本开发手册会循序渐进阐述每个知识点,每个知识点都会结合完整的示例进行讲述,知识点之间前后呼应,确保学习者在学习时温故知新,...
mysql+jdbc+servlet+freemarker+jquery+bootstrap+...总的来说,毕业设计是高等教育中的一项重要环节,通过此过程,学生不仅能够巩固所学知识,还能培养独立思考和解决问题的能力,为将来的职业发展奠定坚实的基础。
,使用技术:spring 、springmvc、mybatis、maven、...总的来说,毕业设计是高等教育中的一项重要环节,通过此过程,学生不仅能够巩固所学知识,还能培养独立思考和解决问题的能力,为将来的职业发展奠定坚实的基础。
6.7 OGNL表达式语言的基础知识 130 6.7.1 什么是OGNL 130 6.7.2 Struts 2中常用的表达式语言特性 131 6.7.3 表达式语言的高级特性 135 6.8 小结 137 第7章 UI组件标签 139 7.1 为什么需要UI组件标签 139 7.2 标签、...
第4章 另一Struts2核心技术:拦截器 47 4.1 拦截器在Struts2中的缺省应用 47 4.2 拦截器原理实现 50 4.3 在Struts2中配置自定义的拦截器 53 4.3.1 扩展拦截器接口的自定义拦截器配置 54 4.3.2 继承抽象拦截器的...
国内第一个致力JAVA企业级开源软件的公司,国内首家开源软件社会企业――长沙亿美软件有限公司旗下基于JAVA技术研究开发的具有自主核心技术与自主知识产权、适合我国国情的JAVA EE开源内容管理系统软件。 ...
Web又没有顺手项目练习的同学,所以需要你有一定的Java基础和前端知识. 基于网上大多数开源站点结构较复杂,功能较繁重,并且页面布局花里胡哨...... 本博客系统基本上做到了最简:前端仅用了bootstrap,后台用的...
FlyCms 是一个类似知乎以问答为基础的完全开源的JAVA语言开发的社交网络建站程序,基于 Spring Boot+Bootstrap3+MyBatis+MYSQL+Solr+Ehcache 应用架构,专注于社区内容的整理、归类和检索,它集合了问答,digg,wiki...