自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

雨落千木的时节

我是一个热爱编程的菜鸟!

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

原创 java对象的引用

java 1.2后,java对引用的概念进行了扩充,分为:强引用、软引用、弱引用、虚引用。 强引用:就是在程序代码之中普遍存在的,类似Object obj = new Object();只要强引用还在,垃圾收集器永远不会回收掉被引用的对象。 软引用:用来描述一些还有用,但是并非必须的对象。对于软引用关联着的对象,在系统  将要  发生内存溢出异常之前,将会把这些对象列进回收范围之...

2017-01-22 17:59:56 211

原创 标记java对象是否存活

在java垃圾收集器对堆内存进行回收之前,需要判断哪些对象还存活着,哪些对象已经死去。 一、引用计数算法        在对象中添加一个引用计数器,每当有一个地方引用它时,计数器值就加1,当引用失效时,计数器值就减1,任何时刻计数器值都为0的对象就是不可能再被使用的对象,该对象会被GC收集。缺点:java中没有使用引用计数算法,原因是对象之间的循环引用很难解决。 二、根搜...

2017-01-22 11:15:14 227

JPA主键策略

      在讲主键策略之前首先简单介绍一下JPA。      JPA是一种java规范,而不是一种框架,而是一个ORM规范。JPA可以支持多种ORM框架,例如:hibernate,OpenJPA,TopLink,EclipseJPA等。JPA只是提供了统一的规范接口,最终实现由各个数据库厂商来实现。这样设计的目的是为了解决项目中切换ORM框架,数据库连接等所造成的成本。     ...

2016-12-14 13:44:16 301

原创 Strom学习(二)----Storm计算模型

Storm计算模型是一个DAG的计算模型,而且Storm是把DAG和流式计算结合起来。在Storm的DAG模型里面,最关键的点是Topology,Topology是Storm计算模型DAG的一个体现,也是Storm里面DAG的实现。DAG是一个有向无环图结构。 一个Topology和一个job相似,是一个app的打包运行实例,Topology会被提交到Storm平台上去运行,Stor...

2016-08-28 22:21:56 255

原创 Strom学习(一)----简介

什么是实时流式计算:实时流式计算是实时计算和流式计算的叠加。    实时计算:响应时间受到实时约束的计算,时间约束很短,以秒,毫秒为单位    流式计算:在不断产生的数据流上进行的计算                      数据流由基本数据单元组成                      数据流不断产生,没有尽头,计算结果也不断产生/更新实时流式计算:在不断产生的...

2016-08-28 09:11:37 140

Oracle创建表空间

//创建表空间create tablespace 表空间名loggingdatafile 'D:\oracle\product\10.2.0\oradata\orcl\表空间名.dbf'size 32mautoextend onnext 32m maxsize 2048extent management local; //创建用户并指定表空间create ...

2016-06-26 15:52:27 114

