自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Huhui's Blog

在通往架构师的路上 https://github.com/huhuics

  • 博客(93)
  • 资源 (12)
  • 收藏
  • 关注

原创 Hadoop--两个简单的MapReduce程序

本文地址:源代码下载:这周在学习Hadoop编程,以前看过《Hadoop权威指南》这本书,但是看完了HDFS这一章之后,后面的内容就难以再看懂了,说实话,之前一直对MapReduce程序敬而远之,毫不理解这种类型的程序的执行过程。这一周花了些时间看了Hadoop的实战,现在能够看懂简单的MapReduce程序,也能自己动手写几个简单的例子程序。下面是两个简单的MapReduce程序,用到了

2013-08-12 01:05:25 17845 7

原创 Lucene的多域查询、结果中查询、查询结果分页、高亮查询结果和结果评分

1.针对多个域的一次性查询1.1.三种方案        使用lucene构造搜索引擎的时候,如果要针对多个域进行一次性查询,一般来说有三种方法:    第一种实现方法是创建多值的全包含域的文本进行索引,这个方案最简单。但是这个防范有个缺点:你不能直接对每个域的加权进行控制。    第二种方法是使用MultiFieldQueryParser,它是QueryParser的子类,它会在

2013-07-29 15:55:36 7200

原创 基于SQLServer2008的SQL调优

1. 前言SQL是程序设计人员与数据库进行沟通的标准语言,在数据库应用程序中,使用最多的访问数据库的方法就是SQL语言。SQL性能的调整涉及到SQLServer 2008的方方面面,优化器的选择、内存参数的设定、SQL语句的写法等。本文主要从SQL语句的优化方面进行阐述,给出了一些可行的调整数据库应用性能的策略与方法,并以SQLServer 2008为平台对列举规则给予了验证。2. 实

2013-06-26 16:09:32 3172 9

原创 基于Hadoop的地震数据分析统计

源码下载地址:http://download.csdn.net/detail/huhui_bj/5645641opencsv下载地址:http://download.csdn.net/detail/huhui_bj/5645661地震数据下载地址:http://download.csdn.net/detail/huhui_bj/56456851 项目说明本文实现的是用Hadoop的

2013-06-25 15:18:26 7472 14

原创 基于Mahout的电影推荐系统

源代码下载地址:http://download.csdn.net/detail/huhui_bj/5248056QQ:667818771 Mahout介绍Apache Mahout 是 Apache Software Foundation(ASF) 旗下的一个开源项目,提供一些可扩展的机器学习领域经典算法的实现,旨在帮助开发人员更加方便快捷地创建智能应用程序。经典算法包括聚类、分类、协

2013-02-20 23:43:03 50960 135

原创 Java并发编程:Callable、Future

在Java中创建创建线程有两种方式,一种是直接继承自Thread类,另一种是实现Runnbale接口。而这两种方式都有一个缺陷:在线程执行完以后无法直接获取执行结果。如果想要获取执行结果可以通过共享变量或者使用线程通信的方式来达到效果,但是这样比较麻烦。而Callable和Future的作用,就是获得线程执行完以后的结果。1.CallableCallable是一个接口,类似于R

2016-01-26 17:57:18 897

原创 Java动态代理

1. 代理在某些情况下,我们不希望,或者是不能直接访问对象A,而是通过访问一个中介对象B,由B去访问A达成目的,这种方式我们就称为代理。对象A所属类我们称为委托类,也被称为代理类,对象B所属类称为代理类。代理优点有:隐藏委托类的实现解耦,不改变委托类代码情况下做一些额外处理,比如添加初始判断及其他公共操作2. 静态代理代理类在程序运行前已经存在的代理方式称为静态代理

2015-12-21 12:09:44 776

原创 为什么不能自定义java.lang.String

如果直接写一个java.lang.String类,并写一个main方法,即package java.lang;public class String { public static void main(String[] args) { System.out.println("Hello String"); }}运行之后会抛一个异常:错误

2015-12-17 21:02:11 7879 2

原创 Java泛型入门

