- 博客(14)
- 资源 (4)
- 收藏
- 关注
原创 Linux离线安装 elasticdump工具
elasticdump是一个对elasticsearch进行数据导入导出的工具安装包:https://download.csdn.net/download/fanzhijian110/11261855https://download.csdn.net/download/fanzhijian110/11261850node-v10.16.0-linux-x64.tar.xz 这个包...
2019-06-28 09:19:23 7773 5
原创 Kafka:CorruptRecordException: record size is smaller than mininum record overhead
发现kafka的某个topic消费不了了,卡在了某个offset上,查看topic状态,发现 ISR只存活一个,其他的挂了。查看服务日志,一台服务器一直打印 :ERROR [Replica Manager on Broker 1]:Error processing fetch operation on partition XX-1,offset 49700025 [kafka.server.Rep...
2019-03-18 18:43:16 6126
原创 Java排序算法之快速排序
快速排序 首先在数组中选择一个基准点(该基准点的选取可能影响快速排序的效率,后面讲解选取的方法),然后分别从数组的两端扫描数组,设两个指示标志(lo指向起始位置,hi指向末尾),首先从后半部分开始,如果发现有元素比该基准点的值小,就交换lo和hi位置的值,然后从前半部分开始扫秒,发现有元素大于基准点的值,就交换lo和hi位置的值,如此往复循环,直到lo>=hi,然后把基准点的值放到hi这个位置。
2017-02-12 18:49:08 1124
原创 Java排序算法之冒泡排序
冒泡排序 1.比较相邻的元素。如果第一个比第二个大,就交换他们两个。 2.对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。在这一点,最后的元素应该会是最大的数。 3.针对所有的元素重复以上的步骤,除了最后一个。 4.持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较。public class BubbleSort { public sta
2017-02-12 17:00:29 396
原创 Java中List、Map、Set的遍历方式
一、List的遍历1.迭代器遍历List<String> list=new ArrayList<String>();Iterator<String> iter = list.iterator();while(iter.hasNext()){ System.out.println(iter.next());}这种方式在循环执行过程中会进行数据锁定,性能稍差, 同时,如果你想在寻欢过程
2017-01-07 11:22:15 576
原创 Java Collection集合框架
Java集合框架概述Java集合框架关系如图,其中Collection和Map同样是集合的顶级1、Collection接口 Collection是最基本集合接口,它定义了一组允许重复的对象。Collection接口派生了两个子接口Set和List,分别定义了两种不同的存储方式。2、Set接口Set集合不循序包含相同的元素。常用实现类: HashSet:通过equals()
2016-12-25 13:34:59 368
原创 ExecutorService创建线程池的四种方法
newCachedThreadPool缓存型线程池,先查看池中有没有以前建立的线程,如果有,就重用,如果没有,就建一个新的线程加入池中。如果线程池长度超过处理需要,可灵活回收空闲线程,若无可回收,则新建线程。 使用方法为: ExecutorService executorService = Executors.newCachedThreadPool(); 源码为:public static
2016-12-11 13:22:54 3493
原创 Java设计模式之——建造者模式
建造者模式(Builder模式):将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。建造者模式的优点1、建造者模式的封装性很好。使用建造者模式可以有效的封装变化,在使用建造者模式的场景中,一般产品类和建造者类是比较稳定的,因此,将主要的业务逻辑封装在导演类中对整体而言可以取得比较好的稳定性。 2、建造者模式很容易进行扩展。如果有新的需求,通过实现一个新的建造者类就可以完成
2016-12-03 19:10:37 446
原创 Java设计模式之——工厂模式
工厂模式:主要用来实例化有共同接口的类,工厂模式可以动态决定应该实例化那一个类。工厂模式主要用一下几种形态: 1:简单工厂(Simple Factory) 2:工厂方法(Factory Method) 3:抽象工厂(Abstract Factory)简单工厂(Simple Factory)又叫静态工厂,是工厂模式三中状态中结构最为简单的。主要有一个静态方法,用来接受参数,并根据参数来决定返回
2016-11-26 12:13:34 378
原创 Java设计模式之——单例模式
定义:Singleton(单例)模式主要作用是保证在Java应用程序中,一个类Class只有一个实例存在。使用Singleton模式可以节省内存,因为它限制了实例的个数,有利于Java垃圾回收(garbage collection)。一般Singleton模式通常有几种形式:1. 饿汉模式public class Singleton { private Singleton(){}
2016-11-20 11:08:00 363
原创 Java实现多线程的两种方式
大多数情况,通过实例化一个Thread对象来创建一个线程。Java定义了两种方式: 实现Runnable 接口; 可以继承Thread类。实现Runnable接口创建线程的最简单的方法就是创建一个实现Runnable 接口的类。Runnable抽象了一个执行代码单元。你可以通过实现Runnable接口的方法创建每一个对象的线程。为实现Runnable 接口,一个类仅需实现一个run()的简单方法
2016-11-20 10:35:03 463
原创 Java访问修饰符 public private protected
Java 通过修饰符来控制类、属性和方法的访问权限和其他功能,通常放在语句的最前端。例如:public class className { // body of class}private boolean myFlag;static final double weeks = 9.5;protected static final int BOXWIDTH = 42;public st
2016-11-12 14:34:21 868
原创 String StringBuffer StringBuilder之间的区别
1.StringString 的值是不可变的,每次对String的操作都会生成新的String对象,不仅效率低,而且耗费大量内存空间。2、StringBufferStringBuffer是不可变类,和线程安全的字符串操作类,但是StringBuffer的内部实现方式和String不同,在进行字符串处理时,不生成新的对象,在内存使用上要优于String。StringBuffe
2016-11-06 10:16:06 429
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人