自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

jofjhh

java

  • 博客(28)
  • 收藏
  • 关注

转载 深入浅出——基于密度的聚类方法

原文出自:https://blog.csdn.net/u013709270/article/details/779268131、前言我们生活在数据大爆炸时代,每时每刻都在产生海量的数据如视频,文本,图像和博客等。由于数据的类型和大小已经超出了人们传统手工处理的能力范围,聚类,作为一种最常见的无监督学习技术,可以帮助人们给数据自动打标签,已经获得了广泛应用。聚类的目的就是把不同的数据点按照它们的相似...

2018-07-05 11:07:49 7186

转载 Density Peak

原文出自:https://blog.csdn.net/LilyXFan/article/details/70598509?locationNum=1&fps=1参考文献:2014年发表在Nature上的文章Clustering by fast search and find of density peaks核心思想:密度比邻居节点高、与比其密度大的点的距离相对大的点是聚类中心。1. 两个定...

2018-06-29 17:56:58 1244

原创 Hadoop好友推荐系统-项目架构搭建和用户登陆的实现

原文出自:https://blog.csdn.net/xiaokang123456kao/article/details/74567932项目总目录:基于Hadoop的好友推荐系统项目综述一、创建Maven项目创建一个Maven web项目(即war项目),引入依赖如下:<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi=...

2018-06-12 10:47:06 767

原创 基于Hadoop的好友推荐系统(Friend_Find)项目

一好友推荐系统项目概述1、项目介绍该系统利用基于密度的新型聚类算法,对给定用户基于好友推荐。本系统的开发IDE采用myeclipse2014,使用maven构建项目,数据库选用Mysql,后台技术采用SpringMVC+Mybatis+Spring的架构,前端使用Easyui+Ajax的技术实现前后端的数据交互,算法的主要计算任务用Hadoop Mapreduce来完成。综合来说,本系统面临的主要...

2018-06-12 10:05:56 4674

原创 Maven基础知识

一.Maven入门1.1.maven定义:       maven是跨平台的项目管理工具,主要服务于基于java平台的项目构建,依赖管理和项目信息管理;1.2.maven项目构建:       项目构建过程包括【清理项目】→【编译项目】→【测试项目】→【生成测试报告】→【打包项目】→【部署项目】这几个步骤,这六个步骤就是一个项目的完整构建过程。理想的项目构建是高度自动化,跨平台,可重用的组件,标准...

2018-05-28 21:24:55 141

转载 JavaEE大型分布式电商项目 上海淘淘商城

原文出自:https://blog.csdn.net/hjsw1/article/details/76615681淘淘商城是一个综合性的B2C平台,类似与京东、天猫商城,其打造的是商业模式为“社区+电子商务”, 用户不只是在社区中有自己的圈子,还可以将电商加入到社区中,整个电商网站实现的功能非常之多,采用分布式的系统架构设计,包括后台管理、前台系统、购物车系统、订单系统、单点登录系统、搜索系统、会...

2018-05-03 16:34:11 2176 1

原创 Java之NIO解析

NIO初识:       Java NIO即Java Non-blocking IO(Java非阻塞I/O),因为是在Jdk1.4之后增加的一套新的操作I/O工具包,所以一般会被叫做Java New IO。NIO是通过Reactor模式的事件驱动机制来达到Non blocking的,那么什么是Reactor模式呢?Reactor翻译成中文是“反应器”,就是我们将事件注册到Reactor中,当有相应...

2018-05-01 16:59:59 170

原创 java中的线程池

线程池的作用:降低资源消耗速度;重复利用已创建的线程降低线程创建和销毁造成的消耗。提高响应速度;任务不需要等待线程创建就能立即执行;提高线程的可管理性;线程池实现原理:线程池判断核心线程池里的线程是否都在执行任务。如果不是,则创建一个新的工作线程来执行任务。如果核心线程池里的线程都在执行任务,则进入下个流程;线程池判断工作队列是否满。如果工作队列没有满,则将新提交的任务存储在这个工作队列里。如果满...

2018-04-30 11:17:42 100

