自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(28)
  • 问答 (2)
  • 收藏
  • 关注

原创 简单理解耗时的Java GC

参考地址:http://www.cloudera.com/blog/2011/02/avoiding-full-gcs-in-hbase-with-memstore-local-allocation-buffers-part-1/java GC工作在分代的模型上。大多数的对象要么很快的死亡,要么持续较长的时间。例如,方法栈中创建的对象只会持续几毫秒时间,而缓存中的对象会持续几分钟。既然...

2011-10-10 15:33:17 152

原创 Hadoop Getting Started

本文描述在ubuntu上安装Hadoop,并在Pseudo-Distributed Operation模式下运行一个WordCount的Demo。 Step1安装必要的软件:jdk,ssh。在ubuntu下可以使用apt安装。sudo apt-get install openjdk-6-jdk sudo apt-get install sshssh安装完成后需要做一个特...

2010-07-16 10:09:15 105

Java 7 Fork/Join 并行计算框架概览

应用程序并行计算遇到的问题    当硬件处理能力不能按摩尔定律垂直发展的时候,选择了水平发展。多核处理器已广泛应用,未来处理器的核心数将进一步发布,甚至达到上百上千的数量。而现在很多的应用程序在运行在多核心的处理器上并不能得到很好的性能提升,因为应用程序的并发处理能力不强,不能够合理有效地的利用计算资源。线性的计算只能利用n分之一的计算支援。    要提高应用程序在多核处理器上的执...

2010-04-14 15:10:34 112

使用Berkeley DB构建持久化队列

Berkeley DB简介Berkeley DB(以下简称Bdb)是一个嵌入式的键值数据库。Bdb目前有两个版本,一个是使用c++构建的版本,还有一个java版本。c++版本支持在众多的语言中使用,Berkeley DB Java Edition(以下简称JE)完全用java语言编写。JE执行在应用程序中,完全不需要Client/Server的通信。JE更容易部署和嵌入到java程序中,所以我...

2010-04-13 20:25:10 276

《Clean Code》总结 异常

