首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

容易快速的去做一个事件测试——使用groovy的swingbuilder

2012-08-29 
简单快速的去做一个事件测试——使用groovy的swingbuilder背景:有一个验证,需要验证下cache4j的具体的Cache

简单快速的去做一个事件测试——使用groovy的swingbuilder

背景:有一个验证,需要验证下cache4j的具体的Cache实现在超出max memory size的情况下其使用的内存状况,会不会在并发情况下出现OOM。为了跑一个持续的jvm进程,又不想借助web容器等,最好的自然是swing的frame了。

?

下面给出groovy的swingbuilder的代码,简单方面,里面只有一个button的click事件处理和信息结果显示的textfield,大家可以根据自己的需要去写事件代码和显示内容,具体针对我这个需求,代码如下:

import groovy.swing.* import javax.swing.* import java.awt.* import org.springframework.context.support.ClassPathXmlApplicationContext// load cache4j def context = new ClassPathXmlApplicationContext('beans.xml')def cache = context.getBean('cache')int count = 1def swing = new SwingBuilder()  def getObj = {java.util.List ll = []10000.times{ll << 'XXXX'}return ll}//def cache = context.getBean('cache1')def addCacheObj = {swing.exp.text = count + ':' + cache.cacheInfo.toString() cache.put(count + '_key', getObj())count++}// def frame = swing.frame(title: 'Test Demo',  size: [500, 500], location: [100, 100],defaultCloseOperation: javax.swing.WindowConstants.DISPOSE_ON_CLOSE) { panel(layout:  new  BorderLayout()){button(text: 'Add', actionPerformed: {addCacheObj()}, constraints: BorderLayout.CENTER)textField(id: 'exp', constraints: BorderLayout.NORTH)}}  frame.pack()  frame.show()  
?

热点排行