自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 网络爬虫

public class Spider implements Runnable {        private ArrayList urls; //URL列表    private HashMap indexedURLs; //已经检索过的URL列表    private int threads ; //初始化线程数       public static void main(Strin...

2009-01-13 15:46:11 181

原创 URL消重-信息指纹

数学之美 系列十三 信息指纹及其应用2006年8月3日 上午 11:17:00<noscript></noscript>发表者:吴军,Google 研究员 任何一段信息文字,都可以对应一个不太长的随机数,作为区别它和其它信息的指纹(Fingerprint)。只要算法设计的好,任何两段信息的指纹都很难重复,就如同人类的指纹一样。信息指纹在加密、信息压缩和处理中有着广...

2009-01-13 14:40:05 291

原创 设计模式

package lq.test;     import java.io.*;   import java.util.*;     //*********创建型模式***************     //factory method 1   //1具体的构造算法,和2构造出的具体产品由子类实现     interface Product {   }     //或者我也...

2009-01-12 22:45:53 154

原创 J2SE 5.0新特性 之 线程

1.1.        进程、线程与线程池      所谓进程是一种在自身定址空间中执行的相对独立的程序,是现代操作系统的基石。现在的多任务操作系统,会周期性地将CPU的时间划分给每一个进程,使操作系统得以同时执行一个以上的程序。       线程则是进程中的一个“单一连续控制的流程”,一个进程中可以拥有多个并行的线程。但线程不能单独存在,它依附于进程,只能从进程中派生而来。如果一个进程派生出...

2009-01-10 13:20:50 143

原创 爬虫/蜘蛛程序的制作

问题是对某一网站或所有网站进行抓取,即下载所有网页。怎么实现呢?先将问题最小化(转化的思想,转化为小规模,可以解决的问题):如果只有一个网页,怎么下载?问题变地很简单,只要用WebClient/WebRequest(甚至OpenFileDialog都可以)打开Url地址,将数据流存入本地存储器的文件(以相应的扩展名作为扩展名)即可。示例代码如下:string BoardStream;//下载内容存...

2009-01-10 11:40:58 627

原创 lucene多索引文件并行查询

Lucene并行索引多目录Lucene并行索引多目录1、多字段搜索就是同时要一个以上的字段中的内容进行比较搜索,类似概念在SQL中就是select * from Table where a like '%query%' or b like '%query%'。Lucene.net中的单个字段查询大家都比较熟悉,这里对字段content进行搜索Query query = QueryParser.Pa...

2009-01-10 11:35:58 130

原创 java.util.concurrent系列文章--(5)网络服务的简单实践

2006 年 1 月 18 日Java5增加了新的类库并发集java.util.concurrent,该类库为并发程序提供了丰富的API多线程编程在Java 5中更加容易,灵活。本文通过一个网络服务器模型,来实践Java5的多线程编程,该模型中使用了Java5中的线程池,阻塞队列,可重入锁等,还实践了Callable, Future等接口,并使用了Java 5的另外一个新特性泛型。简介本文将...

2009-01-06 21:36:33 103

原创 java.util.concurrent系列文章--(4)非阻塞算法简介

Java™ 5.0 第一次让使用 Java 语言开发非阻塞算法成为可能,java.util.concurrent 包充分地利用了这个功能。非阻塞算法属于并发算法,它们可以安全地派生它们的线程,不通过锁定派生,而是通过低级的原子性的硬件原生形式 —— 例如比较和交换。非阻塞算法的设计与实现极为困难,但是它们能够提供更好的吞吐率,对生存问题(例如死锁和优先级反转)也能提供更好的防御。在这期的 Java...

2009-01-06 21:34:42 115

原创 java.util.concurrent系列文章--(3)基于硬件同步原语的原子类型

在 JDK 5.0 之前,如果不使用本机代码,就不能用 Java 语言编写无等待、无锁定的算法。在 java.util.concurrent 中添加原子变量类之后,这种情况发生了变化。请跟随并行专家 Brian Goetz 一起,了解这些新类如何使用 Java 语言开发高度可伸缩的无阻塞算法。您可以在本文的 论坛中与作者或其他读者共享您对本文的看法。(也可以通过单击文章顶部或者底部的 讨论链接来访...

2009-01-06 21:34:02 148

原创 java.util.concurrent系列文章--(1)JDK1.5 并发集合

Doug Lea 最初编写的 util.concurrent 包变成了 JSR-166 ,然后又变成了 J2SE 平台的 Tiger 版本。这个新库提供的是并发程序中通常需要的一组实用程序。如果对于优化对集合的多线程访问有兴趣,那么您就找对地方了。请在本文对应的讨论论坛上与作者 John Zukowski 及其他读者分享您对本文的想法。(您也可以单击文章顶部或底部的 讨论来访问论坛)。 在 Ja...

2009-01-06 21:28:32 104

空空如也

空空如也

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

TA关注的人

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