[size=large][b]1.使用异常而不是错误码[/b][/size]如果使用错误码,调用者,必须在方法调用后立即检查结果,如果多次调用都放回错误码,就会造成复杂的多层嵌套结构。[code="java"]if (deletePage(page) == E_OK) { if (registry.deleteReference(page.name) == E_OK) { ...

2010-03-14 18:13:05 178

《Clean Code》总结 方法

[size=large]1.方法要可能的短。最好控制在几行以内。[/size]例如:[code="java"]public static String renderPageWithSetupsAndTeardowns( PageData pageData, boolean isSuite) throws Exception { if (isTestPage(pageDa...

2010-03-14 18:08:17 121

《Clean Code》总结 有意义的命名

编写代码时,尽量使用有意义的名称命名类、方法、变量等1.使用能揭示意图的名称public List<int[]> getThem() { List<int[]> list1 = new ArrayList<int[]>(); for (int[] x : theList) if (x[0] == 4) list1...

2010-03-12 11:57:19 220

总结一致性哈希(Consistent Hashing)

在大型web应用中,缓存可算是当今的一个标准开发配置了。在大规模的缓存应用中,应运而生了分布式缓存系统。分布式缓存系统的基本原理,大家也有所耳闻。key-value如何均匀的分散到集群中?说到此,最常规的方式莫过于hash取模的方式。比如集群中可用机器适量为N,那么key值为K的的数据请求很简单的应该路由到hash(K) mod N对应的机器。的确,这种结构是简单的,也是实用的。但是在一些高速发展...

2010-03-10 13:36:52 184

原创 Getting Started with Lucene

Lucene是一个高性能的,可扩展的信息提取(IR)库。Lucene不是一个完整的搜索引擎,但基于它可以很快捷构建一个搜索应用。Lucene提供了搜索需要的索引建立和索引查找的功能,以及相应的附属设施。Lucene是Apache下的开源Java项目,其还有一系列与搜索相关的子项目。 一、搜索应用基本过程搜索主要围绕着索引的建立和索引的查找。搜索引擎首先从原始的内容资源中提取出文本化...

2010-02-22 14:27:54 79

使用Unitils测试DAO

上个月在博客中,讲了怎么使用dbunit帮助测试dao。但是在使用过程中,发现,使用dbunit的过程依然很繁琐。因此考虑对dbunit的使用做一些封装。期间发现开源工具Unitils已经很好的完成了这个工作。Unitils,由多个模块构成。DatabaseModule,DbUnitModule,HibernateModule ,MockModule,EasyMockModule,Inje...

2009-11-24 19:30:37 125

原创 [转]TDD全攻略

原文链接:http://www.blogjava.net/briansun/archive/2005/07/31/8813.html关键字测试驱动开发/Test Driven Development/TDD测试用例/TestCase/TC设计/Design重构/RefactoringTDD的目标    Clean Code That Works这句话的含义是,事...

2009-11-20 20:17:49 126

在Spring中结合Dbunit对Dao进行集成单元测试

package com.test.dbunit.dao;import javax.sql.DataSource;import org.dbunit.Assertion;import org.dbunit.database.DatabaseConnection;import org.dbunit.database.IDatabaseConnection;import or...

2009-09-23 16:14:49 273

@OneToOne 延迟加载

今天使用JPA(Hibernate)实现一个一对一关联的时候,发现无法使用延迟加载.Person关联一个Picture.在读取Person的时候,显示的记载了对于的Picture.读取10个Person发生了11次数据库查询. 最后查阅资料后,发现是自己对OneToOne理解不够透彻所致.之前的关联是这么定义的.@Entitypublic class Person { @I...

2009-08-04 16:47:44 101

代码备份build.xml

<?xml version="1.0" encoding="GBK" ?><project name="demo" default="usage" xmlns:catalina="antlib:org.apache.catalina.ant"> <!--属性配置--> <!--目录结构--&g

2009-07-30 10:29:40 87

原创 @Override的在1.5和1.6中的不同含义

今天在用ant编译的时候遇到一个问题,老是提示 @Override错误方法未覆盖其父类的方法。在eclipse中都能正确编译的。一整鼓捣之后发现,path设置的问题,ant使用的是jdk1.5编译,在eclipse中使用的是jdk1.6,编译的。问题就来了。才发现,@Overrride注解在1.5和1.6中含义竟然不相同。如下面的代码:public interface SomeIn...

2009-07-29 18:45:32 123

Flex文件上传下载

在Flex中,同样支持使用HTTP,multipart/form-data格式上传文件。还支持冲URL下载文件到本地,当然也可以直接跳转浏览器到下载链接,让下载工具来下。一、文件上传:分为Flex客户端,和Servlet服务器端。服务器端使用apache-common-filupload库上传。客户端<?xml version="1.0" encoding="utf-8"?&...

2009-07-28 13:17:47 87

Flex学习笔记4

1.使用PopupManager创建弹出窗口。 2.UIComponent可以做不可视组的数据管理器组件的跟标签,这样可以使用父类的dispatchEvent等方法。 3.使用ListBase的子类显示列表数据,如 :List,HorizontalList等。通过dataProvider提供显示的数据。使用labelFiled指定显示的简单标签。使用labelFuntion指定获取...

2009-07-26 10:16:19 87

Flex学习笔记3

1.使用Image控件时,source属性指定图片路径是,可以使用外部相对路径,也可意见使用@Embed指定嵌入资源.编译在编译时,会把@Embed指定的资源嵌入到swf文件中.如<image source="@Embed('assets/water.jpg')" /> 2.creationComplete事件在组件创建完成并显示后触发,容器在所有子元素都触发该事件后触发....

2009-07-25 12:27:56 84

Flex学习笔记2

今天继续学习Flex,学习了Flex的编译和部署模型。     Flex也有类似Jar包的机制,SWC,可以把编译的代码和资源文件打包在一起,方便分发。使用mxmlc工具编译程序的同时,可以包含嵌入资源文件,使用compc工具可以生产SWC文件。    SWC为一个ZIP压缩包。SWC通常包括一个类编译的library.swf文件,catelog.xml索引文件,未编译的资源文件,例如...

2009-07-25 12:06:09 93

Flex学习笔记1

Flex学习笔记:    前几天大概看了一本电子书,对flex的所有内容有了大概的了解,今天开始阅读一本实例类型的书,并准备做点儿笔记,把知识点掌握牢固.以前看书学东西,看太快了,一本两书天读完没有足够实践和总结,很快就忘了.这次尝试改变这个情况. 1.使用容器Flex内置了很多布置组建的容器,通过容器的嵌套使用,可以很方便的布局.VBox,子元素垂直方向排列.HBox子元素水平方向排...

2009-07-25 12:04:51 134

java并发编程-构建块

java并发编程-Executor框架java5引入了很多新的并发容器和工具,极大的简化了并发程序的编写。本文先介绍Collections.synchronizedXXX工厂方法创建的同步容器的不足,再介绍ConcurrentHashMap,CopyOnWriterArrayList,BlockingQueue,CountDownLatch,Semaphore,CyclicBarrier和...

2009-04-13 20:26:17 76

java并发编程-Executor框架

java并发编程-构建块Executor框架是指java 5中引入的一系列并发库中与executor相关的一些功能类,其中包括线程池,Executor,Executors,ExecutorService,CompletionService,Future,Callable等。他们的关系为: 并发编程的一种编程方式是把任务拆分为一些列的小任务,即Runnable,然后在提交给一个E...

2009-04-13 15:56:05 192

集成struts2 spring hibernate,使用注解

集成struts,spring,hibernate时,对于初学者来说最大的麻烦就其繁琐的xml配置文件。现在三者都对基于注解的配置提供了良好的支持。在struts2中,使用convent plugin,得益于annotation和规约,配置过程得以大大减少。在spring2.5也可以使用@Autowired,进行注入,使用@Controller,@Service,@Repository注解,自动定...

2009-04-01 20:21:17 87

在Tomcat中使用容器提供的鉴别

JSP页面往往在容器提供的一个运行时环境中执行。相应地,所有鉴别和访问控制都可以由容器处理,从而将应用开发人员解脱出来,而不必完成诸如实现适当安全控制等重要任务。安全性很难把握,因此作为起步,使用容器提供的机制往往是上选之策,这些机制已经经受了时间的考验,本文以Tomcat为例,简单的配置使用容器提供的鉴别功能。相关代码见附件。一:首先创建项目项目目录结构 其中admin目录为需要进行访...

2009-03-31 13:47:37 78

在eclipse中使用jboss热部署功能

最近看Jboss in action,里面提到Jboss的hot deploy功能,今天动手试了一下了一下,发现确实很好用。 首先使用eclipse的Automaticlly publish when resources change功能,设置一个较短的时间,比如一秒,那么在编辑保存之后,eclipse会自动发布更新到jboss部署目录。在jboss中,可以使用Jmx Consol...

2009-03-29 20:36:59 680

注解驱动的spring mvc(二)

Previous:注解驱动的spring mvc(一)四:视图名的确定。spring mvc可以通过可以通过多种方式确定视图名,在前面的例子中,方法无返回值,视图名更具请求参数确定。Controller方法还是返回一个String类型的值作为视图名。@RequestMapping("/user/list.htm")public String listAllUser(){ return...

2009-03-24 11:28:23 68

注解驱动的spring mvc(一)

Next:注解驱动的spring mvc(二)基于注解驱动的配置越来越流行,使用注解加上Conversion over Configuration可以大为简化配置的过程。struts 2.1.6引入的Conversion插件在注解和规约驱动的配置上做的很好。spring在2.5以后也对MVC进行了大幅度改进,现在你无须让 Controller 继承任何接口,无需在 XML 配置文件中定义请求...

2009-03-24 10:24:00 122

在Tomcat6中配置数据源

[size=large]1.设置META-INF/context.xml[/size][code="xml"] [/code][size=large]2.设置WEN-INF/web.xml,添加资源引用[/size][code="xml"] jdbc/testdb javax.sql.DataSource Container S...

2009-01-19 21:40:29 91

空空如也

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

TA关注的人

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