自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(50)
  • 收藏
  • 关注

转载 在applet(java plugin)中与javascript通信

在applet(java plugin)中与javascript通信,可以达到与html通信的目的。简单来说:http://www.ybj86.cn/dede/html/jiaobenkaifa/asp/JSP/20070728/1545.html js调用java可以在网页里使用d

2015-07-31 08:49:39 636

转载 JVM的相关知识整理和学习

JVM是虚拟机,也是一种规范,他遵循着冯·诺依曼体系结构的设计原理。冯·诺依曼体系结构中,指出计算机处理的数据和指令都是二进制数,采用存储程序方式不加区分的存储在同一个存储器里,并且顺序执行,指令由操作码和地址码组成,操作码决定了操作类型和所操作的数的数字类型,地址码则指出地址码和操作数。从dos到window8,从unix到ubuntu和CentOS,还有MAC OS等等,不同的操作系统指令集以

2015-07-28 12:39:17 481

转载 Appium 处理滑动

appium 处理滑动的方法是 swipe(int start-x, int start-y, int end-x, int end-y, int during) - Method in class io.appium.java_client.AppiumDriver此方法共有5个参数,都是整形,依次是起始位置的x y坐标和终点位子的x y坐标和滑动间隔时间,单位毫秒坐标是指:屏幕

2015-07-27 14:59:53 1086

转载 Android 性能测试

刚看到一个性能命令:Adb shelldumpsys battery 因为是连着两台机, 就在adb 后面加一个 -s 然后设备号:adb -s0149C7ED12015007 shell dumpsys battery结果是这样的,Current BatteryService s  AC powered: false  USB po

2015-07-27 09:01:58 793

转载 Adb 抓不住Genymotion的解决方法

最近对Genymotion又爱又恨,爱的是这东西速度快,恨的是,ADB经常抓不到。在群里面请教了下别人,有人提示我是否端口占用。然后我百度一下“ADB端口被占用”然后就可以看到:http://jingyan.baidu.com/article/3a2f7c2e760e4a26afd611a6.html1、CMD命令窗口输入:adbnodaemon server

2015-07-27 08:59:18 2024

转载 TestNG监听器实现失败自动截图、重跑、自定义html结果文件功能

使用Testng框架搭建自动测试框架,经常会需要增加失败自动截图,以及失败重跑功能,下面介绍一下不修改Testng的源码,通过监听器的方式来实现自动截图、重跑、自定义Html结果文件功能。自动截图功能1、新建一个Java类继承TestListenerAdapter2、重写onTestFailure、onTestSkipped等方法,在这些方法中加入截图操作3、在testng.x

2015-07-27 08:58:50 1161

原创 Android虚拟机上安装和卸载APK程序

本文记录一下如何在android虚拟机上安装和卸载apk程序。首先我们需要有一个小工具re-sign.jar,该工具是用来进行重新签名的一个工具,该工具只需要双击,或者java -jar re-sign.jar都可以运行该工具,运行后如下图:在该工具中将你的APK程序拖入进来便可,此时会做一重新签名的工作,如下图,然后直接点保存就可以了。保存的时候可能会出如下的错误,是

2015-07-24 08:37:36 2681

转载 JVM 优化经验总结

开始之前Java 虚拟机有自己完善的硬件架构, 如处理器、堆栈、寄存器等,还具有相应的指令系统。JVM 屏蔽了与具体操作系统平台相关的信息,使得 Java 程序只需生成在 Java 虚拟机上运行的目标代码 (字节码), 就可以在多种平台上不加修改地运行。Java 虚拟机在执行字节码时,实际上最终还是把字节码解释成具体平台上的机器指令执行。注意:本文仅针对 JDK7、HotSPOT

2015-07-23 23:34:32 397

转载 Minor GC、Major GC和Full GC之间的区别

本文由 ImportNew - 光光头去打酱油 翻译自 javacodegeeks。欢迎加入翻译小组。转载请见文末要求。在 Plumbr 从事 GC 暂停检测相关功能的工作时,我被迫用自己的方式,通过大量文章、书籍和演讲来介绍我所做的工作。在整个过程中,经常对 Minor、Major、和 Full GC 事件的使用感到困惑。这也是我写这篇博客的原因,我希望能清楚地解释这其中的一些疑惑。