转载 ConcurrentHashMap源码分析

原文出自:https://www.cnblogs.com/chengxiao/p/6842045.htmlConcurrentHashMap实现原理及源码分析  ConcurrentHashMap是Java并发包中提供的一个线程安全且高效的HashMap实现(若对HashMap的实现原理还不甚了解,可参考我的另一篇文章HashMap实现原理及源码分析),ConcurrentHashMap在并发编程...

2018-04-27 16:36:22 106

转载 ReentrantReadWriteLock源码分析

概述  ReentrantReadWriteLock是Lock的另一种实现方式,我们已经知道了ReentrantLock是一个排他锁,同一时间只允许一个线程访问,而ReentrantReadWriteLock允许多个读线程同时访问,但不允许写线程和读线程、写线程和写线程同时访问。相对于排他锁,提高了并发性。在实际应用中,大部分情况下对共享数据(如缓存)的访问都是读操作远多于写操作,这时Reentr...

2018-04-27 15:06:47 106

转载 AbstractQueuedSynchronized源码解析

概要     队列同步器 AbstractQueuedSynchronizer(以下简称 AQS),是用来构建锁或者其他同步组件的基础框架。它使用一个 int 成员变量来表示同步状态,通过 CAS 操作对同步状态进行修改,确保状态的改变是安全的。通过内置的 FIFO (First In First Out)队列来完成资源获取线程的排队工作。AQS和Synchronized的比较      AQS ...

2018-04-26 20:10:15 1082

原创 Java并发机制的底层实现原理

并发编程的挑战上下文切换;死锁问题:避免一个线程同时获取多个锁;避免一个线程在锁内同时占用多个资源,尽量保证每个锁只占用一个资源;尝试使用定时锁;资源限制:并发编程,执行速度受限于硬件资源和软件资源;并发编程的底层原理volatile的应用(轻量级的synchronized)定义:保证共享变量的“可见性”,当一个线程修改一个变量时,另外一个线程能读到这个修改的值;volatile的两条实现原则:L...

2018-04-26 10:12:37 131

原创 Java内存模型(并发)

