摘要: 摘要: FreeMarker自定义指令就像struts2的set标签,为了好理解,也可以认为是定义一个方法,就像js的function.在freemarker中的这个标签就是macro。在定义一个指令的时候,可以指定参数,当然也可以不指定,这里要注意了,我这里只贴出模板文件及输出结果,freemarker的工具类请参照FreeMarker入门教程,其实也没有什么改变,直接拿过来用即可FreeMarker自定义指令就像struts2的set标签,为了好理解,也可以认为是定义一个方法,就像js的function.在freemarker中的这个标签就是macro。在定义一个指令的时候,可以指定参数, 阅读全文
posted @ 2013-05-03 18:05 licomeback 阅读(572) 评论(0) 推荐(0) 编辑
摘要: 摘要: 我们上一节认识了FreeMarker基本数据类型,接口认识FreeMarker集合(List、Map)​我们上一节认识了FreeMarker基本数据类型,接口认识FreeMarker集合(List、Map)序列(List)定义序列12345<#-- 定义序列 --><#assign mynums=[11,12,13,14,15,16,17,18,19]/><#list mynums as mn>${mn}</#list>拆分序列123456<#-- 拆分序列 --><#-- 这里是将mynums序列中下标从3到6之间的元 阅读全文
posted @ 2013-05-03 18:00 licomeback 阅读(394) 评论(0) 推荐(0) 编辑
摘要: FreeMarker基本数据类型2012-12-05 19:28:42|发布者:黄奕能|查看: 835摘要: ​Freemarker的基本数据类型【存储单值】有数字、字符串、boolean、日期。在这里直接用定义变量的方式来操作各种数据类型的输出。Freemarker的基本数据类型【存储单值】有数字、字符串、boolean、日期。在这里直接用定义变量的方式来操作各种数据类型的输出。数字【整型】定义一个数字,然后加10输出,结果是21<#--<>定义了一个数字--><#assign num=10>${num+11}21字符串定义一个字符串“10”,然后加11, 阅读全文
posted @ 2013-05-03 17:58 licomeback 阅读(300) 评论(0) 推荐(0) 编辑
摘要: 摘要: 上一节我们接触了一个FreeMarker很简单的例子FreeMarker入门教程,说到底,就是替换模板里相应的标签,这一节我们写一下FreeMarker基本标签的使用上一节我们接触了一个FreeMarker很简单的例子FreeMarker入门教程,说到底,就是替换模板里相应的标签,这一节我们写一下FreeMarker基本标签的使用。在FreeMarker入门教程,相信你还刻模板里的“你好:${username}”,这是简单的输出字符串,和EL很像吧,这一节我们来学其他标签输出对象及判断标签的引用我们先定义一个用户类12345678910111213141516packagecom.na 阅读全文
posted @ 2013-05-03 17:55 licomeback 阅读(187) 评论(0) 推荐(0) 编辑
摘要: Java模板引擎 FreeMarker介绍摘要: FreeMarker是一个模板引擎,一个基于模板生成文本输出的通用工具,使用纯Java编写,FreeMarker被设计用来生成HTML Web页面(为了提高页面的访问速度,把页面静态化),特别是基于MVC模式的应用程序FreeMarker是一个模板引擎,一个基于模板生成文本输出的通用工具,使用纯Java编写,FreeMarker被设计用来生成HTML Web页面(为了提高页面的访问速度,把页面静态化),特别是基于MVC模式的应用程序FreeMarker的操作过程是这样的:定义模板文件,准备好数据,通过模板显示准备的数据(如下图):FreeMar 阅读全文
posted @ 2013-05-03 17:54 licomeback 阅读(242) 评论(0) 推荐(0) 编辑
摘要: 忙了两天 补充一下姿势。这次讲Quartz中Job的参数传递和状态保存。先贴代码,还是两个类:任务定义: MyParaJob.javaJava代码//这两行注解。。。 极度坑爹,也是和2.0之前版本所不同的地方,务必注意 @NOTICE@PersistJobDataAfterExecution@DisallowConcurrentExecutionpublicclassMyParaJobimplementsJob { privateintmyCount =0; privatestaticintmyStaticCount =0; publicstaticfinalString JOB_DA... 阅读全文
posted @ 2013-05-03 17:10 licomeback 阅读(417) 评论(0) 推荐(0) 编辑
摘要: 前面两个博客讲的都是简单触发器,直接传入一个时间让任务执行,这一话讲CronTrigger的例子。CronTrigger也是Quartz最重要的特色之一,通过Quartz特有的Cron表达式来确定某类时间,能完成类似"每个月二十号XXX,每个星期三XXX"之类的任务。先对MyJob做个小的修改,时间用中文来输出,不然看起来太费劲,逻辑上没有任何修改。Java代码publicclassMyJobimplementsJob { @Override publicvoidexecute(JobExecutionContext context)throwsJobExecutionEx 阅读全文
posted @ 2013-05-03 17:09 licomeback 阅读(270) 评论(0) 推荐(0) 编辑
摘要: 本节补充一些SimpleTrigger的API使用,文章一次性写的太长会大大降低可阅读性,所以还是少食多餐吧。顺大便回顾一下Quartz的基本使用方法,联系windows自带的计划任务,假想场景如下:1.我要让电脑查杀病毒(对应Quartz: 实现Job接口的execute方法,后期通过反射实例化JobDetail对象)。2.我想让电脑在五分钟之后做查杀病毒这个job(对应Quartz:通过TriggerBuilder来new出一个时间为五分钟之后的Trigger)。3.把上面我想象到的时间:五分钟之后;任务:查杀病毒 放到windows的定时任务当中,点击确定(对应Quartz:通过Sche 阅读全文
posted @ 2013-05-03 17:08 licomeback 阅读(270) 评论(0) 推荐(0) 编辑
摘要: 摘要: 前面用过Quartz的功能,学新工具一般都是先用再写再看源码。其实应用场景很容易想象,比如每个月20号要发工资,数据库里面某些字段要标记为已发,或者要进行记账之类的,那么这时候可以用quartz来写表达式,就可以让系统自动的在每个月20号执行这些任务。刚接触quartz这个词并不是在学习过程中。。。而是WOW里面的界面插件。。。 汗=。=言归正传,入门教程,不喜勿喷。网上看到一些定时任务使用Timer来解决,但是在多任务的情况下可能会造成延迟严重,并且Timer不提供实时保证。所以推荐使用Quartz这个定时任务的框架来完成此类功能。相关问题见:http://www.iteye.com 阅读全文
posted @ 2013-05-03 17:06 licomeback 阅读(375) 评论(0) 推荐(0) 编辑
摘要: 在Java模板引擎 FreeMarker介绍中,我们已经对freemarker有了一定的了解,这一节是FreeMarker入门教程。 下载freemarker http://freemarker.sourceforge.net/freemarkerdownload.html 项目文件:freemarker-2.3.19.tar.gz 中文文档:FreeMarker_Manual_zh_CN.pdf 解压后把freemarker.jar加到classpath中即可完成环境的配置 定义模板文件 我们创建两个模板文件,一个是纯文本的模板文件,另一个是HTML格式的模板文件,主要是为了说... 阅读全文
posted @ 2013-05-03 16:42 licomeback 阅读(187) 评论(0) 推荐(0) 编辑