freemarker

does freemarker support show all variable in data-model?

拜拜、爱过 提交于 2019-11-27 23:52:35
问题 I want to see all variables in freemarker data-model, just like struts2 debug tag to show value stack. Is there a way for freemarker to do this ? 回答1: There's no universal solution possible for that, but you can try <#list .data_model?keys as key> ${key} </#list> This works if the data-model is just a usual Map or JavaBean, but for more sophisticated data-models it's up to the data-model implementation if it supports ?keys and if it indeed returns everything. You also have the variables that

Springboot返回html

余生长醉 提交于 2019-11-27 20:37:46
注:Springboot的版本2.1.3.RELEASE List-1 application.properties文件 server.port=8080 #url中,项目的前缀 server.servlet.context-path=/project spring.mvc.view.prefix=/ spring.mvc.view.suffix=.html 整体结构如下图1所示,html要放在static下,不是templates下                                       图1 List-2 HelloController的内容如下 import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; @Slf4j @Controller public class HelloController { @RequestMapping(value = "/hello") public String index() { log.info("收到请求"); return "html/hello"; } } List-3

SpringMvc整合Freemarker

陌路散爱 提交于 2019-11-27 20:37:34
1、 新建WebProject,工程名称是SpringFreemarker;然后手动添加jar包,需要的jar包如下: SpringFramework jar包下载地址: http://ebr.springsource.com/repository/app/library/version/detail?name=org.springframework.spring&version=3.0.5.RELEASE FreeMarker library下载地址: http://ebr.springsource.com/repository/app/bundle/version/detail?name=com.springsource.freemarker&version=2.3.15 当然你也可以去官方下载 2、 在web.xml中添加如下配置: Java代码 <!-- 加载Spring容器配置 --> <listener> <listener- class >org.springframework.web.context.ContextLoaderListener</listener- class > </listener> <!-- 设置Spring容器加载配置文件路径 --> <context-param> <param-name>contextConfigLocation<

Spring Mvc 视图解析

妖精的绣舞 提交于 2019-11-27 20:37:18
Spring Mvc 视图解析 在 Spring Mvc 中,我们自己编写的控制器方法(Controller) 并没有直接去渲染结果,使用 response 去输出到浏览器。方法返回的是 ModelAndView,甚至只是一个 String 类型的视图名,那 Spring Mvc 是怎么把模型数据填充到视图的呢?如果控制器能通过逻辑视图名来了解视图的话,那Spring Mvc 如何确定使用哪一个视图实现来渲染模型呢? 一、了解视图解析 1、解析过程 DispatcherServlet HandlerMapping HandlerAdapter ViewResolver View 对于控制器的方法,无论其返回值是 String、View、ModelMap 或是 ModelAndView,Spring MVC 都会在内部 HandlerAdapter 将它们封装为一个 ModelAndView 对象再进行返回 public interface HandlerAdapter { ModelAndView handle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception; ... } 然后 Spring MVC 会借助视图解析器 ViewResolver

How to output ${expression} in Freemarker without it being interpreted?

五迷三道 提交于 2019-11-27 19:42:05
I'm trying to use Freemarker in conjunction with jQuery Templates. Both frameworks use dollar sign/curly brackets to identify expressions for substitution (or as they're called in freemarker, "interpolations") , e.g. ${person.name} . So when I define a jQuery Template with expressions in that syntax, Freemarker tries to interpret them (and fails). I've tried various combinations of escaping the ${ sequence to pass it through Freemarker to no avail - \${ , \$\{ , $\{ , etc. Inserting a freemarker comment in between the dollar and the curly (e.g. $<#-- -->{expression} ) DOES work - but I'm

Freemarker-shiro的标签

跟風遠走 提交于 2019-11-27 19:27:48
一、引入依赖(已解决版本冲突) 复制代码 <!-- shiro-freemarker-tags start --> <dependency> <groupId>net.mingsoft</groupId> <artifactId>shiro-freemarker-tags</artifactId> <version>1.0</version> <exclusions> <exclusion> <groupId>org.apache.shiro</groupId> <artifactId>shiro-all</artifactId> </exclusion> <exclusion> <groupId>org.freemarker</groupId> <artifactId>freemarker</artifactId> </exclusion> </exclusions> </dependency> <!-- shiro-freemarker-tags end --> <!-- freemarker start --> <dependency> <groupId>org.freemarker</groupId> <artifactId>freemarker</artifactId> <version>2.3.28</version> </dependency> <!--

Tomcat和Undertow并发性能

