freemarker教程

freemarker教程

freemarker是现在企业中用得最多的模板引擎,可以根据模板生成相当的静态页面等

第一部分:freemarker基础

更多

Cannot expose request attribute 'website' because of an existing model object of the same name 的解决方案

2017-08-06
在使用springmvc+freemarker,有可能你会遇到以下异常(如:资源找不到重定向到404的请求时):javax.servlet.ServletException: Cannot expose request attribute 'website' because of an existing model object of the same name,看一下源码,可以发现如果exposeRequestAttributes设为true,model中已经存在该key,且allowRequestOverride为false是,就会报该错。解决方法可以把allowRequestOverride 设为 true
分类:FreeMarker教程 浏览次数(574)

FreeMarker 判断List不为空

2017-08-05
FreeMarker判断一个对象是否为空使用??,这个同意使用于List,如:<#if article.attachements??>,通常情况下我们还要判断List的是否包含元素,这样使用?size了,如:<#if article.attachements?? && article.attachements?size gt 0>
分类:FreeMarker教程 浏览次数(300)

springmvc freemarker 动态加载(不用重启tomcat立即生效)

2017-08-05
如果你使用FreeMarker作为springmvc的ViewResolver时,也许你会遇到更改ftl文件时没立刻生效。原因在于FreeMarker 直接从缓存中获取Template对象,缓存的更新间隔时间可以使用template_update_delay参数配置,相当于多长时间检测一下是否有必要重新加载模版文件,0 表示每次都重新加载。
分类:FreeMarker教程 浏览次数(3409)

freemarker 空值处理

2015-10-09
先看示例: ${user.name?if_exists }, ${user.name?default(‘领悟书生’)}//默认值领悟书生 ${ user.name!&quot;www.656463.com&quot;}//默认值www.656463.com 如果freemarker出现空值不处理的时候,会报empty Value Expression xxx is undefined freema
分类:FreeMarker教程 浏览次数(3372)

FreeMarker模板包含及名称空间

2012-12-06
FreeMarker模板包含及名称空间,主要是为了模板的重用。使用<#include>包含其他模板,如果包含多个模板,可能会出现同名变量被覆盖的问题。可以使用import来完成导入,并且加入名称空间
分类:FreeMarker教程 浏览次数(4360)

FreeMarker四种变量的用法

2012-12-06
freemarker的变量可以分为四种,分别是数据模型的变量【root中的变量】,模板中的变量使用【<#assign>定义的变量】,局部变量【在指令中的变量】,循环变量【在循环中的变量】
分类:FreeMarker教程 浏览次数(12871)

FreeMarker自定义指令

2012-12-05
FreeMarker自定义指令就像struts2的set标签,为了好理解,也可以认为是定义一个方法,就像js的function.在freemarker中的这个标签就是macro。在定义一个指令的时候,可以指定参数,当然也可以不指定,这里要注意了,我这里只贴出模板文件及输出结果,freemarker的工具类请参照FreeMarker入门教程,其实也没有什么改变,直接拿过来用即可
分类:FreeMarker教程 浏览次数(5037)

FreeMarker集合(List、Map)

2012-12-05
我们上一节认识了FreeMarker基本数据类型,接口认识FreeMarker集合(List、Map)​
分类:FreeMarker教程 浏览次数(16419)

FreeMarker基本数据类型

2012-12-05
​Freemarker的基本数据类型【存储单值】有数字、字符串、boolean、日期。在这里直接用定义变量的方式来操作各种数据类型的输出。
分类:FreeMarker教程 浏览次数(6713)

FreeMarker基本标签的使用

2012-12-04
上一节我们接触了一个FreeMarker很简单的例子FreeMarker入门教程,说到底,就是替换模板里相应的标签,这一节我们写一下FreeMarker基本标签的使用
分类:FreeMarker教程 浏览次数(6125)
点击显示更多

第二部分:freemarker项目实战

更多

FreeMarker在领悟教程网实战应用

2012-12-07
上一节我们整理了FreeMarker与SpringMVC整合,这一节学习在领悟书生教程网中是怎样实现应用freemarker静态化页面(减少数据库查询)的。需求是这样的,我页面的底部,有“最新文章”和“热门文章”。因为每个页面都有这个显示,每次访问都要查询数据库,这不是太合理,所以在添加文章、修改文章和删除文章的时候,都查询数据库,生成一个jsp页面,然后嵌套在页面中。
分类:FreeMarker教程 浏览次数(3672)
点击显示更多

专题教程

