自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 dynaTrace Ajax:前端性能分析利器

什么是 dynaTrace Ajax随着 jQuery、Dojo、YUI 等框架的兴起让构建 Web2.0 应用更加容易,但随之带来的定位等应用问题也越来越难,尤其是与性能相关的。dynaTrace Ajax Edition 是一个强大的底层追踪、前端性能分析工具,该工具不仅能够记录浏览器的请求在网络中的传输时间、前端页面的渲染时间、DOM 方法执行时间以及 JavaScript 代码的...

2012-05-25 15:32:00 561

原创 Java 性能优化之 String 篇

 String 在 JVM 的存储结构一般而言,Java 对象在虚拟机的结构如下:对象头(object header):8 个字节Java 原始类型数据:如 int, float, char 等类型的数据,各类型数据占内存如 表 1. Java 各数据类型所占内存.引用(reference):4 个字节填充符(padding)表 1. Java 各数据类型所占内...

2012-05-25 14:18:45 130

原创 Java 持久化技术规范(JPA )中的主键生成策略

简介: Java Persistence API(JPA)中要求每个实体(Entity)类必须有一个主键,并且提供了 Table,Sequence,Identity,Auto 四种主键生成策略。其中 Identity 为表自动增长字段;Sequence 通过序列产生主键;这两种主键生成策略在某些特定的数据库中得到了很好的支持。Table 策略是任何关系型数据库都支持的一种策略,所以如果想要得到良好...

2012-05-11 15:11:44 231

原创 深入了解 Dojo 的 Collections 工具包

Dojox 的 Collections 工具,一个模拟 Java 的某些实用数据结构的工具包,如:List(ArrayList)、Set、Dictionary、Queue、Stack、BinaryTree 等。这些工具对那些需要用到一些高级 Collections 功能的开发者非常有用。如果您是一位 Java 开发者,您一定对这些数据结构非常熟悉,基于这些工具进行 web 应用开发也将会游刃...

2012-04-20 14:03:34 179

原创 PowerMock 简介

EasyMock 以及 Mockito 都因为可以极大地简化单元测试的书写过程而被许多人应用在自己的工作中,但是这 2 种 Mock 工具都不可以实现对静态函数、构造函数、私有函数、Final 函数以及系统函数的模拟,但是这些方法往往是我们在大型系统中需要的功能。PowerMock 是在 EasyMock 以及 Mockito 基础上的扩展,通过定制类加载器等技术,PowerMock 实现了...

2012-04-17 17:59:51 174

原创 使用 Dojo 和 Grails 快速实现数据的增删改查(CRUD)

选择 Grails 和 Dojo 的原因随着 web 的广泛应用,web application 的开发项目越来越多,而大部分的 web 开发归根结底都是对数据库的增删改查。对于一张数据库表的增删改查,采用基于 MVC(模型 - 视图 - 控制器)设计模式的开发往往需要 Domain class、 Controller、4 个增删改查的页面、form 输入数据的校验等。这样就免不了大量类...

2012-04-17 17:57:34 282

原创 使用 Java Socket 编程实现开放平台与 IBM 主机的文件传输

 引言在网络世界中,网络中的节点间的信息的传递无疑是一个重要的环节。在 IBM 大型主机进入这个网络世界后,网络节点中的新成员又多了一种。要实现开放平台与 IBM 大型主机之间的数据通信其实并非难事,对于程序员而言,掌握一种实现模型和实现的接口就会使网络编程变得简单,易于实现。Java 的 JDK 就提供可一系列的 API 来完成网络编程。Socket 就是其中的一种。本文的研究背景...

2012-04-16 14:08:34 427

原创 用 Sencha Touch 构建移动 web 应用程序

概述在软件开发领域中,有两个重要的趋势越来越重要:移动应用程序开发和基于标准的 HTML5 web 开发。任何类型开发的学习过程都是艰苦的。开发一个本地移动应用程序通常需要特定平台和技术知识,比如,用于 iPhone 的 Objective-C,用于 Android 的 Java™(这只是两个平台)。HTML5 开发近期日渐流行,因为它是基于标准的。虽然供应商正在迅速地融入并遵守这些早期...

2012-04-14 10:14:14 167