2015-07-23 13:26:17 542

转载 非常详细GC学习笔记

GC学习笔记这是我公司同事的GC学习笔记,写得蛮详细的,由浅入深,循序渐进,让人一看就懂,特转到这里。一、GC特性以及各种GC的选择1、垃圾回收器的特性2、对垃圾回收器的选择2.1 连续 VS. 并行2.2 并发 VS. stop-the-world2.3 压缩 VS. 不压缩 VS. 复制二、GC性能指标三、分代回收

2015-07-23 11:09:21 313

转载 jvm规范规定的对类(或者接口)初始化的情况

jvm规范 1、执行下列需要引用类或接口的 Java 虚拟机指令时:new,getstatic,putstatic或 invokestatic。这些指令通过字段或方法引用来直接或间接地引用其它类。执行上面所述的 new 指令,在类或接口没有被初始化过时就初始化它。执行上面的 getstatic,putstatic 或 invokestatic 指令时,那些解析好的字段或

2015-07-23 09:38:02 455

转载 Java虚拟机(JVM)参数配置说明

出自收集的一个文档,具体出处已无从查起 Java虚拟机(JVM)参数配置说明 在Java、J2EE大型应用中,JVM非标准参数的配置直接关系到整个系统的性能。JVM非标准参数指的是JVM底层的一些配置参数,这些参数在一般开发中默认即可,不需要任何配置。但是在生产环境中,为了提高性能,往往需要调整这些参数,以求系统达到最佳新能。另外这些参数的配置也是影

2015-07-23 09:36:54 635

转载 Java 虚拟机参数配置详解

堆大小设置JVM中最大堆大小有三方面限制:相关操作系统的数据模型(32-bt还是64-bit)限制;系统的可用虚拟内存限制;系统的可用物理内存限制。32位系统 下,一般限制在1.5G~2G;64为操作系统对内存无限制。我在Windows Server 2003系统,3.5G物理内存,JDK5.0下测试,最大可设置为1478m。典型设置:java -Xmx3550m -Xms3550m

2015-07-23 09:35:22 432

转载 Java垃圾回收之Minor GC和Major GC(或称为Full GC)

最近在读周志明写的深入理解Java虚拟机:JVM高级特性与最佳实践 对Minor GC和Major GC做点笔记  新生代 GC(Minor GC):指发生在新生代的垃圾收集动作,因为 Java 对象大多都具备朝生夕灭的特性,所以 Minor GC 非常频繁,一般回收速度也比较快。  老年代 GC(Major GC  / Full G

2015-07-23 09:34:17 471

转载 testng 教程之使用参数的一些技巧配合使用reportng

前两次的总结:testng annotation生命周期 http://www.cnblogs.com/tobecrazy/p/4579414.html                    testng.xml的使用和基本配置http://www.cnblogs.com/tobecrazy/p/4582173.html在前两次的总结中,了解了一些testng基础的用法,今天了解一

2015-07-20 15:09:47 3565

转载 Java内存溢出和内存泄露

虽然jvm可以通过GC自动回收无用的内存,但是代码不好的话仍然存在内存溢出的风险。最近在网上搜集了一些资料,现整理如下: —————————————————————————————————————————— 一、为什么要了解内存泄露和内存溢出? 1、内存泄露一般是代码设计存在缺陷导致的,通过了解内存泄露的场景,可以避免不必要的内存溢出和提高自己的代码

2015-07-20 09:45:32 436

转载 Java常用排序算法/程序员必须掌握的8大排序算法

分类:1)插入排序(直接插入排序、希尔排序)2)交换排序(冒泡排序、快速排序)3)选择排序(直接选择排序、堆排序)4)归并排序5)分配排序(基数排序)所需辅助空间最多:归并排序所需辅助空间最少:堆排序平均速度最快:快速排序不稳定:快速排序,希尔排序,堆排序。先来看看8种排序之间的关系:   1.直接

2015-07-16 12:12:07 428

转载 HTTP 协议漫谈