更多
  • kafka分布式消息队列

    kafka是一种分布式消息队列,同类产品有rabbitmq、activemq。kafka常常结合storm等流式大数据处理框架使用。kafka是目前相当流程的消息队列框架。

  • dubbo教程

    DUBBO是一个分布式服务框架,致力于提供高性能和透明化的RPC远程服务调用方案,是阿里巴巴SOA服务化治理方案的核心框架,本教程带你入门学习dubbo框架的相关知识

  • RabbitMQ 教程

    RabbitMQ是一个开源的,在AMQP基础上完整的,可复用的企业消息系统。支持主流的操作系统,Linux、Windows、MacOX等。多种开发语言支持,Java、Python、Ruby、.NET、PHP、C/C++、node.js等。本教程带你学习RabbitMQ环境搭建、RabbitMQ简单队列、work队列、发布订阅消息、各种Exchange应用、与spring整合等

  • WebSocket教程

    WebSocket 规范的目标是在浏览器中实现和服务器端双向通信.双向通信可以拓展浏览器上的应用类型,例如实时的数据推送(股票行情),游戏,聊天/im 等.本教程通过java简单的示例带你快速学会WebSocket编程

  • i18n 国际化

    国际化(internationalization)又称为 i18n(读法为i 18 n,据说是因为internationalization(国际化)这个单词从i到n之间有18个英文字母,i18n的名字由此而来)

  • activiti工作流教程

    Activiti5是由Alfresco软件在2010年5月17日发布的业务流程管理(BPM)框架,它是覆盖了业务流程管理、工作流、服务协作等领域的一个开源的、灵活的、易扩展的可执行流程语言框架。Activiti基于Apache许可的开源BPM平台,创始人Tom Baeyens是JBoss jBPM的项目架构师,它特色是提供了eclipse插件,开发人员可以通过插件直接绘画出业务流程图。

  • junit教程

    junit基本介绍,hamcrest和testSuite介绍,基于测试开发讲解和cobertura框架介绍,stub和mock简介,dbunit的使用,dbunit实际运用,easymock的使用,easymock的实际应用,利用easymock测试简单的servlet,cactus的使用,基于Jetty的cactus的使用

  • ActiveMQ教程

    ActiveMQ专题教程从ActiveMQ安装部署到入门,深入学习ActiveMQ教程

  • maven教程

    maven是一个比ant还强的项目构建工具,只要简单的配置(pom),就可以解决jar包的依懒等问题,在企业中集成开发

  • git教程

    本课程的目标是让广大程序员迅速掌握Git的日常使用,立刻可以在具体研发项目中开始使用Git,并且在绝大多数情况下能够自行解决遇到的问题。

  • java教程

    java在线教程汇集业界最好的java教程资料,提供最好的学习Java资源,是国内一流的java资料平台

  • 实战Java高并发程序设计

    本书主要介绍基于Java的并行程序设计基础、思路、方法和实战。1,立足于并发程序基础,详细介绍Java中进行并行程序设计的基本方法。第二,进一步详细介绍JDK中对并行程序的强大支持,帮助读者快速、稳健地进行并行程序开发。第三,详细讨论有关“锁”的优化和提高并行程序性能级别的方法和思路。

  • java并发编程

    java并发编程是基于java语言在高并发、多线程环境下的编程实践。

  • java8新特征详解

    本教程详细讲解Java8的新特新,结合简单的示例代码来讲解如何使用默认接口方法,lambda表达式,方法引用以及多重Annotation,同时你将会学到JAVA8最新的API上的改进,比如流,函数式接口,Map以及全新的日期API

  • json教程

    JSON 即 JavaScript Object Natation,它是一种轻量级的数据交换格式,非常适合于服务器与 JavaScript 的交互。本专题详细讲解json、jackson、fastjson等工具包的操作教程

  • jstl el 教程

    JSTL指的是JavaServer Pages标准标记库,是封装了许多JSP应用程序通用的核心功能的JSP标签的集合,包括核心标签(Core Tags),格式化标签(Formatting tags),SQL标签(SQL tags),XML标签(XML tags),JSTL函数(JSTL Functions)

  • shiro教程

    Shiro是apache旗下一个开源框架,它将软件系统的安全认证相关的功能抽取出来,实现用户身份认证,权限授权、加密、会话管理等功能,组成了一个通用的安全认证框架。

  • Struts2教程

    Struts2,Struts2教程,Struts2学习,Struts2实例,Struts2视频教程

  • Hibernate教程

    Hibernate,Hibernate教程,Hibernate学习,Hibernate实例,Hibernate视频教程

  • spring教程

    spring,spring教程,spring学习,spring实例,spring视频教程

  • java视频教程

    java,视频教程,java视频教程,java web 视频教程,java基础视频教程

  • java文件操作专题教程

    java创建文件、java创建目录、java读写文件,java读取大文件,java文件操作示例

  • java压缩与解压专题教程

    java压缩教程,java解压,java压缩文件,java压缩目录

大家都在看

最近更新

热门访问