…衆ロ難τιáo~ 提交于 2019-11-27 18:46:31
Undertow(SpringBoot内置版)篇 JVM参数: -Xms1024m -Xmx1024m 测试参数: 压测工具,参数最大化,连续测试10分钟,得出各种曲线。 软件架构: JDK1.8 SpringBoot全家桶,version1.4.2 SpringMVC Freemarker Undertow(内置) 硬件环境: CPU:i7-4710mq RAM:16GB(有JVM参数,貌似没啥意义) 测试环境: Freemarker页面,几乎都是静态的东西,反正测试页面都相同。 结果概览 亮瞎了我的双眼,要不要别这么暴力,一个错误没有! GC曲线 一直发生GC的是Eden区,其它区几乎没有GC过,毕竟就一个很简单的Controller. RPS曲线 眼睛再次受伤,太完美了,差不多一直保持在2K以上。 Tomcat(内置版)篇 JVM参数: -Xms1024m -Xmx1024m 测试参数: 压测工具,参数最大化,连续测试10分钟,得出各种曲线。 软件架构: JDK1.8 SpringBoot全家桶,version1.4.2 SpringMVC Freemarker 硬件环境: CPU:i7-4710mq RAM:16GB(有JVM参数,貌似没啥意义) 测试环境: Freemarker页面,几乎都是静态的东西,反正测试页面都相同。 结果概览 相对前者,错误较多,而且

Freemarker中如何遍历List

末鹿安然 提交于 2019-11-27 18:20:51
Freemarker中如何遍历List 摘要:在 Freemarker 应用中经常会 遍历List 获取需要的数据,并对需要的数据进行排序加工后呈现给用户。那么在Freemarker中如何遍历List,并对List中数据进行适当的排序呢? 通过下文的介绍,相信您一定会找到答案。 一、 Freemarker中list指令简单介绍 要想在Freemarker中遍历list,必须通过使用list指令,即<#list sequence as item>…</#list> sequence是集合(collection)的表达式,item是循环变量的名字,不能是表达式。 当在遍历sequence时,会将遍历变量的值保存到item中。 举个例子说明吧: <#list userList as user> … </#list> userList中封装了很多个User对象,我们在遍历userList时候,会将遍历的User对象的值,保存到上述的user变量中。那么在取值时,我们可以通过${user.userName }来获取User对象的userName属性值。 List 指令还隐含了两个循环变量: item_index:当前迭代项在所有迭代项中的位置,是数字值。 item_has_next:用于判断当前迭代项是否是所有迭代项中的最后一项。 注意:在使用上述两个循环变量时

FreeMarker | 数据篇

余生颓废 提交于 2019-11-27 18:20:31
变量及运算 1、变量定义和赋值 <#assign x = 123 /> 2、判空 防止为空 ${x!} ${x! '空'} FreeMarker 不区分单双引号 逻辑判空 <#if x?? /> <#if x?exists /> 对象、集合 1、对象 2、集合 3、Map 可以根据key直接取值 可以获取所有key然后遍历 也可以直接遍历值 资料 1、FreeMarker 模块的代码已上传至Github: https://github.com/fengwenyi/FreeMarker-demo 2、学习视频: Java模板引擎之Freemarker 来源: oschina 链接: https://my.oschina.net/u/3133467/blog/1831047

Struts2与Freemarker的配置方法(附源码和插件)

时光怂恿深爱的人放手 提交于 2019-11-27 18:19:33
Freemarker是模板引擎,也可以说是一种表现层的框架,它有自己的模板指令,开发者如果不熟悉这些语法,很难进行表现层的开发。 Struts2框架技术对 Freemarker 做了很好的支持,开发人员只要熟悉Struts2的标签即可进行开发Freemarker模板文件,如果您还不熟悉具体的Struts2及标签应用请参考其他文献资料,本文主要阐述 Struts2与Freemarker的配置 方法。 本文所述开发环境为: Eclipse 3.3.2+ MyEclipse 6.0 +JDK 1.5 +Tomcat 6.0。 一、 安装开发Freemarker模板文件插件 Freemarker自身提供了一个编辑模板文件的 Eclipse插件FreeMarkerIDE-1.0.0.GA.zip,该插件具有错误提示,与高亮显示等功能,您可以到 freemarker.sourceforge.net下载,也可通过Eclipse IDE 自带的功能完成相关插件的安装,插件更新地址为: www.freemarker.org/eclipse/update. ,插件具体安装配置过程请参考其他文献资料。 我看到很多网友对改插件的评价是褒贬不一样,本人认为还可以,所以介绍给大家。 你也可以使用其它插件,只要能帮助你开发 Freemarker模板文件即可。 二、 配置工程开发环境 1. 新建