使用Java泛型,我们可以写一个泛型方法来对一个对象数组排序,然后,调用该泛型来对整形数组、浮点数数组、字符串数组等进行排序。1. 泛型方法下面是定义泛型方法的规则:所有泛型方法什么都有一个类型参数声明部分(由尖括号分隔),该类型参数声明部分在方法返回类型之前。下面是一个泛型方法的实例:public class GenericMethodTest{ //

2015-12-16 21:42:45 781

原创 Java自定义注解入门

1. 元注解 (meta-annotation)在Java 1.5以后,jdk提供了三个标准注解,定义在java.lang中:    @Override: 用于修饰此方法覆盖了父类的方法    @Deprecated: 用于修饰已经过时的方法    @SuppressWarnnings: 用于通知java编译器禁止特定的编译警告而元注解的作用,就是负责注解其他注解的,包括上面三

2015-12-16 20:51:20 849

原创 Java反射学习

1. Class类Java程序中的各个类属于同一类事物,描述这类事物的Java类名就是Class。Class类代表各个类和接口在内存中的字节码,比如ArrayList类的字节码,一个类被类加载器加载到内存中,占用一片存储空间,这个空间里面的内容就是类的字节码,不同的类的字节码是不同的,所以它们在内存中的内容是不同的。如何获得各个字节码对应的实例对象?类名.class,例如,Sy

2015-12-12 15:30:01 1055

原创 模板模式(Template Pattern)

本文章参考:http://meigesir.iteye.com/blog/1506484模板模式(Template Pattern)模板模式又叫模板方式,在一个方法中定义一个算法的骨架,而将一些步骤延迟到子类中。模板方法使得子类可以在不改变算法结构的情况下,重新定义算法中的某些步骤。我们使用冲咖啡喝冲茶叶的过程来讲解模板模式。假设冲咖啡和冲茶叶的流程是这样的:咖啡:1.把水煮沸

2015-11-04 23:32:07 982

原创 Java BIO, NIO, AIO的一些粗浅认识

1. 阻塞与非阻塞"阻塞"与“非阻塞”概念经常和“同步”、“异步”混淆。在Java程序中,很多线程通常处于阻塞(blocking)状态,而同步(并不是指多线程同步的Synchronized)并不是这样,同步通常是指步骤需要一步步来完成,就想常规的代码一条条地执行一样,但异步可以在没有执行完当前这行代码之前,就执行下一行代码,就像很多JS代码、UI控件、后台启动线程等。相对于阻塞来讲,同步的

2015-05-07 17:23:38 1174

原创 关于JVM一些知识的粗浅认识

1. Java是如何跨平台的Java将源代码编译成Class文件,是基于字节码的,字节码是以byte为单位存储的文件,和跨平台结合起来,它就是描述程序要运行的虚指令的集合,而这个虚指令与任何平台无关,Java虚拟机认识它,Java虚拟机将它翻译为对应的OS指令。Java虚拟机会为每个OS平台编写对应的JRE运行时环境,与OS动态链接,将这些虚指令编码翻译为对应操作系统的汇编指令信息,即可在对应

2015-05-06 20:30:36 1069

原创 Hibernate学习笔记(3)

两年前曾经学习过Hibernate,也通过博客将Hibernate的学习过程记录下来了,地址如下:Hibernate学习笔记(1)Hibernate学习笔记(2)最近在复习Hibernate,在重新学习的过程中,有了一些新的体会和收获,现在将其总结成博客,供以后作为参考资料使用。一、导入相应的jar包目前Hibernate更新到了4.x版本,在官网下载后,找到l

2015-04-17 10:54:13 999

原创 关于“==”和“equals()”

问题引入请看下面的代码清单1 public void test1(){ String a = "a" + "b" + 1; String b = "ab1"; System.out.println(a == b); }上述这段代码来源自谢宇编著的书籍《Java特种兵》上册。代码清单1中的输出是true这是个考察Java基本功的问题,类似的问

2015-04-14 17:04:46 1037

原创 Spring集成Mybatis

jar文件下载地址:一、准备jar包【mybatis】mybatis-3.2.0.jarmybatis-spring-1.1.1.jarlog4j-1.2.17.jar【spring】spring-aop-3.2.0.RELEASE.jarspring-beans-3.2.0.RELEASE.jarspring-context-3.2.0.RELEASE

2015-04-08 21:19:08 1131

原创 Mybatis学习笔记

一、数据库字段名与实体类属性名不相同问题1.1 准备数据表和数据CREATE TABLE orders( order_id INT PRIMARY KEY AUTO_INCREMENT, order_no VARCHAR(20), order_price FLOAT);INSERT INTO orders(order_no, order_price) VALUES('aaaa'

2015-04-08 21:08:14 1019

原创 Mybatis入门

一、MyBatis介绍MyBatis是支持普通SQL查询,存储过程和高级映射的优秀持久层框架。MyBatis消除了几乎所有的JDBC代码和参数的手工设置以及对结果集的检索封装。MyBatis可以使用简单的XML或注解用于配置和原始映射,将接口和Java的POJO(Plain Old Java Objects,普通的Java对象)映射成数据库中的记录。二、快速入门2.1 准备

2015-04-08 20:12:10 967

原创 Spring+Spring MVC+JDBCTemplate实现简单的用户管理功能

资源下载:http://download.csdn.net/detail/huhui_bj/85441631. 前言最近一直在学习Spring相关的知识,这篇博客是一个阶段性的自我总结,写给自己以后作为参考用。本文介绍的是使用Spring、Spring MVC和JDBCTemplate来实现一个十分简单的用户管理功能,实现数据的增、删、改、查。工程目录是这样的:在src的con

2015-03-29 15:06:07 4209

原创 Spring学习之JdbcTemplate

一、什么是JDBCTemplateSpring使用模板方式封装jdbc数据库操作固定流程,并提供丰富callback回调接口功能,方便用户自定义加工细节,更好模块化jdbc操作,简化传统的JDBC操作的复杂和繁琐过程。 JDBCTemplate主要提供以下五类方法:(1) execute方法:可以用于执行任何SQL语句,一般用于执行DDL语句;jdbcTemplate.ex

2015-03-25 11:56:51 1939

原创 Spring学习之AOP

一、什么是AOPAOP(Aspect Orient Programming),也就是面向切面编程。可以这样理解,面向对象编程(OOP)是从静态角度考虑程序结构,面向切面编程(AOP)是从动态角度考虑程序运行过程。二、AOP的作用常常通过 AOP 来处理一些具有横切性质的系统性服务,如事物管理、安全检查、缓存、对象池管理等,AOP 已经成为一种非常常用的解决方案。

2015-03-23 11:09:13 1385

原创 Spring学习之IOC

一、IoC(Inversion of Control,控制反转)    我们在开发java程序中会有这样的体会,java程序中的每个业务逻辑至少需要两个或以上的对象来协作完成,通常,每个对象在使用他的合作对象时,自己均要使用像new object()这样的语法来完成合作对象的申请工作。你会发现:对象间的耦合度高了。而IOC的思想是:Spring容器来实现这些相互依赖对象的创建、协调工作。对象只

2015-03-21 15:30:25 1144 2

原创 Maven初探

本文描述了如何使用maven构建一个简单的Hello World项目1.编写POM    Maven项目的核心是pom.xml(Project Object Model),pom定义了项目的基本信息,用于描述项目如何构建,声明项目依赖等等。先为Hello World项目编写一个简单的pom.xml。    首先创建一个hello-world的文件夹,在该目录下新建一个名为p

2015-02-05 17:19:01 1281

原创 Java并发编程:Lock

本文转自:http://www.cnblogs.com/dolphin0520/p/3923167.html    Java中可以使用synchronized关键字来实现线程之间对共享变量的同步访问。从Java 1.5以后,在java.util.concurrent.locks包下提供了另外一种方式来实现同步访问——Lock。一、synchronized的缺陷    如果一个代码块被s

2014-08-28 16:14:58 1178

原创 Java中的volatile关键字

本文内容节选自:Java开发编程:volatile关键字解析

2014-08-27 20:25:27 1020

原创 Java中的String

参考资料:http://www.cnblogs.com/chenssy/p/3695271.htmlhttp://blog.csdn.net/yyaf2013/article/details/12168491首先先来看看下面这段代码的输出结果:public void strTest() { String a = "huhui"; String b = "huhui";

2014-08-25 17:23:23 1129

原创 Java运行时异常和非运行时异常

1.Java异常机制Java把异常当做对象来处理,并定义一个基类java.lang.Throwable作为所有异常的超类。Java中的异常分为两大类:错误Error和异常Exception,Java异常体系结构如下图所示:图片来源:http://blog.csdn.net/wuwenxiang91322/article/details/103463372.Throwab

2014-08-25 11:19:07 63193 3

原创 Java内存模型

1.Java的内存泄漏在Java中,内存泄漏指的是存在具备下面两个特点的对象:①这些对象是可达的,即在有向图中,存在通路可以与其相连;②这些对象是无用的,即程序以后不会再使用这些对象。如果对象满足这两个条件,就可以判定为Java中的内存泄漏,这些对象不会被GC所回收,却占用着内存。对于那些不可达的对象,GC会负责回收。我们可以通过调用System.gc()去访问GC,但是JVM

2014-08-24 14:50:26 1376 1

原创 几个集合类的比较

1.Hashtable和HashMap不同点总结如下① Hashtable是Dictionary的子类,实现了Map接口;HashMap是AbstractMap的子类,是Map接口的一个实现类;② Hashtable中的方法是同步的,大多数方法如put, get都用用synchronized关键字修饰。而HashMap是线程不安全的。在多线程程序中,可以不添加额外操作就可以安全

2014-08-23 21:14:42 1116

原创 面试中的单例模式

最近的两次面试中,都被要求在纸上写代码实现单例(Singleton)模式。下文展示了三种不同的Singleton实现方式:1.不好的解法一:只适用于单线程环境public class Singleton1 { private static Singleton1 instance = null; private Singleton1() { } public stat

2014-08-17 12:11:11 1889

原创 暴力子字符串查找

子字符串查找:给定一段长度为N的文本和一个长度为M的模式字符串,在文本中找到一个和该模式相符的子字符串广泛使用的暴力算法,虽然在最坏情况下的运行时间与M*N成正比,但是在实际中,绝大多数比较在比较第一个字符时就会产生不匹配,它实际运行时间一般与M+N成正比下面是暴力子字符串查找算法的Java实现:/** * 暴力字符串查找,如果找到,返回pat在txt中第一次出现的位置;没有找到则

2014-08-16 16:01:44 1242

原创 Java线程池

本文大部分内容转自http://www.cnblogs.com/yydcdut/p/3890893.html1.Java线程池基本原理线程池基本原理是:系统先启动若干数量的线程,并让这些线程处于睡眠状态,当有新任务时,就会唤醒线程池中的某一个睡眠线程,让它来处理这个任务。当处理完这个任务后,线程又处于睡眠状态。Java 中,线程池的主要组成部分是工作者线程,这种类型的线程独立于它执行的

2014-08-13 17:50:08 1627 1

原创 Java多线程--生产者与消费者问题

说明Java中,线程之间的通信主要是由java.lang.Object类提供的wait、notify和notifyAll这3个方法来完成:①对象的wait方法被调用后,线程进入对象的等待队列中,并释放对象锁,其它线程可以竞争使用此对象锁;sleep方法使得一个线程进入睡眠状态,但是线程所占有的资源并没有释放。②当对象的notify方法被调用,该方法会从对象的等待队列中随机取出一个线

2014-08-13 11:45:18 1196

原创 Java死锁举例

死锁:    在多线程竞争使用共享资源的情况下,就有可能出现死锁的情况。比如,当一个线程等待另一个线程所持有的锁时,那个线程又可能在等待第一个线程所持有的锁。此时,这两个线程会陷入无休止的相互等待状态,这种情况就称为死锁。产生死锁的四个必要条件:1、互斥条件。进程对所分配的资源进行排它性控制,即在一段时间内某资源仅为一进程所占有。2、请求和保持条件。当进程因请求资源而阻

2014-08-13 00:58:46 2515 1

原创 Java反射举例

本文参考:http://www.cnblogs.com/yydcdut/p/3845430.html1.Java反射的基本介绍Java的反射非常强大,传递class, 可以动态的生成该类、取得这个类的所有信息,包括里面的属性、方法以及构造函数等,甚至可以取得其父类或父接口里面的内容。Java 反射机制主要提供了以下功能:在运行时判断任意一个对象所属的类;在运行时构造任意一个

2014-08-12 00:02:10 1529 3

转载 几篇关于架构的博客

注意:本文转自http://www.iteye.com/topic/1134881

2014-07-31 20:24:33 946 1

转载 WIN7系统下修改Jar文件关联的方法

WIN7系统下打开Jar文件时报错,提示"Could not find the main class" 的警告。通过上网搜索找到了一些解决办法,但是那些方法只适用于XP系统或者XP以前的系统,在WIN7系统下完全行不通。下面提供两种解决方法:第一种方法:      通过分析jar文件的运行原理,我们可以用一种替代方法。      步骤一:新建一个文本文档,输入内容"java

2014-06-11 12:48:59 1132

转载 localhost、127.0.0.1和本机IP区别

localhost 不联网 不使用网卡,不受防火墙和网卡限制 本机访问 127.0.0.1 不联网 网卡传输,受防火墙和网卡限制 本机访问 本机IP 联网 网卡传输 ,受防火墙和网卡限制 本机或外部访问

2014-05-20 09:16:45 1901

转载 Java 8 简明教程

Java 8已于2014年3月18日正式发布了,新版本带来了诸多改进,包括Lambda表达式、Streams、日期时间API等等。本文就带你领略Java 8的全新特性。 本文由 ImportNew网站的黄小非 翻译自 winterbe。原文作者Benjamin是Pondus软件公司的总工程师,原文内容如下。 引用Java并没有没落,人们很快就会发现这一点

2014-03-28 20:06:14 1111 1

Spring集成Mybatis所需jar包

Spring集成Mybatis所需jar包

2015-04-08

mybatis-3.1.1

mybatis-3.1.1的jar包以文档

2015-04-08

Spring+SpringMVC+JDBCTemplate简单用户管理功能

工程实现的是Spring+SpringMVC+JDBCTemplate简单用户管理功能,界面十分粗糙,只是演示功能。

2015-03-29

Spring-3.2.4-all.zip

包含Spring-3.2.4的所有jar文件和源代码

2015-03-29

c3p0-0.9.5

这个是 c3p0,版本是0.9.5,用于Java工程开发,属于开源程序

2014-02-21

hadoop-1.0.4.tar.gz

hadoop-1.0.4.tar.gz 官方版本

2013-08-28

MapReduce的两个简单例子

对应的博客地址:http://blog.csdn.net/huhui_cs/article/details/9907951

2013-08-12

全国地震CSV数据

这是一个csv格式的数据,里面存的是全国2013年1月到6月的地震数据。

2013-06-25

opencsv-2.3.jar

解析csv文件的开源工具,十分方便好用。

2013-06-25

基于Hadoop的地震数据分析统计

这是一个Eclipse中复制出来的MapReduce工程文件,如果你下载了源代码,需要部署在Linux环境下的Eclipse中,并且,这个Eclipse必须已经安装了hadoop开发插件,能够做Hadoop开发。不然,会提示找不到hadoop开发包。

2013-06-25

JavaScript读取xml

利用Javascript读取XML文件的示例,直接打开index.html文件即可看到效果

2013-06-13

基于Mahout的电影推荐系统

博文地址 http://blog.csdn.net/huhui_bj/article/details/8596388 这是这篇博文的工程代码,是MyEclipse的工程文件。下载后解压缩,可以直接导入MyEclipse中运行。 由于原工程开发的时候是在MyEclipse中引用mahout的jar包,所以这个压缩文件并没有相关的jar文件,故运行此项目之前需要做的事请,是需要导入mahout的开发包。

2013-04-11

空空如也

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

TA关注的人

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