摘要: 一、背景有一个自动化执行测试案例的程序,需要根据用户输入的参数决定大量案例中的哪些案例需要执行。程序代码如下(为便于理解,这里仅贴出与主题相关的代码): //处理指定参数组的情况 [A,B,C]即指执行参数组(A,B,C)或者[A:C]即指执行参数组(A,B,C) private void _run(Config config, TestEngine te, TestNotifier fNotifier, TestCase tc ,String paramGroupName) throws Exception{ boolean isScope = false; String[] pa... 阅读全文
posted @ 2013-10-03 22:18 jxb8901 阅读(845) 评论(1) 推荐(1) 编辑
摘要: 关于Java类加载机制的几个基本概念:JDK提供的基本类加载器:引导类加载器(Bootstrap Class Loader)-用于加载JDK中的核心类、扩展类加载器(Ext Class Loader)-用于加载JRE扩展库目录中的类、系统(应用)类加载器(System/App Class Loader)-用于从启动参数-classpath或环境变量CLASSPATH中加载类;类加载器的树状结构:在JVM中,所有类加载器实例按树状结构组织,根结点为引导类加载器。除根结点外的所有类加载器都有一个非空的父类加载器,从而构成树状结构;双亲委托(代理)模型:当类加载器收到加载类或资源的请求时,通常都是先 阅读全文
posted @ 2013-10-03 22:16 jxb8901 阅读(661) 评论(0) 推荐(0) 编辑
摘要: 前一篇文章分析了Java平台下不同类型WEB框架对开发模式的影响,多数Java领域的WEB框架都是聚焦于服务端MVC的实现,这些框架对View的支持,通常是基于标准的JSP或类似JSP的模板技术如Freemarker或Velocity。JSP或类JSP的模板技术已经是上个世纪的页面技术了,它能跟上时代的发展和技术的进步吗?我们先看一段典型的JSP页面代码(摘自Struts2样例代码):Hello World!I've said hello times!再看一段Android平台下UI开发的代码(摘自Android开发手册): 还可以看看Flex UI代码(摘自Flex开发手册): .. 阅读全文
posted @ 2013-10-03 22:15 jxb8901 阅读(555) 评论(0) 推荐(0) 编辑
摘要: 在java 6之前,如果我们的应用依赖多个jar包,通常是将所有jar包文件枚举设置到环境变量CLASSPATH或者命令行参数-classpath(-cp)中。通常我们需要写一段shell脚本实现该功能。这种方式带来的问题是命令行较长。另外在windows平台下命令行的长度是有限制(http://support.microsoft.com/kb/830473/en-us)的,这导致各种奇怪的解决方案(比如缩短jar包名称、自己实现classloader等)。从java 6开始,我们可以在CLASSPATH环境变量或-classpath(-cp)参数中使用通配符指定多个jar包:通配符只支持*, 阅读全文
posted @ 2013-10-03 22:15 jxb8901 阅读(3370) 评论(0) 推荐(0) 编辑