原创 利用 CoffeeScript 和 Node 进行函数式 JavaScript 编程

CoffeeScript 是一种相对较新的语言,为开发人员提供了不再有 JavaScript 缺陷的令人期待的方案。利用 CoffeeScript,开发人员即可使用一种轻量级、直观的语言完成编码工作,这种语言就像是 Ruby 和 Python 的混合体。对于兼容浏览器的 Web 应用程序,CoffeeScript 将编译为 JavaScript;对于服务器端应用程序来说,它还能与 Node....

2012-04-14 10:11:38 136

原创 使用 Jo 和 PhoneGap 构建本地移动应用程序

移动 web 或移动应用程序?移动应用程序开发基本上可以分为两类:web 或本地。移动 web 应用程序开发与传统 web 开发差不多,区别在于前者针对移动平台。您的应用程序存储在 web 服务器上并由其提供服务,然后由移动 web 浏览器消费。可以预料到,浏览器上可供使用的资源和功能非常有限。将这一点与本地开发相比,后者使您能够利用移动操作系统的核心特性。因此,移动 web 应用程序开...

2012-04-14 10:09:40 177

原创 使用 TSAM 扩展来管理 J2EE 应用程序

Tivoli Service Automation Manager 7.2.2 引入了扩展 的概念,该扩展是一组 TSAM 软件组件,可以向 TSAM 平台添加更多功能。一个扩展通常(但不限于)可以实现以下功能:可以实现一个新的 IT 服务自动化解决方案,该解决方案在 TSAM 中称为服务定义;例如,一个存储即服务解决方案可以为一所大学的学生提供主目录。可以向现有服务定义添加功能;...

2012-04-11 19:00:48 194

原创 使用 Contest 分析测试用例的代码覆盖率

解决什么问题问题的提出时这样的:对于测试人员来说,首先面临的问题就是无法度量测试用例的质量,如果测试工程师花费大量时间写的测试用例不能有效地覆盖重要的实现代码,那么可以表明这样的测试用例不是优良的。同时可以根据测试覆盖了的报表来分析为什么没有覆盖到重要的代码,接着需要进行改进测试用例的代码覆盖率达到满意的结果。代码覆盖率高低根据产品的不同而不同:70%,80% 甚至 100% 都是可能的...

2012-04-11 18:57:54 290

原创 找出并解决 JavaScript 和 Dojo 引起的浏览器内存泄露问题

简介一般来说,浏览器的内存泄漏对于 web 应用程序来说并不是什么问题。用户在页面之间切换,每个页面切换都会引起浏览器刷新。即使页面上有内存泄漏,在页面切换后泄漏就解除了。由于泄漏的范围比较小,因此常常被忽视。Ajax 技术引入后,内存泄漏就成了一个比较严重的问题。在 web 2.0 样式页面上,用户不需要经常刷新页面。Ajax 技术用于异步更新页面内容。特殊场景中,整个 web 应...

2012-04-11 18:55:27 145

原创 26个技巧让你的网站获得巨大流量

关于作者: Shawn Campbell是电子商务的活跃分子,参与创立了Red Carpet Web Promotion, Inc.。从1998年起,他就致力于研究和开发市场策略,达到在搜索引擎中的显著效果。Shawn是搜索引擎优化(SEO)领域的先驱之一。一些旧的技巧仍然适用(比如每天写出新内容),但一些已经不再适用(向搜索引擎提交已经不是必要步骤),我们这次就要告诉你什么该做什么不必...

2012-04-11 18:51:08 121

原创 Struts 2 struts.xml详解(三)

 拦截器(Interceptor)配置        上节简单地介绍了Action的配置,这节简单介绍一下拦截器的配置。 1 拦截器栈的配置        顾名思义,拦截器就是在action的执行前后实行拦截,加入某些操作。拦截器类似于servlet的过滤器。它们是按照定义的顺序依次执行的。每一个拦截器访问的都是相同的ActionInvocation,就像每个过滤器访问的都是同...

2012-04-06 17:57:37 68

原创 Struts 2 struts.xml详解(二)

 Action配置        上节大致讲了关于struts.xml的整体结构,下面讲一下它的一些详细的配置。先从action说起吧! Method属性        在action中有一个method属性,可以指定此action调用哪一个方法。如果没有指定,默认调用execute()方法。        例如: <action name="Login...

