Freemarker模板引擎
模板引擎的目标是”数据+模板=结果” 模板引擎将数据与展现有效”解耦”![]()
JSP与Freemarker比较
FTL取值 ${属性名} 取值,可对属性进行计算 ${属性名!默认值} 使用默认值 ${属性名?string} 格式化输出 if分支判断 <#if 条件1> 条件1成立执行代码 <#elseif 条件2> 条件2成立执行代码 <#elseif 条件3> 条件3成立执行代码 <#else> 其他情况下执行代码 switch分支判断 <#switch value> <#case refValue1> ... <#break> <#case refValue2> ... <#break> <#case refValueN> ... <#break> <#default> ... </#switch> list迭代列表 <#list students as stu> <li>${stu_index}-${stu.name}</li> </#list> ${stu_index}为下标,从0开始 list迭代Map <#list map?keys as key> ${key}:${map[key]} </#list> list数字序列迭代 <#list 1..20 as x> <li>${x}</li> </#list> 内建函数:
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律