freemarker

Spring mvc整合FreeMarker

雨燕双飞 提交于 2019-11-29 05:12:41
Spring mvc整合FreeMarker,使用的是Spring mvc 3.2 + FreeMarker 2.3.19,如下所示: 1、新建freemarker.properties,放到src目录下面: 01 #设置标签类型:square_bracket:[] auto_detect:[]<> 02 tag_syntax=auto_detect 03 #模版缓存时间,单位:秒 04 template_update_delay=0 05 default_encoding=UTF-8 06 output_encoding=UTF-8 07 locale=zh_CN 08 #设置数字格式 ,防止出现 000.00 09 number_format= # 10 #变量为空时,不会报错 11 classic_compatible= true 12 #auto_import="/WEB-INF/templates/index.ftl" as do 2、在spring配置文件中,加入如下内容: 01 <? xml version = "1.0" encoding = "UTF-8" ?> 02 < beans xmlns = "http://www.springframework.org/schema/beans" 03 xmlns:xsi = "http://www.w3.org

Will not closing a stringwriter cause a leak?

拟墨画扇 提交于 2019-11-29 02:51:14
I realize that in java the GC will eventually cleanup objects, but I'm asking if it is bad practice to not close your string writer, currently I am doing this: private static String processTemplate(final Template template, final Map root) { StringWriter writer = new StringWriter(); try { template.process(root, writer); } catch (TemplateException e) { logger.error(e.getMessage()); } catch (IOException e) { logger.error(e.getMessage()); } finally { } return writer.toString(); } Should I be closing the writer and creating a new String like this: String result = ""; ... finally { result = writer

FreeMarker 快速入门

牧云@^-^@ 提交于 2019-11-29 02:18:43
什么是 FreeMarker? FreeMarker 是一款模板引擎:一种基于模板的、用来生成输出文本(任何来自于 HTML格式的文本用来 自动生成源代码)的通用工具。它是为 Java 程序员提供的一个开发包或者说是类库。它不是面向最终用户, 而是为程序员提供的可以嵌入他们开发产品的一款应用程序。 搭建SpringMVC+FreeMarker环境 springmvc.xml 此处只贴出了配置FreeMarker的代码,hibernate配置等省略。 <!--对模型视图名称的解析,即在模型视图名称添加前后缀 --> <bean id="viewResolver" class="org.springframework.web.servlet.view.freemarker.FreeMarkerViewResolver"> <property name="viewClass" value="org.springframework.web.servlet.view.freemarker.FreeMarkerView" /> <property name="prefix" value="/" /> <property name="suffix" value=".html" /> <property name="contentType" value="text/html;charset=utf

FreeMarker在eclipse中的入门例子

喜你入骨 提交于 2019-11-29 02:17:22
刚接触 FreeMarker 时,只是简单的了解 FreeMarker 的一些概念及工作原理,至于如何使用 FreeMarker 还不是非常清楚。随着学习的深入,才渐渐对 FreeMarker 有了更深入的理解。本文将从基础应用着手,以 eclipse 开发环境为主,分享一个 FreeMarker 用例的开发经验。 一、在 eclipse 中创建 FreeMarker 模板 在 FreeMarker 中模板的概念就是:包含一些由${…}包围的特殊代码的文件。这些特殊代码是 FreeMaker 指令。 FreeMarker 模板以ftl后缀命名 如本文所示的: user.ftl ${user.userName} ${user.userPassword} 二、在 eclipse 中创建 FreeMarker 数据模型 FreeMarker 数据模型:存在于计算机内存中的一种结构,由开发人员创建,向模板提供信息。 注意: FreeMarker 数据模型不是文本文件。 FreeMarker 的数据模型是树状结构的。 如本文所示的: User.java public class User{ private userName; private userPassword; …(省略getter setter方法) } User对象的树状模型如: (root) |+-user |+

freemarker 的ObjectWrapper Settings

半腔热情 提交于 2019-11-29 02:17:04
关于 struts2 和freemarker合作来处理 map 类型的情况: struts2 官方如下说: Once you get familiar with FreeMarker, you will find certain subtleties with it that may become frustrating. The most common thing you'll likely run in to is the BeansWrapper provided by FreeMarker. If you don't know what this is, don't worry. However, if you do, know this: The StrutsBeanWrapper extends the default FreeMarker BeansWrapper and provides almost no change in functionality, except for how it handles maps. Normally, FreeMarker has two modes of operation: either support for friendly map built-ins (?keys, ?values, etc) but only

freemaker开发学习《一》

