自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 线程池的原理及实现

多线程技术主要解决处理器单元内多个线程执行的问题,它可以显著减少处理器单元的闲置时间,增加处理器单元的吞吐能力。        假设一个服务器完成一项任务所需时间为:T1 创建线程时间,T2 在线程中执行任务的时间,T3 销毁线程时间。    如果:T1 + T3 远大于 T2,则可以采用线程池,以提高服务器性能。                一个线程池包括以下四个基本组成部

2015-02-26 13:56:26 658

原创 线程之消费者和生产者问题代码

最近复习了一下线程,发现运行消费者和生产者代码部分时,总会出现先消费 后生产。    源码如下:public class ProducerConsumer { public static void main(String[] args) { SyncStack ss = new SyncStack(); Produ

2015-02-26 12:04:14 661

原创 当一个线程进入一个对象的一个synchronized方法后,其它线程是否可进入此对象的其它方法?

对象的synchronized方法不能进入了,但它的其他非synchronized方法还是可以访问的。我们来看一个例子:package dhp.test1;public class TT implements Runnable { int b = 100; public synchronized void m1(){ b = 10000;

2015-02-26 11:31:23 623

原创 java死锁实例

在实际编程中,要尽量避免出现死锁的情况,但是让你故意写一个死锁的程序时似乎也不太简单,以下是一个简单的死锁例子。package dhp.test1;/** * * @author 邓海波 * 当类的对象flag=1时(T1),先锁定O1,睡眠500毫秒,然后锁定O2; * 而T1在睡眠的时候另一个flag=0的对象(T2)线程启动,先锁定O2,睡眠500毫秒,等待T1释放O1;

2015-02-26 11:11:50 816

原创 Runnable和Thread的区别

在java中可有两种方式实现多线程,一种是继承Thread类,一种是实现Runnable接口;Thread类是在java.lang包中定义的。一个类只要继承了Thread类同时覆写了本类中的run()方法就可以实现多线程操作了,但是一个类只能继承一个父类,这是此方法的局限,  下面看例子:package org.thread.demo;  class MyThread exten

2015-02-26 10:40:44 683

转载 lucene 分词原理

(一)Lucene是一个高性能的 java 全文检索工具包,它使用的是倒排文件索引结构。该结构及相应的生成算法如下:  0)设有两篇文章 1 和 2  文章1 的内容为: Tom lives in Guangzhou,I live in Guangzhou too.  文章2 的内容为: He once lived in Shanghai.  1)由于 lucene

2015-02-11 09:52:51 880

原创 lucene再查询分页搜索和lucene的搜索_基于searchAfter的实现

package com.dhb.search;import java.io.File;import java.io.FileReader;import java.io.IOException;import org.apache.commons.io.FileUtils;import org.apache.lucene.analysis.standard.StandardAnalyze

2015-02-10 21:56:24 821

原创 lucene搜索实例解析

1、搜索的简单实现(TermQuery)         1.1 创建 IndexReader         1.2 创建 IndexSearcher         1.3 创建Term和TermQuery         1.4 创建TermQuery获取TopDocs          1.5 创建TopDocs 获取ScoreDoc         1.6 根据S

2015-02-09 23:54:52 557

原创 lucene索引_加权操作、对日期和数字进行索引、IndexReader的设计

继上一篇之后,进行的一些补充代码。package com.dhb.index;import java.io.File;import java.io.IOException;import java.text.ParseException;import java.text.SimpleDateFormat;import java.util.Date;import java.util.

2015-02-09 18:02:59 932

原创 lucene索引_创建_域选项和lucene索引_的删除、更新.

今天进一步测试了一下Lucene的,写下了一些小代码,记录了下来,希望帮助以后进一步了解Lucene。package com.dhb.index;import java.io.File;import java.io.IOException;import org.apache.lucene.analysis.standard.StandardAnalyzer;import org.a

2015-02-07 14:17:22 622

转载 从概念理解Lucene的Index(索引)文档模型

Lucene主要有两种文档模型:Document和Field,一个Document可能包含若干个Field。每一个Field有不同的策略:1.被索引 or not,将该字段(Field)经过分析(Analyisi)后,加入索引中,并不是原文 。2.如果被索引,可选择是否保存“term vector”(向量),用于相似检索。3.可选择是否存储(store),将原文

2015-02-06 23:34:50 784

原创 lucene创建索引初步和搜索初步

1 lucene简介1.1 什么是lucene    Lucene是一个全文搜索框架,而不是应用产品。因此它并不像www.baidu.com 或者google Desktop那么拿来就能用,它只是提供了一种工具让你能实现这些产品。2 lucene的工作方式    lucene提供的服务实际包含两部分:一入一出。所谓入是写入,即将你提供的源(本质是字符串)写入索引或者将其从索引中删除

2015-02-06 21:18:08 729

原创 github常见操作和常见错误!

一、如果输入$ git remote add origin [email protected]:djqiang(github帐号名)/gitdemo(项目名).git     提示出错信息:fatal: remote origin already exists.    解决办法如下:    1、先输入$ git remote rm origin    2、再输入$ git remot

2015-02-04 13:31:24 772

原创 mongodb在java驱动包下的操作

忙了四五天,终于对mongoDB有了一定的认识和了解。前面几篇博客中,我介绍了在Linux下mongoDB的安装和遇到的问题,以及在Linux下mongoDB的高级查询和高级修改的一些语法规则。本篇博客我将隆重介绍mongoDB在java驱动包下的操作。    MongoDB可能是现今NoSQL数据库中最著名的,但并不意味着MongoDB是完美的,在某些情况下,传统的关系数据库如MySQL和P

2015-02-02 08:31:44 1677

原创 mongoDB的高级查询和高级修改

Mongodb,分布式文档存储数据库,由C++语言编写,旨在为WEB应用提供可扩展的高性能数据存储解决方案。MongoDB是一个高性能,开源,无模式的文档型数据库,是当前NoSql数据库中比较热门的一种。它在许多场景下可用于替代传统的关系型数据库或键/值存储方式。Mongo使用C++开发。    MongoDB是一个基于分布式文件存储的数据库。MongoDB是一个介于关系数据库和非关系数据库之

2015-02-01 13:00:01 1685

原创 mongodb的几种启动方式以及关闭方式

启动Mongodb服务有两种方式,前台启动或者Daemon方式启动,前者启动会需要保持当前Session不能被关闭,后者可以作为系统的fork进程执行,下文中的path是mongodb部署的实际地址。    1. 最简单的启动方式,前台启动,仅指定数据目录,并且使用默认的27107端口,cli下可以直接使用./mongo连上本机的mongodb,一般只用于临时的开发测试。./mongo

2015-02-01 12:40:48 3412

转载 Mongodb启动命令mongod参数说明

Mongodb启动命令mongod参数说明mongod的主要参数有: 基本配置----------------------------------------------------------------------------------quiet# 安静输出--port arg# 指定服务端口号,默认端口27017-

2015-02-01 12:36:24 571

原创 Linux下mongoDB的安装

第一步:下载安装包。下载地址:mongoDB官网 http://fastdl.mongodb.org                 我下载的版本是:mongodb-linux-i686-2.0.2.tgz(建议不要使用过高版本的,因为我试了很多次就是不成功!)    第二步:在linux中解压缩安装程序,通过命令操作:tar -zxvf mongodb-linux-i68

2015-02-01 11:03:42 777

空空如也

空空如也

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

TA关注的人

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