2012-04-06 10:02:32 97

原创 Struts 2 struts.xml详解(一)

 概述        Struts 2用配置文件(struts.xml)初始化它的资源。这些资源包括:拦截器---用于预处理和后处理请求的拦截器Action类---用于调用业务逻辑处理和数据访问代码的Action类结果---可以用JavaServer Pages, Velocity 和 FreeMarker模板预览的结果        在运行时,一个程序只有一个配置。这...

2012-04-05 15:35:46 140

原创 函数式思维: 函数设计模式,第 1 部分

函数世界中的一些经验主义者认为设计模式的概念有缺陷,在函数式编程中不需要。在模式 的狭义解释下该观点可能成立,但这是一个更多关于语义而非使用的论点。设计模式的概念(针对常见问题的指定编目解决方案)是合理的。但是,模式有时在不同的范式下以不同的形式出现。因为构建块和问题解决方法在函数世界中是不同的,一些传统的 Gang of Four 模式(参阅 参考资料)消失了,而其他模式存在问题,但解决问...

2012-04-02 18:18:37 92

原创 利用 Django 与 jQuery 来创建电子表格应用程序

 本文描述了如何利用 jQuery、jQuery 插件、以及 Django 来实现基于 web 的电子表格。并不是为了与 Google Docs 进行竞争,而是要演示如果创建 “office” 风格的应用程序,并给出大量可用的 jQuery 插件与工具。我采用 SQLite/Python/Django 栈作为后端,您也可以通过很小的工作量,来实现到其他框架的端口,比如 Ruby on Rail...

2012-04-02 18:16:50 260

原创 超酷的JavaScript叙事性时间轴(Timeline)类库

 在线演示Timeline 是我见过的最酷的展示事件随时间发展的javascript实现。你可以基于时间使用讲故事的方式来创建时间轴特效,整个时间轴以幻灯的方式来展示,你可以穿插图片,视频或者是网站,而且拥有非常华丽的动画效果和缩略图效果,非常适合做网站的关于我们功能。 主要特性支持外部社交网站,例如,twitter.com, youtube,flickr,vidmeo,...

2012-04-01 13:26:19 849

原创 如何把Web缓存都充分利用上来?

使用URLs时要确保一致性。浏览器基于URL来缓存资源。当URL改变后,浏览器从源服务器获该资源的新的版本。查询字符串参数的改变也被视为URL的改变。例如,"/default.aspx" 被缓存到浏览器,如果你请求了"/default.aspx?123",浏览器将从服务器获取新的版本。对于这个新URL的响应,如果你返回的是正确的缓存报头,它仍然会被缓存。这样的话,再把查询字符串改成类似于"/...

2012-03-30 15:40:04 62

原创 从 Java 代码到 Java 堆

 背景信息:Java 进程的内存使用参考知识如需进一步了解 Java 应用程序的进程内存使用,请参阅 Andrew Hall 撰写的 developerWorks 文章 “内存详解”。这篇文章介绍了 内存详解 以及 AIX® 提供的布局和用户空间,以及 Java 堆和本机堆之间的交互。通过在命令行中执行 java 或者启动某种基于 Java 的中间件来运行 Java...

2012-03-30 15:37:43 242

原创 面向对象的 JavaScript 编程:dojo.declare 详解

引言JavaScript 早在发明初期时,仅用来进行简单的表单数据验证,但随着 Web 2.0 技术的蓬勃发展,尤其是近年来 Ajax 的异军突起,JavaScript 如今已成为 Internet 上最流行的脚本语言,用其开发的 web 应用也因高互动性极大的丰富了用户体验。而与此同时,当前的富英特网应用程序的代码量也产生了爆炸式的增长,因此利用面向对象的 JavaScript 编程,...

2012-03-30 15:34:40 209

原创 分享一个超酷的开源html5 canvas互动网络图形效果javascript类库 - sigma.js

在线演示今天分享一个超酷的开源轻量级javascript图形网络类库 - sigma.js,这个类库基于HTML5画布实现。能够非常好的生成静态或者动态的互动网络图形。这个类库特别为以下设计:使用图形软件输出生成互动的静态图形,例如,Gephi快速的生成动态图形这个类库是一个独立的不依赖于第三方javascript的图形类库。开发人员可以自己开发插件来扩展功能,同...