简介网络上已经有不少介绍 HTTP 的好文章,对HTTP的一些细节介绍的比较好,所以本篇文章不会对 HTTP 的细节进行深究,而是从够高和更结构化的角度将 HTTP 协议的元素进行分类讲解。 HTTP的定义和历史在一个网络中。传输数据需要面临三个问题:1.客户端如何知道所求内容的位置?2.当客户端知道所求内容的位置后,如何获取所求内容?3.所

2015-07-16 12:08:59 590

转载 使用 Appium 进行多设备的集群分布式 UI 自动化测试

在TesterHome挺久了,一般是看帖比较少发,最近有看到一些同学做多设备的Appium测试有碰到一些问题。刚好自己前段也涉及到类似的方案,在这里分享些自己这段碰到的一些问题阻碍,和解决的一些思路吧,刚涉及UI自动化不久,很多东西还很生疏,欢迎大家提点。1.需求和条件制约最早需求的提出,场景的要求是要同时实现几十台设备的UI自动化测试且是有客户端的交互行为,部分设备运行的AP

2015-07-14 13:33:44 15264 3

转载 Java中如何聪明地使用锁

在 Java 中高效使用锁的技巧锁(lock)作为用于保护临界区(critical section)的一种机制,被广泛应用在多线程程序中。无论是 Java 语言中的 synchronized 关键字,还是 java.util.concurrent 包中的 ReentrantLock,都是多线程应用开发人员手中强有力的工具。但是强大的工具通常是把双刃剑,过多或不正确的使用锁,

2015-07-08 14:32:34 663

转载 深入分析 Java I/O 的工作机制

I/O 问题可以说是当今互联网 Web 应用中所面临的主要问题之一,因为当前在这个海量数据时代,数据在网络中随处流动。这个流动的过程中都涉及到 I/O 问题,可以说大部分 Web 应用系统的瓶颈都是 I/O 瓶颈。本文的目的正是分析 I/O 的内在工作机制,你将了解到:Java 的 I/O 类库的基本架构;磁盘 I/O 工作机制;网络 I/O 的工作机制;其中以网络 I/O 为重点介绍 Jav

2015-07-08 13:58:13 448

转载 Java 理论与实践: 用动态代理进行修饰

动态代理是构建 Decorator 和 Adapter 的方便工具动态代理工具 是 java.lang.reflect 包的一部分,在 JDK 1.3 版本中添加到 JDK,它允许程序创建 代理对象,代理对象能实现一个或多个已知接口,并用反射代替内置的虚方法分派,编程地分派对接口方法的调用。这个过程允许实现“截取”方法调用,重新路由它们或者动态地添加功能。本期文章中,B

2015-07-08 13:07:49 436

转载 通过日志监控并收集 Java 应用程序性能数据

针对 JVM 的 CPU 使用及内存占用的性能分析,已经有各种剖析 (Profiling) 工具可供使用。但是如果想要得具体的调用栈,这些工具往往会给应用程序服务器增加大量额外压力。Perf4j 则是通过对自定义监控范围进行日志记录,再经统计分析生成所需性能数据,Perf4j 提供了对常用日志工具的扩展以方便与产品集成,它产生的数据可用于生成可视化的性能图表。在实际部署的生产环境能够以较低的风

2015-07-08 13:00:48 3430

转载 从 Java 应用程序动态生成 PDF 文件

