`
weihong0427
  • 浏览: 39383 次
  • 性别: Icon_minigender_2
  • 来自: 西安
社区版块
存档分类
最新评论
文章列表
总是有伙计不愿看英文的文档,这里针对这些仁兄推出了Grails 1.2参考文档速读,有兴趣可以看看,很不错的学习材料,当然是中文的喽! Grails 1.2参考文档速读(1):第1、2章 Grails 1.2参考文档速读(2):配置基础和环境 Grails 1.2参考文档速读(3):日志配置 Grails 1.2参考文档速读(4):第3章剩余内容 Grails 1.2参考文档速读(5):第4章 Grails 1.2参考文档速读(6):GORM基础和关系建模 Grails 1.2参考文档速读(7):GORM建模的其余事项及持久化基 ...
总是有伙计不愿看英文的文档,这里针对这些仁兄推出了Grails 1.2参考文档速读,有兴趣可以看看,很不错的学习材料,当然是中文的喽! Grails 1.2参考文档速读(1):第1、2章 Grails 1.2参考文档速读(2):配置基础和环境 Grails 1.2参考文档速读(3):日志配置 Grails 1.2参考文档速读(4):第3章剩余内容 Grails 1.2参考文档速读(5):第4章 Grails 1.2参考文档速读(6):GORM基础和关系建模 Grails 1.2参考文档速读(7):GORM建模的其余事项及持久化基础 G ...
您的帖子:今天你Groovy了没有 被JavaEye用户投票评为隐藏帖帖,积分-30分。 让我去javaEye站务圈子申诉!我还就发在这里了!继续隐藏继续扣分!或者干脆把这个账户给封了! 是不是JavaEye眼睛里就容不下其他的技术,试问管理员: 1.我这个帖子有灌水的嫌疑么? 2.Groovy/Grails不是基于Java的么? 3.JavaEye是不是讨论技术的地方? 4.看来这个网站是看着某些领导的脸色在运营吧!? 原先还以为这个网站还算有些内容,看来不是了!你稍微说话路数不对,就要扣分,或者直接账户被封,怎么作风跟某些领导有一拼啊?! TNND!!!简直没有公理!
GPars的SafeVariable(0.8版之前叫做SafeVariable,0.9之后就叫Safe了)类的创作灵感来自Clojure中的Agents,它接收代码(函数)并运行之以修改Agent内部变量。 本质上,agents只允许一个单个agent管理的线程(agent-managed thread)修改其内部状态,从而获得安全性。agent内部的可变变量不能从外部直接访问,相反,需求(处理代码)要被发送给agent,由 agent代表调用者确保依次处理需求。 GPars提供的SafeVariable包装了一个可变状态引用,保持在一个内部属性中,然后其用"<<&qu ...
数据驱动测试和xUnit有自己的优点,但是它们有一个无法回避的问题:不完善的错误定位。如果出现测试失败,你会收到一个错误提示,说明某个方法是产生这个失败的罪魁祸首......但是,如果这个方法里面运行了50~60个assert,哪一次的assert才是幕后黑手呢?数据驱动测试几乎给不出明确的答案。这个时候你能做的就是单步执行,等待错误的重现。好的测试是能够明确的指出失败点并且不会重复自己的执行。这就是Spock推出@Unroll的原因,可以很清楚的找到失败点。 @unroll的具体用法,参见Spock的@Unroll:准确定位测试的失败点
What?Groovy?手机上可以运行Groovy么?Stefan Armbruster在他的博文中给出了回答:可以! Stefan Armbruster希望在他的至爱手机Nokia N900上运行Groovy,实现步骤很简单。     * 需要手机专用的JDK和JRE,可以从这里下载;     * 将现在的文件解压,放到N900的目录下;     * 下载Groovy;     * 设置环境变量;       export JAVA_HOME=<jdk-dir>              export GROOVY_HOME=<groovy-dir>       ...
正所谓“技多不压身”,Groovy/Grails已经诞生有些年头了,目前Groovy1.7,grails 1.3 M1已经出来了。Groovy/Grails属于那种用了就会爱上的那个“人”。 虽然目前国内使用的人数称不上海量,但是想想Struts、Hibernate、Spring、Rails等工具当年的流行之路,Groovy/Grails的前景还是非常让人期待的。 那我们就来了解一下Grails的工作趋势。
为了更好的活学活用actors,GPars User Guide提供了一些Actor技巧及经典样例,对于有意使用GPars actor的读者来说,这一部分原文一定要读。 原文参见: GPars(9):Actors技巧及经典样例
Cloud-Foundry是企业级Java云阵营中的一个新兵,开发者可以凭借其在公共的云环境下部署并管理Spring、Grails以及Java应用。那么如何通过CloudFoundry管理 AWS(Amazon Web Services)实例上的多个应用程序,Soeren Glasius在他的CloudFoundry系列博文中给我们讲述了这个过程。这是本系列的第一篇,以Grails的应用为例,向大家讲述了如何部署一个单一的应用程序。 嗯......步骤很简单! 具体步骤请参见原文:Cloud-Foundry让你的网站转起来!
为了易于编写和理解,GPars还提供了一些特殊的Actor。 动态派发Actor DynamicDispatchActor类是一个池管理的actor,是消息处理代码的另一种形式。通常 DynamicDispatchActor会反复扫描消息,并将收到的消息派发给其某个onMessage(message)方法(类似事件处理的写法),或更简单的使用when handler。DynamicDispatchActor利用了Groovy的动态方法派发机制。下例是onMessage和when混合使用的例子: 代码参见原文 反应式(reactive) Actor ReactiveActo ...
什么?!还有专门负责测试数据准备的插件?至于么,这个任务应该太简单了!没错,从单个测试来讲,准备测试数据的确简单,但是如果你拥有大量测试用例的时候,事情就变得不那么简单了。前面忘了说一声,这里所指的测 ...
是否考虑过使用Groovy操作Word、Excel等这些Office程序?你很可能会以怀疑的眼光看着我:“Groovy连这也可以?”。说得没错,Groovy确实可以,但是它建立在COM/ActiveX之上的。在这篇Blog中,Kartik Shah使用Scriptom 产生了一个OutLook的报表。     在很多场合,我都在工作时使用MS Outlook Calendar来安排会议、日历等。使用Outlook 2007,你可以在日历上把每个会议/时间块分类。因此,你可以把每个会议分为设计、架构、学习等。使用Groovy Scriptom模块,你可以完成平常用VBScript做的工作。Scr ...
Actors的原理在前一篇“Actors概览”中已有所提及。Actors共享了一个线程池,其中的线程是在actors需要react消息时动态分配的。在消息处理完之后,线程会归还至池中,actor则空闲等待更多消息到来。Actors与底层线程分离,使得很小的线程池即支持多至无限的actors。 用actors创建异步服务 actor为非线程安全代码提供线程安全保证 Actor生命周期方法 线程池管理 避免在actor还没接收到消息之前,主程序就结束了 具体请看原文: GPars(7):Actors原理
Captcha最常用的一个作用就是防止网站的垃圾评论,但是有人只用26行多点的Groovy代码就实现了一个破解程序,当然这是对那些强度不大的Captcha而言。 作者的意图也很有趣:     我最近读到一篇有趣的文章,讲的是如何使用Python和开源软件来破解某种特殊的Captcha实现。我想看看用Groovy完成同样的事情有多难。 作者以3个图为例进行了说明,使用的是Tesseract-OCR,一个开源的OCR引擎。这似乎预示着什么……看看整个步骤:    1. 读入图片    2. 删除背景噪音    3. 修改图片尺寸    4. 把图片转换成TIF文件    5. 使用Tess ...
GPars支持actor的灵感来自Scala的Actor类库,但不只这些。 Actor是一种基于消息的并发模型,由相互交换消息且没有可变共享状态的独立活动对象构建而来。Actor能够使开发者避免死锁、或锁或饿死等共享内存典型并发问题,同时还利用到了当今硬件的多核特点。 Actor保证了某一时刻actor体至多只有一个线程处理,每次线程被分配共一个actor时内存已经得到同步。因此在actor体中修改actor的状态是安全的,没必要载使用额外(同步或锁)。理想情况下,actor的代码不应该直接从外部调用,actor类的代码只是用来执行处理最后收到的消息,因而actor代码的线程安全是隐含的。如果 ...
Global site tag (gtag.js) - Google Analytics