原创 排序算法java实现堆排序

 public class HeapSort {//堆排序://基本思想://首先要了解堆这种数据结构://堆是实质上是一个满足如下条件的完全二叉树:树中任意非叶节点的关键字均不大于(或不小于)其左右孩子节点的关键字,即://给定关键字数列:T1,T2,...,Tn,//当且仅当数列满足如下性质:(1)Ti<=T2i且Ti<=T2i+1或者(2)Ti&g...

2016-02-24 15:10:49 125

原创 对String str=“234561121”排序

 import java.util.ArrayList;import java.util.Collections;import java.util.Comparator;import java.util.List; public class SortTest {public static void main(String[] args) {String str ...

2016-02-24 15:10:34 166

html5中的自适应字体

在进行移动端页面的开发的时候,屏幕适配是很大的难题。在某些时候也会遇到字体的适配的问题。要根据屏幕的大小来自动显示不同大小的字体,这样会有如下几种解决方案:方案一:使用媒体查询来控制,针对不同的情况写不同的css,这样做的缺点就是要写很多的css,不好维护方案二:使用viewport来实现,css3提供了vw,vh,vim等与viewport相关的单位。1vw = 1% of v...

2016-02-24 15:10:16 931

原创 MongoDB与mapreduce

Mongodb可以实现MapReduce,用于完成count,distinct,group by等聚合函数的功能,此外还有其他功能。MapReduce开始是将操作映射到mongodb集合中的每一个文档,这个操作要么什么都不做,要么产生一些键和N个值,然后按照键分组,将相同键对应值的值组成列表,放到对应的键的值中。最后进行化简,把键对应的列表中的值化简成一个单一的值。这个值被返回,接着进行洗...

2016-02-19 08:20:05 172

MongoDB学习总结三

MogonDB的java驱动示例: public class DataBase { public static void main(String[] args) throws Exception { try{//1.建立一个mongo的数据库连接对象Mongo mongo = new Mongo("127.0.0.1:27017");//System.out....

2016-02-16 19:09:23 180

hive分区表

内部表和外部表内部表:create table    ,copy数据到warehouse,删除表时数据也会删除外部表:create external table ,不copy数据到warehouse,删除表时数据不会删除 表的分区分区的好处:如果不建立分区的话,则会全表扫描数据通过目录划分分区,分区字段是特殊字段目录结构:/pub/{dt}/{customer_id}...

2016-02-16 10:21:11 146

hive基础

Hive安装:JDK1.6以上Hadoop要启动Hive下载:http://apache.cs.utah.edu/hive/hive-0.11.0/HIve解压:将hive-0.11.0.tar.gz解压到/home/hive路径下tar -zxvf hive-0.11.0.tar.gz产生hive的安装目录/home/hive/hive-0.11.0配置环境变量...

2016-02-16 10:17:42 464

原创 git命令参考手册(转)

git init                                                  # 初始化本地git仓库(创建新仓库)git config --global user.name "xxx"                       # 配置用户名git config --global user.email "xxx@xxx.com"         ...

2016-02-16 09:18:02 113

redis的一些常见配置

redis.conf文件中的配置daemonize:如果需要在后台运行,则把该项改为yespidfile:配置多个pid的地址,默认在/var/run/redis.pid路径下bind:绑定ip,设置后只接受来自该ip的请求port:监听端口,默认为6379timeout:设置客户端连接时的超时时间,单位为秒loglevel:分为4级,debug、verbose、noti...

2016-02-16 09:04:28 106

排序算法java实现归并排序

 public class MergeSort {//归并排序//基本思想:归并排序是建立在归并操作上的一种有效的排序算法。该算法是采用分治法的一个非常典型的应用。//首先考虑下如何将两个有序数列合并://比较两个数列的第一个数,谁小就先去谁,取了后就在对应数列中删除这个数,然后再进行比较,//如果数列为空,那么将另一个数列的数据依次取出即可。 //解决了两个数...

2016-02-02 11:24:58 107

排序算法java实现快速排序

 public class QuickSort {//快速排序://基本思想:(分治)//先从数组中取出一个数作为key值;//将比这个数小的数全部放在它的左边,//大于或等于它的数全部放在它的右边,//对左右两个小数组重复上述步骤,直到各个区间只有1个数 //辅助理解:(挖坑填数)//初始时:i=0;j=8;key=6//由于已经将a[0]中的数保存...

2016-02-02 10:45:22 185

jqueryvalidate表单验证的一个简单例子

自己封装的一个表单验证的小例子:function validateForm() { var validator = $("#myForm").validate({onsubmit:true,// 是否在提交是验证submitHandler:function(form) {    ajaxSubmit();    },   rules: {       u...

2016-02-02 10:20:03 296

原创 排序算法java实现希尔排序

 public class ShellSort {//希尔排序://基本思想://在要排序的一组数中,根据某一增量分为若干子序列,并对子序列分别进行插入排序。//然后逐渐将增量减小,重复上述过程。//直至增量为1,此时数据序列基本有序,最后进行插入排序。//过程 //平均时间复杂度:O(n^1.5) public static void main(S...

2016-02-02 09:04:40 145

原创 排序算法java实现插入排序

 public class InsertSort {//插入排序//基本思想://在要排序的一组数中,假定前n-1个数已经排好序,//现在将第n个数插到前面的有序数列中,使得这n个数也是排好序的。//如此反复循环,直到全部排好序。过程:  //平均时间复杂度:O(n^2)public static void main(String[] args) {...

2016-02-02 09:04:31 165

排序算法java实现选择排序

 public class SelectionSort {//选择排序//基本思想: //在长度为N的无序数组中,第一次遍历n-1个数,找到最小的数值与第一个元素交换//第二次遍历n-2个数,找到最小的数值与第二个元素交换,//...//第n-1次遍历,找到最小的数值与第n-1个元素交换,排序完成。 //平均时间复杂度为:O(n^2)public s...

2016-02-01 17:17:10 143

原创 排序算法java实现冒泡排序

 public class BubbleSort {//冒泡排序//基本思想:两个数比较大小,较大的数下沉,较小的数冒起来//过程:1.比较相邻的两个数,如果第二个数小就交换位置//2.从后向前两两比较,一直到比较最前面的两个数据。最终最小数被交换到起始的位置,//这样第一个最小数的位置就排好了//继续重复上述过程,依次将第2,3,...n-1个最小数排好位置//...

2016-02-01 17:16:20 116

原创 在java中使用协程

 1. 背景知识现在的操作系统都是支持多任务的,多任务可通过多进程或多线程的方式去实现,进程和线程的对比就不在这里说了,在多任务的调度上操作系统采取抢占式和协作式两种方式,抢占式是指操作系统给每个任务一定的执行时间片,在到达这个时间片后如任务仍然未释放对CPU的占用,那么操作系统将强制释放,这是目前多数操作系统采取的方式;协作式是指操作系统按照任务的顺序来分配CPU,每个任务执行过程中...

2016-02-01 15:18:00 499

原创 MongoDB学习总结二

MongoDB的一些操作:创建数据库:use test注意此时数据库并没有创建,只是在mongo的预处理缓存中存在,只有为mongo加入相应的list,才真正创建。如果什么都不干就离开的话,这个空数据库就会被删除。 show dbs  查看所有的集合show collections    查看集合中所有的文档db.help()   查看帮助db.students...

2016-02-01 15:13:05 233

MongoDB中的_id和ObjectId

MongoDB中存储的文档必须要有一个_id键,这个键的值可以是任何类型的,默认为ObjectId。在每个文档里面,_id值是唯一的,这样可以确保在一个集合里每个文档可以被唯一标识。如果是两个集合的话,在不同的集合里文档的_id是可以相同的。 MongoDB为什么要使用ObjectId,而不使用自动增加的主键等其他的常规的方式?MongoDB从一开始就设计用来做分布式数据库,处理...

2016-02-01 12:00:38 568

原创 事务相关的知识

事务的特性:原子性:事务是不可分割的最小单元,事务里的操作要么都做要么都不做隔离性:在并发程序中,并发事务之间互不影响,在对一个事务的操作不会对其他事务产生影响,事务的隔离性需要事务的隔离级别来完成。一致性:在事务执行前后数据库的数据都处于正确的状态,持久性:事务一旦执行成功,那么对数据库数据的改变是永久的,不会因为因为断点或者系统故障而发生数据丢失。 在实际项目开发中...

2016-01-28 23:38:22 125

MongoDB学习总结

   MongoDB是一种nosql数据库,其与关系型数据库有很大的不同   关系型数据库中的表在MongoDB中被称为集合,关系型数据库中每行记录在MongoDB中被称为文档,关系型数据库中的表的字段在MongoDB中被称为key。MongoDB中没有主外建的概念。基本概念:1.文档   文档是MongoDB的最基本的单元,也是MongoDB的核心概念。   文档的键值对...

2016-01-27 14:41:22 151

git常见命令

git的配置git config --global user.name "xxx@xx.com"git config --global user.email "xxx@xx.com" 从github上克隆git项目git clone git@xx.xx.xx.xx:yuluoqianmu/test.gitcd test 添加README.md文件并推到githu...

2015-12-18 17:09:43 101

原创 CurrentHashMap原理

ConcurrentHashMap内部数据结构是hashTable,但是与hashTable不同的是CurrentHashMap使用了锁分离技术,即:使用多个不同的锁来控制对HashTable的不同部分进行修改,其内部的不同部分使用Segment来表示。这样一个大的HashTable就会被分为多个小的HahTable,每个锁作用在不同的小HashTable上。当多个操作发生在不同的Segment...

2015-12-17 16:22:37 1164

Shell中$$,$#,$?等分别代表什么意思

$0 这个程式的执行名字$n 这个程式的第n个参数值,n=1..9$* 这个程式的所有参数,此选项参数可超过9个。$# 这个程式的参数个数$$ 这个程式的PID(脚本运行的当前进程ID号)$! 执行上一个背景指令的PID(后台运行的最后一个进程的进程ID号)$? 执行上一个指令的返回值 (显示最后命令的退出状态。0表示没有错误,其他任何值表明有错误)$- 显示shell...

2015-12-14 11:49:58 1058

GPFS安装搭建(二)

gpfs集群配置: 集群搭建的准备:为了方便我们进行操作,首先设置ssh免密码登录。 在192.168.1.17机器上连接192.168.1.140机器: ssh-kengen scp .ssh/id_rsa.pub root@192.168.1.140:/home/id_rsa.pub cat /home/id_ rsa.pub >> ~.s...

2015-12-14 01:01:18 854

GPFS安装搭建(一)

安装gpfs,需要先安装的软件: kshell gcc g++ kernel-devel rpm-build   首先检查软件是否安装: which ksh、 which gcc或者gcc -v、 which g++或者 g++ --version、 rpm -q kernel-devel、 whic...

2015-12-14 00:50:20 973

文件写入HDFS的流程

假设HDFS客户端为node11,用户A想要将文件apache.log写到HDFS上,该文件大小为100MB,假设用户配置的文件block大小为64MB,请结合你的理解,描述该文件写入HDFS的整个流程(请用步骤1,步骤2,……,描述)使用HDFS提供的客户端(client),向远程的namenode发起RPC请求;namenode会检查要创建的文件apache.log是否...

2015-12-14 00:34:12 240

原创 文件写入HDFS的整个流程

假设HDFS客户端为node11,用户A想要将文件apache.log写到HDFS上,该文件大小为100MB,假设用户配置的文件block大小为64MB,请结合你的理解,描述该文件写入HDFS的整个流程(请用步骤1,步骤2,……,描述)使用HDFS提供的客户端(client),向远程的namenode发起RPC请求;namenode会检查要创建的文件apache.log是否已经存在,创

2015-12-14 00:30:27 1583

原创 原生javascript中的一些方法

1,innerHTML属性,替换掉元素原来的所有子节点2,outerHTML属性,替换包括当前元素本身的所有元素3,insertAdjacentHTML()方法,接收两个参数,第一个参数是插入的位置,第二个参数是插入的html元素第一个参数必须是以下各个值:beforebegin:在当前元素之前插入紧邻的同辈元素beforeend:在当前元素中插入第一个子元素即在第一个子元素之

2015-09-25 09:21:56 582

原创 美团前端面试题及答案

1.如何去除浮动?方法一:使用一个空的div方法二:overflow:hidden方法三: display:inline-block;方法四: position:absolute;方法五:float:left;方法六: zoom:1方法七:after伪类+content方式2.jsonp原理和缺点:利用在页面中创建节点的方法向不同域提交HTTP请求,代码如下:v

2015-09-01 00:45:10 6556

原创 负载均衡

负载均衡包括两方面的含义:1.将单一的重负载分担到多个网络节点上做并行处理,每个节点处理结束后将结果汇总返回给用户;2.将大量的前端并发访问或数据流量分担到多个后端网络节点上分别处理,这样可以有效减少前端用户等待相应的时间。 Nginx服务器的负载均衡是指对大量前端访问和流量分流,以保证前端用户的访问效率。 Nginx服务器的负载均衡策略分为两大类:内置策略和扩展策略。 内置策略包括:轮询、加

2015-06-29 10:07:36 906

原创 js对象的继承

function Person(name,sex){ this.name=name; this.sex=sex; } Person.prototype={ getName:function(){ return this.name; }, getSex:function(){ return this.sex;

2015-06-28 19:34:20 459

原创 js高级

1.js中的对象 在javascript中,一个函数也是一个对象,js中的超级对象是Function,例如:function aa(){alert(aa.constructor);} 再例如:aa.b=1; 因此,在js中可以动态给对象添加属性只要声明一个函数,它的默认对象就是window function bb(){} aa.d=bb;//bb是一个对象,讲bb对象赋值给aa对象的一个属

2015-06-28 19:21:58 366

转载 Jsp四大作用域

一、ServletContext      1、生命周期:当Web应用被加载进容器时创建代表整个web应用的ServletContext对象,当服务器关闭或Web应用被移除时,ServletContext对象跟着销毁。      2、作用范围:整个Web应用。    3、作用:         a)在不同Servlet 之间转发            thi

2015-05-16 18:04:12 1877

空空如也

空空如也

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

TA关注的人

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