一.Java内存模型的基础并发编程模型的两个关键问题:线程之间如何通信:线程之间以何种机制交换信息;线程之间如何同步:控制不同线程间操作发生相对顺序的机制;线程之间的通信机制:共享内存:线程之间共享程序的公共状态,通过写读内存中的公共状态进行隐式通信(显式同步);消息传递:线程之间没有公共状态,线程之间通过发送消息显式进行通信(隐式同步);Java内存模型的抽象结构:       JMM(java...

2018-04-23 11:39:08 201

原创 Java并发编程基础

什么是线程:       操作系统运算调度的最小单元,轻量级的进程,一个线程包含独立的计数器、栈、局部变量等属性,并且线程间可以共享堆内存。所谓的多线程程序,也就是处理器通过上下文切换,给不同线程分配时间片,让人感觉线程是同时执行的。为什么要使用多线程:充分利用多核处理器        一个进程下会有多个线程,一个线程的运行会占用一个处理器核心。现在多核cpu已经司空见惯,如果我们编程还是单线程...

2018-04-23 11:06:45 144

原创 大型网站架构演化

        原文来自https://www.cnblogs.com/netoxi/p/7258895.html        如何打造一个高可用、高性能、易扩展、可伸缩且安全的网站?如何让网站应用所需灵活变动,即时是山寨他人的产品,也可以山寨的更高、更快、更强,一年时间用户数从零过亿呢?对此我总结一下:1.1  大型网站软件系统的特点高并发,大流量;高可用:系统7*24小时不间断服务;海量数据...

2018-04-19 16:24:50 275

转载 Lucene详解

一.lucene原理    Lucene 是apache软件基金会一个开放源代码的全文检索引擎工具包,是一个全文检索引擎的架构,提供了完整的查询引擎和索引引擎,部分文本分析引擎。它不是一个完整的搜索应用程序,而是为你的应用程序提供索引和搜索功能。lucene 能够为文本类型的数据建立索引,所以你只要能把你要索引的数据格式转化的文本的,Lucene 就能对你的文档进行索引和搜索。比如你要对一些

2018-01-06 15:22:07 14417

原创 垃圾收集器与内存分配策略

内存分配和内存回收

2017-12-24 10:38:08 175

原创 Java内存区域与内存溢出异常

java内存分配,内存溢出

2017-12-23 15:54:16 189

原创 走近Java

介绍了Java技术体系的过去、现在和未来的趋势

2017-12-23 11:20:58 239

转载 ubuntu -- Target filesystem doesn't have /sbin/init(Slax解决)

http://blog.csdn.net/wu20093346/article/details/40353667

2017-10-28 10:38:08 1238

转载 hadoop详解

大数据

2017-10-26 09:29:50 618

转载 mysql索引总结

原文出处:http://blog.csdn.net/xluren/article/details/32746183 关于MySQL索引的好处,如果正确合理设计并且使用索引的MySQL是一辆兰博基尼的话,那么没有设计和使用索引的MySQL就是一个人力三轮车。对于没有索引的表,单表查询可能几十万数据就是瓶颈,而通常大型网站单日就可能会产生几十万甚至几百万的数据,没有索引查询会变的非

2017-09-25 10:49:38 318

原创 mysql5.5初识和基本安装配置

一.初识MySQL   MySQL 识一个开放源代码的数据库管理系统(DBMS)。数据库由一批数据构成有序的集合,这些数据被存在结构和的数据表里,数据表之间相互关联,反映了客观事物间的本质联系。数据库系统提空对数据的安全控制和完整性控制。   数据库的发展阶段:人工管理阶段,文件系统阶段,数据库系统阶段,高级数据库阶段。数据库种类:层次式数据库,网络式数据库,关系式数据库。    数据

2017-09-23 11:06:08 811

转载 java构建器模式

原文出自:http://www.cnblogs.com/parryyang/p/5696916.html  静态工厂和构造器有个共同的局限性:它们都不能很好地扩展到大量的可选参数。假如我们的一个实体类有很多的属性值,但是这些属性值又是可选的。如果我们遇到这样的是类,如何设计出方便的实体类呢?通常解决办法一: 重叠构造器public class User { p

2017-09-19 15:51:27 407

转载 JVM内存管理机制

转载:http://www.cnblogs.com/newyunhe/articles/5001056.html借鉴:http://blog.csdn.net/suifeng3051/article/details/48292193一、概述         Java GC(Garbage Collection,垃圾收集,垃圾回收)机制,是Java与C++/C的主要区别之一,作为Ja

2017-09-16 09:56:29 173

转载 classloader工作机制

转载别人一篇好的文章:http://www.cnblogs.com/xujian2014/p/5551153.html一、ClassLoader概念   ClassLoader是用来动态的加载class文件到虚拟机中,并转换成java.lang.class类的一个实例,每个这样的实例用来表示一个java类,我们可以根据Class的实例得到该类的信息,并通过实例的newInstanc

2017-09-14 14:53:27 221

转载 Java设计模式之访问者模式

一·访问者模式         访问者模式表示一个作用于某对象结构中的各元素的操作,它使你可以在不改变各元素类的前提下定义作用于这些元素的新操作。从定义可以看出结构对象是使用访问者模式的必备条件,而且这个结构对象必须存在遍历自身各个对象的方法,类似于Java中的Collection。     访问者模式的目的是要把处理从数据结构中分离出来,如果系统有比较稳定的数据结构,又有易于变化

2017-09-14 09:46:02 188

转载 javac编译原理

Javac 是一种编译器,能将一种语言规范转化为另外一种语言规范,    Java之所以能实现跨平台,主要得益于JVM(Java Virtual Machine)的强大。JVM为什么能实现让Java代码可以跨平台呢?那就要从Java程序的整个编译、运行的过程说起。       我们写的Java程序是遵循着Java的语言规范,是面向开发者能读懂的语言。但机器不是人,它不能懂“System

2017-09-13 21:04:26 289

空空如也

空空如也

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

TA关注的人

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