如果您的应用程序需要动态生成 PDF 文档,那么您需要 iText 库。开源的 iText 库使得 PDF 的创建变得轻松易行。本文介绍了 iText 并提供了一个使用它从 Java 技术应用程序生成 PDF 文档的分步指南。我们将创建一个样例应用程序来更好地理解 iText。2012 年 10 月 30 日 - 作者更新了本文,以体现针对 iText V5.3.0 版的更改(最初的文章使

2015-07-08 12:58:17 626

转载 Ant 脚本在部署过程中实现系统参数的自动发现

在使用 Ant 进行软件包的部署时,经常需要输入一些系统环境参数,例如主机名称、IP 地址,一些服务的配置文件路径等等。在一些重复性的场景中,例如软件开发、测试过程中,每次部署都手工去配置一遍系统参数,无疑是对人力的一种浪费。在本文中,我们将对使用 Ant 自身功能实现自动发现系统参数值的技术进行探讨。引言Apache Ant 被广泛使用在 Java 开发的自动化编译、

2015-07-08 12:56:13 1229

转载 浅析 Ant 脚本部署 RCP 项目

目前 RCP 项目的部署方式主要有两种:一种是通过 Eclipse 的向导界面,另一种是利用 Ant 脚本的方式生成一个 RCP 项目。将 Ant 与 RCP 二者的特点相结合,可以更好的提高实际项目的部署效率。本文将通过实际案例来详细介绍如何用 Ant 脚本来打包一个 RCP 项目。背景介绍RCP 简介RCP(Rich Client Platform),即富客

2015-07-08 12:47:40 1333

转载 Java 语言中 Enum 类型的使用介绍

本文主要介绍了 Java 语言中枚举类型,以及如何定制 Enum 类型的定义,如何正确使用 Enum 类型。Enum 类型的介绍枚举类型(Enumerated Type) 很早就出现在编程语言中,它被用来将一组类似的值包含到一种类型当中。而这种枚举类型的名称则会被定义成独一无二的类型描述符,在这一点上和常量的定义相似。不过相比较常量类型,枚举类型可以为申明的变量提供更大

2015-07-08 12:38:18 393

转载 Java 日志缓存机制的实现

本文介绍了 Java 日志机制,并通过扩展日志功能,实现日志缓存。同时,可以动态控制日志信息打印到日志文件的级别,从而提高了日志的灵活性,给产品质量带来更大的帮助。文章主要围绕 MemoryHandler 类和 logging.properties 文件进行扩展,给出了对应的示例代码。概述日志技术为产品的质量和服务提供了重要的支撑。JDK 在 1.4 版本以后加

2015-07-08 12:33:59 599

转载 Java 实现 SSH 协议的客户端登录认证方式

本文首先对 SSH 协议的基础知识作以介绍,然后结合相关的 Java 代码逐步展开对登录认证方式的讨论。本文利于读者对 SSH 登录认证方式原理的理解,更有益于读者在实际项目中对 SSH 协议的应用。背景在开篇之前,让我们先对 SSH 协议有个宏观的大致了解,这样更有利于我们对本文的加深了解。首先要提到的就是计算机网络协议,所谓计算机网络协议,简单的说就是定义了一套标准

2015-07-08 11:51:15 2211

转载 应用设计模式开发命令行交互程序

本文介绍了如何通过使用设计模式来优化命令行交互程序的开发。传统的命令行交互模式,不具备回退、跳转等功能,缺少用户交互的灵活性。本文通过几种设计模式的组合,实现了一个通用的轻量级的命令行交互程序的解决方案,同时为系统重构、功能扩展以及代码的维护提供了方便。背景介绍人机交互的方式最初起始于命令行交互,虽然图形界面的交互方式应用越来越广泛,可是命令行交互仍然有着它不可替代的地位。

2015-07-08 11:48:49 2866

转载 Spring3.2 中 Bean 定义之基于 XML 配置方式的源码解析

本文简要介绍了基于 Spring 的 web project 的启动流程,详细分析了 Spring 框架将开发人员基于 XML 定义的 Bean 信息转换为 Spring 框架的 Bean Definition 对象的处理过程,向读者展示了 Spring 框架的奥妙之处,可以加深开发人员对 Spring 框架的理解。Spring 作为成熟的开源框架,已被开发人员广泛使用于日常开发中

2015-07-08 11:46:01 627

转载 用 Maven 做项目构建

本文将介绍基于 Apache Maven 3 的项目构建的基本概念和方法。Maven 是一套标准的项目构建和管理工具,使用统一规范的脚本进行项目构建,简单易用,摒弃了 Ant 中繁琐的构建元素,并具有较高的可重用性。读完本文,您将了解 Maven 的基本概念和使用它进行项目构建的基本方法。简介本文将介绍基于 Apache Maven 3 的项目构建的基本概念和方法。Ma

2015-07-08 11:42:09 549

转载 在 Java 中使用启发式搜索更快地解决问题

了解一个流行人工智能搜索算法的 Java 实现了解启发式搜索领域及其在人工智能上的应用。本文作者展示了他们如何成功用 Java 实现了最广为使用的启发式搜索算法。他们的解决方案利用一个替代的 Java 集合框架,并使用最佳实践来避免过多的垃圾收集。通过搜寻可行解决方案空间来解决问题是人工智能中一项名为状态空间搜索 的基本技术。 启发式搜索 是状态空间搜索的一

2015-07-08 11:39:56 1834

转载 深入探索 Java 热部署

在 Java 开发领域,热部署一直是一个难以解决的问题,目前的 Java 虚拟机只能实现方法体的修改热部署,对于整个类的结构修改,仍然需要重启虚拟机,对类重新加载才能完成更新操作。本文将探索如何在不破坏 Java 虚拟机现有行为的前提下,实现某个单一类的热部署,让系统无需重启就完成某个类的更新。简介在 Java 开发领域,热部署一直是一个难以解决的问题,目前的 Java

2015-07-08 11:37:58 495

转载 使用 Cobertura 和反射机制提高 Java 单元测试中的代码覆盖率

本文将介绍两种开发实践,用于提高 Java 单元测试中的代码覆盖率。代码覆盖率 = (被测代码 / 代码总数)* 100%。提高被测代码数量或降低代码总数,均可达到提高代码覆盖率的效果。在本文中,您将看到如何通过使用反射机制,在外部直接对目标类中的不可访问成员进行测试,以提高被测代码数量;以及通过修改 Cobertura 源码,使其支持通过正则表达式来过滤不需要进行单元测试的代码,以降低代码总

2015-07-08 11:34:23 2553

转载 使用 Apache JMeter 测试基于云的应用程序

原文出处: http://www.ibm.com/developerworks/cn/cloud/library/cl-jmeter-restful/index.html学习使用 JMeter 进行 RESTful API 测试的有效技术和最佳实践JMeter 是一个强大的测试工具,可用于测试在云中运行的应用程序。但是,如果您不知道如何有效地使用 JMeter,那么管理和维

2015-07-08 11:29:02 1105

转载 探讨自动化网页截图方法在全球化测试中的实际应用

原文出处:  http://www.ibm.com/developerworks/cn/java/j-lo-screenshort/index.html自动化截图是在全球化测试中实现自动化测试的重要一步。学会多种截图方法,可以使测试人员在不同的场景下灵活运用,大大的提高工作效率。本文首先探讨了编写 Selenium 脚本时的两种最简单、常用的截图方法,接着重点介绍了在难以利用普通截

2015-07-08 11:23:01 1252

转载 利用 BeanUtils 实现多表单间冗余数据同步管理

原文出处:  http://www.ibm.com/developerworks/cn/java/j-lo-redundant/index.html在长流程的工作流事务中,实际的业务表单之间存在较多的相同字段,我们在软件设计的时,为了提高查询的效率,相应的会允许表单对应的数据库表存在一定的冗余,这就对表单之间的这些冗余字段的同步带来了挑战。本文介绍了一种配置化管理字段映射并利用 A

2015-07-08 11:14:59 1321

转载 应用 Command 模式进行流水号管理的最佳实践

本文介绍了一种基于自定义格式字符串, 应用 Command 模式的流水号管理功能,可以让用户灵活设定流水号的格式,具备非常好的灵活性和可扩展性。摘要流水号管理作为很多信息系统的一种基础功能,对于一些具有业务含义的流水号,一般由多个具有不同意义的组成部分组成,其格式会相对比较复杂,如何快速灵活的支持不同的流水号格式,十分有现实意义。本文介绍了一种基于自定义格式字符串,应用 C

2015-07-08 11:11:02 1065 1

转载 使用 Jenkins 实现软件开发的持续集成

Jenkins 是一种易于使用的持续集成系统,它可以使开发者从繁杂的集成过程中解脱出来,专注于更为重要的业务逻辑实现。同时 Jenkins 能实施监控集成中存在的错误,提供详细的日志文件和提醒功能,还能用图表的形式形象地展示项目构建的趋势和稳定性。本文主要介绍了传统开发中的存在的一些问题及 Jenkins 在开发流程中的优势,并用实例为大家详细介绍了自动化持续集成的开发步骤。

2015-07-08 11:05:54 1380

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除