- 博客(25)
- 资源 (1)
- 收藏
- 关注
转载 mysql备份恢复
转自:http://blog.csdn.net/yangzhawen/article/details/7514616记录一下---------------------------------------------1.准备工作-----------------------------------------------查看当前mysql服务器使用的存储引擎#
2015-06-10 13:39:52 378
转载 lucene 建立CRUD操作
lucene 建立CRUD操作IndexSearcher indexSearcher = new IndexSearcher(LuceneUtils.getDirectory()); // 指定所用的索引库这句会引发线程安全问题,在全剧终 IndexSearcher只能有一个对象才可以,所以在ArticleDocumentUtils中保存一个 并且引用它。indexSearcher为了
2015-06-06 16:03:12 364
转载 solr手册
Solr部署及开发 一、部署 1 环境要求 JDK 1.6及以上版本,Tomcat 6及以上,Solr发布版本4.X。如果使用较低版本,请查看Solr版本支持的JDK版本。 2 安装步骤 首先安装JDK 1.7和Tomcat 7,配置好环境变量,并下载最新版Solr,目前版本为4.6.0。如有必要可手动修改Tomcat端口号。为了支持中文,需要修改tomcat中conf目录下的
2015-06-06 14:41:35 440
转载 Lucene的索引文件格式
Lucene的索引里面存了些什么,如何存放的,也即Lucene的索引文件格式,是读懂Lucene源代码的一把钥匙。当我们真正进入到Lucene源代码之中的时候,我们会发现:Lucene的索引过程,就是按照全文检索的基本过程,将倒排表写成此文件格式的过程。Lucene的搜索过程,就是按照此文件格式将索引进去的信息读出来,然后计算每篇文档打分(score)的过程。本文详细解读了
2015-06-04 22:30:51 702
转载 [Java教程]从HDFS下载文件到本地
String file="hdfs://localhost:9000/user/Administrator/fooo/j-spatial.zip";//hdfs文件 地址 Configuration config=new Configuration(); FileSystem fs=FileSystem.get(URI.create(file),config);//构建FileSyst
2015-03-24 11:36:13 1215
转载 当一个线程进入一个对象的一个synchronized方法后,其他线程是否可以进此对象的其他方法?
如果其他方法前加了synchronized关键字,就不能,如果没加synchronized,则能够进去。如果这个方法内部调用了wait(),则可以进入其他加synchronized的方法。如果其他方法加了synchronized关键字,并且没有调用wai方法,则不能。synchronized关键字有两种用法,一种是只用于方法的定义中,另外一种是synchronized块,我们不仅可以使
2015-03-16 22:45:33 7121 1
转载 多线程有几种实现方法?同步有几种实现方法?
多线程有两种实现方法:继承Thread类和实现runnable接口。同步实现由两种:1)synchronized.2)wait()和notify.wait():使线程处于等待状态,并释放所有对象的锁。sleep():Thread类的静态方法,使一个正在运行的线程处于睡眠状态,调用此方法要捕获interruptedException.notify():唤醒一个处于等待状态的线程,并不能确切的确定唤醒
2015-03-16 21:58:54 1609
转载 同步和异步有什么不同?
数据在线程间共享时,必须进行同步存取。例如正在写的数据可能被另外一个线程读到,或者正在读的数据已经被另外的线程写过了,那么这些数据就是共享数据。当程序在一个应用对象上调用了一个花费时间很长时间来执行的方法,并不希望让程序等待方法返回时,就应该用异步编程。异步编程更有效率。
2015-03-16 21:53:17 349
转载 sleep()和wait()的区别?
sleep方法是Thread类的静态方法,导致此线程暂停执行指定时间,让出cpu给其他线程,但是监控状态依然保持,当指定的时间到了时,自动恢复,调用sleep()时,对象不会释放锁。wait方法是Object类的方法,对此对象调用wai方法,导致此线程放弃此对象锁,进入等待此对象的等待锁定池,只有对对象发出notify方法或notifyAll后本线程进入对象锁定池准备获取对象锁进入运行状态。
2015-03-15 22:07:31 355
原创 heap与stack有什么区别?
在jvm中功能:heap在jvm中充当数据区作用,stack在jvm中为内存指令区。heap保存对象实例, 实际是保存对象实例的属性值、属性的类型和对象本身的类型标记,但并不保存对象的方法,方法是指令保存在stack中。stack中存放着基本数据类型(byte,int,short,char,long,float,double,boolean)和方法内部的局部变量。,对象实例在heap中分配好以后,
2015-03-13 23:25:43 423
转载 描述一下JVM加载class文件的原理机制
JVM的装载是由ClassLoader和它的子类来实现的,java ClassLoader是一个重要的java运行时的系统组件。它负责运行时查找和装入类文件的类。
2015-03-13 23:04:06 590
原创 什么是java序列化?如何实现java序列化?
java序列化就是处理对象流机制,所谓对象流就是将对象流化,可以对流化的对象进行读写,也可以将流化后的后的对象传输于网络之间。序列化的实现:将需要序列化的对象实现serializable接口,然后使用一个输出流(如FileOutputStream)来构建一个ObjectOutputStream(对象流)对象,然后使用ObjectOutputStream对象的WriteObject(Object o
2015-03-13 22:02:11 397
转载 每日一算法--快速排序
快速排序的效率为:O(N*logN)效率高。快速排序是一种划分交换排序。它采用一种分治的策略。基本思想:从数列中找出一个基数。分区过程,将比这个数大的放到这个数的右边,将比这个数小的或等于的放到基数的左边。在对左右区间重复第二步,直到各区间只有一个数。 public static void quickSort(int[] array,int l,int r){ if(l<r){
2015-03-12 23:34:43 344
原创 java有几种方法可以实现一个线程?用什么关键字修饰同步方法?
java多线程实现方法主要有3种:继承Thread类、实现Runnable接口和使用ExecutorService、callable、future实现有返回结果的多线程。其中前2方式线程执行完后都没有返回值,只有最后一种有返回值。继承Thread类启动线程的唯一方法是通过Thread类的start()实例方法。start()方法是一种native方法,它将启动一个新线程并执行run方法。这种方法通
2015-03-12 22:37:13 2586
转载 Hadoop ha简介
1、NameNode单点故障解决方案不够完善HDFS2允许为每个namenode配置backupnamenode,也就是namenode 热备,这样主节点namenode出现问题时,可以立刻切换到backnamenode,但实现仍不完美。namenode和backnamenode之间通过共享存储系统同步元数据信息,所以这套HA方案也存在单点问题,也就是这个共享存储系统,比较遗憾的是共享存储系统
2015-03-12 20:48:34 811
原创 Hadoop1 MRv1中的局限性
·扩展性差。在MRv1中,jobtracker同时兼备了资源管理器和作业控制两个功能。这成为系统的一大瓶颈,严重制约着hadoop集群的发展。可靠性差。在MRv1中,采用master/slave结构,master存在单点问题,一但单点出现故障,整个集群将不可用。资源利用率低。MRv1采用基于槽位的资源分配模型,槽位是一种粗粒度的资源划分单位,通常一个任务不会用完槽位对应的资源,而且其他资源也无法使
2015-03-11 23:45:12 1964
原创 java 1维数组的反转
public class ArrayReverse{ //效率低,需重新建立一个一样大小的数组 private static int[] reverse1(int[] array){ int[] newArray = new int[array.length]; for(int i = 0;i<array.length;i++){ newArray[i] = array[arra
2015-03-11 23:38:12 677
转载 java二分算法
1、前提:二分查找的前提需要查找的数组必须是有序的,我们这里默认使用升序。2:、原理:将数组分为3部分,中值前、中值、中值后。首先和数组的中值比较,如果小于中值则在中值前面查找,如果等于中值则直接返回,如果大于中值则向中值后面找,然后依次是个递归过程,所以此类问题适合用递归,用递归实现的都可以用循环实现。3、实现代码:public class BinarySearch{ p
2015-03-11 22:48:42 448
原创 java异常处理机制简单原理和应用
异常指java程序运行时(非编译)所发生的非正常情况或错误。java对异常进行了分类,不同类型的异常使用了不同的java类,所有异常的根类为java.lang.Throwable.Throwable派生了2个子类:Error和Exception.Error表示程序本身无法克服和恢复的一种严重错误,程序只有死的份,如内存溢出和死锁问题等系统问题。Exception表示还能克服和恢复,其中
2015-03-11 21:08:30 3484
原创 error和Exception有什么区别
error表示一种严重错误,比如内存溢出,不可能指望程序处理这样的情况。Exception表示一种设计或时限问题,表示如果程序正常运行,从不会发生的情况。
2015-03-11 21:03:16 384
原创 面试题:运行时异常与一般异常的区别
运行时异常表示虚拟机的通常操作中可能发生的异常,是一种常见的运行错误。java编译时要求方法必须声明抛出可能的非运行时异常,但并不要求必须声明抛出未捕获的运行时异常。
2015-03-11 20:59:21 593
转载 解析哈希表中数组的容量为什么是质数
HASH函数需要把原始数据均匀地分布到HASH数组里,比如大部分是偶数,这时候如果HASH数组容量是偶数,容易使原始数据HASH后不会均匀分布:2 4 6 8 10 12这6个数,如果对 6 取余 得到 2 4 0 2 4 0 只会得到3种HASH值,冲突会很多。如果对 7 取余 得到 2 4 6 1 3 5 得到6种HASH值,没有冲突。同样地,如果数据都是3的倍数,而HASH数
2015-01-23 14:37:25 2323
转载 设计模式 ( 十八 ) 策略模式Strategy(对象行为型)
转自原文:hguisu 设计模式 ( 十八 ) 策略模式Strategy(对象行为型) http://blog.csdn.net/hguisu/article/details/75582491.概述 在软件开发中也常常遇到类似的情况,实现某一个功能有多种算法或者策略,我们可以根据环境或者条件的不同选择不同的算法或者策略来完成该功能。如查找、排序等,一种常用
2014-12-12 14:22:32 416
转载 struts2机制
上图来源于Struts2官方站点,是Struts 2 的整体结构(1)一个请求在Struts2框架中的处理大概分为以下几个步骤 1 .客户端初始化一个指向Servlet容器(例如Tomcat)的请求 ,即HttpServletRequest请求。2 .这个请求经过一系列的过滤器(Filter)(这些过滤器中有一个叫做ActionContextCleanUp的可选过滤器,这个
2014-12-09 16:23:45 359
转载 java线程安全总结
原文: http://www.iteye.com/topic/806990http://www.iteye.com/topic/808550 最近想将java基础的一些东西都整理整理,写下来,这是对知识的总结,也是一种乐趣。已经拟好了提纲,大概分为这几个主题: java线程安全,java垃圾收集,java并发包详细介绍,java profile和jvm性能调优 。
2014-12-02 17:26:01 326
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人