强颜欢笑 提交于 2019-11-29 02:16:55
 FreeMarker是一个非常优秀的模板引擎,这个模板引擎可用于任何场景,FreeMarker负责将数据模型中的数据合并到模板中,从而生成标准输出.FreeMarker可以提供昜好的团队协作,对于界面开发人员而言,他们只关心界面(也就是模板文件)的开发,而无需理会底层数据;而对于业务逻辑开发者,他们只需要关心负责将需要显示的数据填入数据模型--FreeMarker负责合并数据模型和模板,从而生成标准输出.   FreeMarker特别适应于MVC模式的web应用,虽然FreeMarker具有一些编程能力,但这种编程能力非常有限,无法实现业务逻辑,保能提供一些数据格式的转换。因此,通常由Java程序准备要显示的数据,由FreeMarker模板引擎来生成页面,而FreeMarker模板则则提供页面布局支持,从而能更好地规范MVC架构,保证视图和业务逻辑的分离。 除此之外,FreeMarker也是与web容器,也就是FreeMarker并不一定需要运行在web容器中。FreeMarker同样可以应用于非web应用程序环境。而且,FreeMarker并不是只能生成Html页面,它也可以生成各种文本,如xml,rtf,java程序。 struts2可以非常简单地使用FreeMarker模板作为视图技术,对于传统的jsp页面而言,FreeMarker是一个绝佳的替代方案。   除此之外

maven插件--代码生成器,适用所有maven项目

倖福魔咒の 提交于 2019-11-29 02:16:38
自己写的代码生成器,保证好用!代码整理中,后面放代码,可先加群下载jar使用: QQ: 461964997 优点: 1,语法简单,即freeMarker语法。 2,配置,操作简单,maven命令生成 3,模板暴露,可扩展自定义模板 使用步骤: 第一步:创建文件夹 项目中增加mbg/templates等,如下图所示: 提示:文件夹的位置可以自己适情况调整位置,只要generatorConfig.xml对应的配置路径对即可。 其中 1,tramp-generator-config_1_0.dtd文件是对generatorConfig.xml配置文件的规范约束。 2,*.ftl文件就是我们想生成的模板文件,使用了freeMarker,所以只要了解freeMarker便可以随意自定义模板。插件内置了属性,可直接使用,具体属性下面说。 3,generatorConfig.xml是插件的核心配置文件,具体描述看下面代码: <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE generatorConfiguration PUBLIC "-//W3C//DTD HTML 4.01//en" "https://ad_earn/dtd/raw/master/tramp-generator-config_1_0.dtd">

Multiple View resolvers in spring mvc

一世执手 提交于 2019-11-29 02:11:59
I want to use multiple view resolvers in my web app based on spring mvc Can anyone tell me how do I achieve that. I want to use both JSP and freemarker in my app. Please suggest some approaches or links or examples.. All help is appreciated. Adhir You can add as many view resolvers as you want. You can specify the order in which the view resolvers need to be checked. Spring will take the first view resolver which can successfully resolve the view. ex: Since you have JSP and freemarker add the view resolvers for both and give the order property 1 for JSP and 2 for freemarker. If your view is

Getting template text from FreeMarker in Spring app

試著忘記壹切 提交于 2019-11-29 00:23:55
问题 In my Spring app, I'd like to use FreeMarker to generate the text of emails that will be sent by my application. The generated text will never be returned to the view so I don't need to configure a FreeMarker view resolver. The documentation seems to indicate that I should configure a FreeMarkerConfigurationFactoryBean like this <bean id="freemarkerConfiguration" class="org.springframework.ui.freemarker.FreeMarkerConfigurationFactoryBean"> <property name="templateLoaderPath" value="/WEB-INF

关于Spring Boot整合Freemarker访问首页index.ftl访问不到问题解决

帅比萌擦擦* 提交于 2019-11-28 20:50:33
关于关于Spring Boot整合Freemarker访问首页index.ftl报错的解决办法: 错误: This application has no explicit mapping for /error, so you are seeing this as a fallback. 目录结构: index.ftl 首页测试内容: <html> <body> <h2>我是首页</h2> </body> </html> Controller @Controller public class IndexController { @RequestMapping({"", "/"}) public String toIndex() { return "index"; } } 访问: http://localhost:8080/ 报错如下: 找了好久的错误,最终才知道是Spring Boot的版本问题,我使用的最新版本:2.2.1.RELEASE版本 解决办法:将Spring Boot版本降低为2.1.4.RELEASE,就不会报错了,亲身尝试过了!! <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.1.4