- 浏览: 1397698 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (346)
- linux (10)
- hbase (50)
- hadoop (23)
- java (52)
- java multi-thread (13)
- Oracle小记 (41)
- 机器学习 (12)
- 数据结构 (10)
- hadoop hive (16)
- java io (4)
- jms (1)
- web css (1)
- kafka (19)
- xml (2)
- j2ee (1)
- spring (6)
- ibatis (2)
- mysql (3)
- ext (3)
- lucene (3)
- hadoop pig (3)
- java nio (3)
- twemproxy (1)
- antlr (2)
- maven (6)
- mina (1)
- 列数据库 (1)
- oozie (2)
- mongodb (0)
- 报错 (0)
- jetty (1)
- neo4j (1)
- zookeeper (2)
- 数据挖掘 (3)
- jvm (1)
- 数据仓库 (4)
- shell (3)
- mahout (1)
- python (9)
- yarn (3)
- storm (6)
- scala (2)
- spark (5)
- tachyon (1)
最新评论
-
guokaiwhu:
赞啊!今晚遇到相同的问题,正追根溯源,就找到了博主!
hbase 报错gc wal.FSHLog: Error while AsyncSyncer sync, request close of hlog YouAr -
喁喁不止:
很清楚,有帮助。
hive常用函数 -
dsxwjhf:
Good job !!
kafka获得最新partition offset -
Locker.Xai:
参考了
freemaker教程 -
maoweiwer:
为啥EPHEMERAL_SEQUENTIAL类型的节点并没有自 ...
zookeeper 入门讲解实例 转
-- velocity的简介,不想看可以略过,直接看实例,其实可以全部略过滴 -----------------
Velocity是一个基于java的模板引擎(template engine)。它允许任何人仅仅简单的使用模板语言(template language)来引用由java代码定义的对象。 当Velocity应用于web开发时,界面设计人员可以和java程序开发人员同步开发一个遵循MVC架构的web站点,也就是说,页面设计人员可以只 关注页面的显示效果,而由java程序开发人员关注业务逻辑编码。Velocity将java代码从web页面中分离出来,这样为web站点的长期维护提 供了便利,同时也为我们在JSP和PHP之外又提供了一种可选的方案。 Velocity的能力远不止web站点开发这个领域,例如,它可以从模板(template)产生SQL和PostScript、XML,它也可以被当 作一个独立工具来产生源代码和报告,或者作为其他系统的集成组件使用。Velocity也可以为Turbine web开发架构提供模板服务(template service)。Velocity+Turbine提供一个模板服务的方式允许一个web应用以一个真正的MVC模型进行开发。
package com.velocity.demo; import java.io.StringWriter; import java.util.ArrayList; import java.util.HashMap; import java.util.Map; import java.util.Properties; import org.apache.velocity.Template; import org.apache.velocity.VelocityContext; import org.apache.velocity.app.Velocity; import org.apache.velocity.app.VelocityEngine; import org.apache.velocity.exception.ParseErrorException; import org.apache.velocity.exception.ResourceNotFoundException; public class PromotedVelocityDemo { public static void main(String[] args) throws Exception, ParseErrorException, Exception { VelocityEngine ve = getVelocityEngine(); VelocityContext context = getVelocityContext(); Template template = ve.getTemplate("com/velocity/demo/promotedTemple"); if(template != null){ StringWriter getWriter = new StringWriter(); template.merge(context, getWriter); System.out.println(getWriter); } } public static ArrayList getNames() { ArrayList list = new ArrayList(); list.add("刘少奇"); list.add("李逵"); list.add("王熙凤"); list.add("李四光"); return list; } public static ArrayList getNamesMap() { ArrayList list = new ArrayList(); Map map = new HashMap(); map.put("name", "书包"); map.put("price", "$100.00"); list.add( map ); map = new HashMap(); map.put("name", "唱片"); map.put("price", "$59.99"); list.add( map ); map = new HashMap(); map.put("name", "小菜"); map.put("price", "$3.99"); list.add( map ); return list; } public static Map getUserInfo(){ Map<String,String> para = new HashMap<String,String>(); para.put("name", "dirk.zhang"); para.put("age", "20"); para.put("sex", "male"); return para; } public static VelocityContext getVelocityContext(){ VelocityContext context = new VelocityContext(); context.put("list", getNames()); context.put("listMap", getNamesMap()); Map<String,String> para = getUserInfo(); if(para.size() >0) for(String key : para.keySet()) context.put(key, para.get(key)); return context; } public static VelocityEngine getVelocityEngine() throws Exception{ VelocityEngine ve = new VelocityEngine(); Properties properties = new Properties(); String fileDir = Thread.currentThread().getContextClassLoader().getResource("").getPath(); // ve.setProperty(Velocity.RESOURCE_LOADER, "class"); // ve.setProperty("class.resource.loader.class", "org.apache.velocity.runtime.resource.loader.ClasspathResourceLoader"); properties.setProperty(Velocity.FILE_RESOURCE_LOADER_PATH,fileDir); properties.setProperty(Velocity.ENCODING_DEFAULT, "utf-8"); properties.setProperty(Velocity.INPUT_ENCODING, "utf-8"); properties.setProperty(Velocity.OUTPUT_ENCODING, "utf-8"); ve.init(properties); return ve; } }
下面是模板文件:
##声明一个变量:this并且设置值为:Velocity #set( $this = "咫尺天涯") ##使用设置的变量值 这里是$this的博客! ##for打印集合信息数据 #foreach( $name in $list ) 姓名:$name! #end ##声明一个布尔值 #set( $condition = true) ## if else分支判断 #if ($condition) The condition is true! #else The condition is false! #end 姓名:$name,年龄:$age,性别:$sex #foreach( $p in $listMap ) 项目:$p.name,价格:$p.price; #endvelocity使用简单,一看便知,老少皆宜的好东东
发表评论
-
java内存使用查看 转
2015-10-29 14:51 868转:http://mxsfengg.iteye.com ... -
Java线上应用故障排查之二:高内存占用
2015-08-17 16:28 0搞Java开发的,经常会碰到下面两种异常: 1、java. ... -
java filechannel
2015-08-14 15:42 1053Java NIO中的FileChannel是一个连接到文件 ... -
Java线上应用故障排查之一:高CPU占用
2015-08-06 13:58 6185转http://blog.csdn.net/blade20 ... -
java注释
2015-04-10 15:49 0Java注解是附加在代码中的一些元信息,用于一些工具在编译、 ... -
转jvm
2015-03-24 14:13 1671一、回顾JVM内存分配 ... -
java 域名转换
2014-12-22 11:05 767import java.net.InetAddres ... -
freemaker教程
2014-10-13 11:56 1980新换了工作,与想象差距也太大了 最近沦落到做报表了,我就 ... -
protocal buffers入门实例
2014-09-22 21:08 1654hadoop yarn中新的系列化protocol buf ... -
正则小计
2014-09-18 20:47 0&site=(.*?)&可以匹配site的值 ... -
在HBase中应用MemStore-Local Allocation Buffers解决Full GC问题
2014-06-13 23:05 1606译者注:上个月 ... -
java ipc 实例
2014-05-21 22:59 4877java ipc实例,仿照hadoop ipc写的实例 1 ... -
java worker thread模式
2014-03-25 22:46 1977转两个帖子 一个java wo ... -
bloom filter
2014-03-09 19:41 1954看到hadoop join和hbase都有bloo ... -
java reference
2014-03-09 17:49 716转 http://www.iteye.com/to ... -
annotation实例
2014-02-11 22:04 1140加载指定目录的所有class,通过注释区分实体类 p ... -
java获取子类 转
2014-02-11 16:58 3122获取子类 package com.tools; ... -
动态代理
2013-08-14 20:38 1081动态代理,转:http://langyu.iteye. ... -
java byte inputstream and outputstream
2013-02-18 11:47 0转http://blog.csdn.net/rcoder ... -
JVM同步浅析
2013-01-11 11:38 1650堆 (所有类的实例或 ...
相关推荐
本实例旨在帮助初学者快速入门Velocity,理解其基本用法和核心概念。 1. **Velocity简介** Velocity是一个基于Java的模板引擎,它允许开发者在模板中使用特定的语法(Velocity Template Language, VTL)来插入动态...
通过学习和运行这个实例,你可以更深入地理解Velocity如何工作,以及如何在实际项目中应用它来生成静态页面。 总之,Velocity是一个强大的工具,能够帮助开发者快速、高效地构建动态网站的静态页面。通过分离模板和...
1. **Velocity简介** Velocity是由Apache软件基金会开发的开源项目,它是基于Java的模板引擎,遵循MVC(Model-View-Controller)设计模式。Velocity的目的是使开发者能够用简单的语法在模板中插入Java代码,生成...
Velocity模板实例 Velocity模板实例 Velocity模板实例 Velocity模板实例
这个简单的实例将会帮助我们理解如何在实际项目中使用 Velocity。 首先,我们需要了解 Velocity 的基本概念。Velocity 模板语言(VTL)是 Velocity 的核心,它允许我们在模板中插入变量和控制结构,如条件语句和...
Velocity是一个基于Java的模板引擎,它主要的作用是在Web开发中...总之,Velocity模板引擎因其简单和功能强大的特点,在Java Web开发中被广泛地采用,它支持开发者进行高效的模板设计,提高了Web应用的开发和维护效率。
总的来说,这个实例提供了一个基础的框架,可以帮助开发者了解和实践如何将Struts2的业务逻辑与Velocity的视图呈现相结合,以创建高效、可扩展的Java Web应用程序。通过对这两个框架的深入理解和合理利用,开发者...
为了运行这个集成实例,你需要确保已经正确配置了Struts2和Velocity的相关依赖,并在web.xml中配置Struts2的过滤器。一旦设置完成,你就可以通过浏览器访问对应的Action URL,看到由Velocity渲染出的动态页面。 总...
在这个"velocity的web和java实例"中,我们可以学习如何将Velocity与Java应用程序和Web项目结合使用。 1. **Velocity模板语言 (VTL)** Velocity模板语言是一种简单但功能强大的标记语言,用于在模板中插入动态内容...
1):含有spring-3.2.8.RELEASE.jar、velocity-tools-2.0.jar、velocity-1.7.jar、mybatis-spring-1.0.2.jar、mybatis-3.0.6.jar、cxf-api-2.2.9.jar等丰富的jar包。 2):采用spring3.2作为bean容器管理,...
在"velocity实例"中,我们可以看到几个特定的模板文件: 1. getter.vm:这个模板可能包含了生成getter方法的代码结构,开发者可以根据需求定制获取属性值的方法。 2. test.vm:可能用于生成单元测试代码,帮助快速...
在我们的实例中,Maven将帮助我们集成Spring MVC、Mybatis和Velocity,并确保所有必要的库都处于正确的位置。 **Spring MVC** Spring MVC是Spring框架的一个模块,专门用于处理Web应用的请求-响应模型。它提供了一...
总的来说,"springmvc+mybatis+velocity整合实例"提供了一个轻量级且功能齐全的Web开发基础,适合快速搭建项目。通过这个整合,开发者可以充分利用Spring MVC的控制层优势、MyBatis的数据访问便捷性,以及Velocity的...
本示例提供了一个基于Maven、Spring MVC、Mybatis和Velocity的整合实例,旨在帮助开发者理解并掌握这四大技术栈的协同工作方式。这四个组件在Java Web开发中扮演着至关重要的角色: 1. Maven:Maven是一款项目管理...
总的来说,Velocity通过其直观的VTL语法和丰富的指令集,使得动态内容的生成变得简单易懂,适合网页设计师和开发人员共同协作。它的灵活性和可扩展性使其在生成各种类型的输出文件时都表现出色,不仅限于网页,还...
这个实例是一个学习和实践Struts2、Spring和Velocity集成的好材料,对于想要深入了解这三大框架的开发者来说,通过分析源代码,可以学习到如何有效地组合使用这些工具,提升自己的Java Web开发技能。后续版本的整合...
velocity+ibatis+mysql+exlipse实例 velocity+ibatis+mysql+exlipse实例 velocity+ibatis+mysql+exlipse实例 velocity+ibatis+mysql+exlipse实例 velocity+ibatis+mysql+exlipse实例
**Velocity官方实例详解** Velocity是Apache软件基金会的一个开源项目,它是一个基于Java的模板引擎,用于生成动态内容。Velocity在Web开发中常被用来生成HTML、XML、Java源代码等静态页面,尤其适用于构建可定制化...
Velocity的核心理念是“分离关注点”,即设计人员负责页面布局和外观,而开发者处理数据和业务逻辑。 案例一:网站生成 Velocity可以用于构建动态网站。例如,在#set指令中设置变量,然后在模板中引用这些变量来...