2012-03-28 16:46:24 709

原创 11个html5移动开发框架

渴切消息:随着手机移动平台的快速发展,移动app或者移动web的开发也越来越热门,这使得html5凭借在移动平台开发的优势,迅速发展起来。不仅如此也衍生出了大批的优秀的html5移动开发框架,这些框架能够帮助你基于html5+css3快速构建一个html5的应用。其中包括最优秀的jquery mobi等等。1. Lungo.js:HTML5 移动开发框架Lungo.js 是第一个应用...

2012-03-28 15:57:14 117

原创 基于 CSS3 的下一代 Web 应用开发,第 3 部分: 在 IE 中的特殊处理

 Opacity 透明度透明度属性是 CSS 中非常常用和流行的一个属性,目前已经广泛被主要浏览器支持,可惜的是 IE6/7/8 均不支持该属性。虽然 IE 没有支持这个 CSS 属性,但是我们可以通过使用 IE 特有的滤镜 filter 属性来实现相同效果。清单 1. Opacity 代码示例 opacity: 0.4; /*Chrome、Safari、F...

2012-03-28 14:47:42 62

原创 基于 CSS3 的下一代 Web 应用开发,第 2 部分: 实现和应用

 本文《基于 CSS3 的下一代 Web 应用开发》系列文章的第 2 部分,第 1 部分我们将介绍了 CSS 的发展历史,个版本的功能特点差异和 CSS3 引入的新特性。第 2 部分,我们针对这些 CSS3 新特性介绍其在不同浏览器中实现的差别,并结合实例讲解如何利用这些特性进行开发。前言在该系列文章第 1 部分中我们介绍了 CSS 的发展历史以及各个版本的主要功能和差别。之后...

2012-03-27 17:26:10 103

原创 用HTML5 Canvas做一个画图板

 使用HTML5可以非常简单地在canvas上实现画图应用,用支持html5的浏览器便可在下面的区域进行绘画,要看到演示效果,请确保你的浏览器支持HTML5:点击演示效果功能很简单,原理其实和拖放是类似的,主要是三个事件:在canvas 上绑定mousedown 事件以标志绘画的开始(调用moveTo 移动画笔)在document 上绑定mousemove 事件来处理绘画时的...

2012-03-26 17:41:41 164

原创 基于 CSS3 的下一代 Web 应用开发,第 1 部分: 发展历史及新特性

CSS 的发展历史1982 年 Tim Berners-Lee 为使世界各地的物理学家能够方便的进行合作研究以及信息共享,创造了 HTML(HyperText Markup Language) 超文本置标语言。1990 年他发明了世界上第一个浏览器 WorldWideWeb。在 1991 年 3 月,他把这发明介绍给了给他在 CERN 工作的朋友,当时网页浏览器被其世界各地的成员用来浏览...

2012-03-26 17:03:19 429

原创 使用 HTML5 Boilerplate 开始您的 web 开发

 web 开发团队的一个常见实践是创建一组标准文件,团队成员基于它们开始 web 开发流程,包括一个公共文件结构、基本命名惯例和标准库。这样做能够更容易启动并运行一个项目。它还能将开发人员引向内部编码标准并实施标准文件组织。HTML5 Boilerplate 就是这种处于 web 开发最前沿的完美理念的实现。结合了使用 HTML5 需要的几个增强和许多其他最佳实践,只需最少的前期投资,HT...

2012-03-25 18:39:58 636

原创 使用 HTML5 开发离线应用

 HTML5 离线功能介绍HTML5 是目前正在讨论的新一代 HTML 标准,它代表了现在 Web 领域的最新发展方向。在 HTML5 标准中,加入了新的多样的内容描述标签,直接支持表单验证、视频音频标签、网页元素的拖拽、离线存储和工作线程等功能。其中一个新特性就是对离线应用开发的支持。在开发支持离线的 Web 应用程序时,开发者通常需要使用以下三个方面的功能:离线资源缓存:需要...

2012-03-25 18:39:37 51

原创 Ajax 缓存: 两个重要的事实

事实1 : Ajax缓存和HTTP缓存效果相同现代浏览器的HTTP系统和缓存系统要比Ajax的XMLHttpRequest对象更靠近底层. 在这个层面上,浏览器并不知道或关心Ajax请求。它只是服从正常的基于从服务器返回的HTTP响应头缓存规则。如果你已经知道HTTP缓存,您可以将这种知识应用到Ajax的缓存。唯一真正的区别是,您可能需要以不同的方式为静态文件设置响应头。以下HTTP响...

2012-03-25 18:33:44 92

原创 实现 HTML5 和 CSS3 的跨浏览器功能

最新版本的 HTML 和 CSS 提供了许多新特性。例如,HTML5 包含了让 Web 页面更有语义的新元素;现在,您可以离线储存数据、创建可编辑的内容区和使用拖放功能等等。使用 CSS3 可以创建未使用图像的圆角效果、添加阴影和渐变。尽管有许多新特性已经可用,但是并不是所有新特性能够跨浏览器工作。对于本文提供的特定 HTML5 和 CSS3 技巧,您现在就可以在所有主流浏览器的最新版本上使...

2012-03-24 22:34:27 667

原创 深入了解 CSS3 新特性

 简介CSS 即层叠样式表(Cascading Stylesheet)。Web 开发中采用 CSS 技术,可以有效地控制页面的布局、字体、颜色、背景和其它效果。只需要一些简单的修改,就可以改变网页的外观和格式。CSS3 是 CSS 的升级版本,这套新标准提供了更加丰富且实用的规范,如:盒子模型、列表模块、超链接方式、语言模块、背景和边框、文字特效、多栏布局等等,目前有很多浏览器已经相继支持...

2012-03-24 22:30:10 220

原创 RIP传递默认路由的5种方法

RIP传递默认路由方法(共5种)图:关于传递默认路由的实验都是以下这个图RIP传递默认理由方法1:default-information originateR1:interface Loopback0ip address 1.1.1.1 255.255.255.0interface Loopback1ip address 11.11.11.11 255.255.255.0interface Ser...

2012-03-24 22:28:26 2186

原创 几种VLAN扩展技术简介

为了解决传统VLAN的局限性,更大程度地保证网络通信的安全,近年来出现了多种在传统VLAN技术上发展的扩展VLAN技术,本文主要介绍PVLAN、SuperVLAN、SVLAN等几种典型的扩展VLAN技术。  1 PVLAN技术(Private VLAN)  PVLAN将VLAN中的端口分为两类:与用户相连的端口为隔离端口(Isolate Port),每个隔离端口可划分到不同的Private Vla...

2012-03-24 22:25:12 1744

原创 反射基本概念

在java运行时环境中,对于任意一个类,能够动态的获取类的信息,动态调用类的方法。 在运行期间:判断,构造,调用任意一个类的成员变量和方法。而在编译期间:我们是用new 创建java的对象。 通过reflection机制,我们可以在运行时取得任何一个已知名称的class的内部信息,包括其修饰符,以及superclass,interfaces,也包括fields和methods的所有信息。 在jdk...

2012-03-24 22:20:44 129

原创 简单的ajax

<!--var http_request=false;var meRequest=false;var ID="";function createXMLHttpRequest(){ if(window.XMLHttpRequest) {  http_request = new XMLHttpRequest();  meRequest = new XMLHttpRequest(); } ...

2011-03-08 18:23:02 85

一个或多个文件上传--php

 <?php/* * 作者 可可 * 日期 2011-1-20 *//* * $field 指定form表单中的input字段名 * $type 指定上传的文件类型 * $dir 指定文件保存的路径,相对于站点根路径的相对路径(以/开始和结尾) * $maxsize 限制上传文件的大小(单位字节),默认不限制 * 返回值 "error"代...

2011-02-13 14:50:22 68

Structs 2 Web应用中的文件操作(复制和删除文件、目录,读取文本文件)

package auh.server;import java.io.File;import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.IOException;/** * Structs 2 Web应用中的文件操作(复制和删除文件、目录,读取文本文件)* @a...

2011-02-13 14:45:08 76

空空如也

空空如也

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

TA关注的人

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