自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(39)
  • 收藏
  • 关注

翻译 Flink FAQ - Task 之间的数据交换

翻译自原文:https://cwiki.apache.org/confluence/display/FLINK/Data+exchange+between+tasksFlink中的数据交换基于以下设计原则构建:数据交换的流控是由接收方启动的,这与原始MapReduce十分相似。 用于数据交换的数据流,即通过物理线路的实际数据传输,是通过IntermediateResult的概念抽象的,并且是可插入的。这意味着该系统可以使用相同的实现方式去支持流式传输(streaming)与批量传输(batch)

2020-05-20 13:59:03 759

原创 ClassNotFoundException: org.elasticsearch.plugins.NetworkPlugin

原文:https://blog.csdn.net/u010882234/article/details/74941954最近在做接口服务的项目,用的是微服务架构spring cloud,主要是基于spring boot,使用idea构建真的很方便。离线数据搜索服务,使用的是Elasticsearch,版本5.2.0。在使用过程中,不太顺利,建立client连接一直失败,最后发现是spring...

2019-04-08 14:51:32 905

原创 [Thinking in java] _为什么要使用抽象类

感觉工作了之后没怎么用到抽象类 最近在看组内大佬的code的时候 发现很多抽象类的使用,所以去百度了一把:使用抽象类到底有哪些好处=> code by 信哥 转载注明出处/** * @author diego * @time 2019-02-26 11:29 * @description */public abstract class AbstractInstr...

2019-03-21 11:19:22 453

原创 [Coding Time]-嗯,我就是这么记log的

Log4J的配置文件(Configuration File)就是用来设置记录器的级别、存放器和布局的,它可接key=value格式的设置或xml格式的设置信息。通过配置,可以创建出Log4J的运行环境。首先 可以看下文件log4j.properties Log4J配置文件的基本格式如下:( 以我工程的log4j 配置为例)#log4j.rootCategory=DEBUG,s...

2019-01-29 16:16:41 186

原创 [Coding Time]-尝试手写 spring IOC

IOC :Ioc—Inversion of Control,控制反转,Ioc不是某种技术,而是一种设计思想。在Java开发中,Ioc意味着将你设计好的对象交给容器控制,而不是传统的在你的对象内部直接控制。传统Java SE程序设计: 直接在对象内部通过new进行创建对象,是程序主动去创建依赖对象;而IoC是有专门一个容器来创建这些对象,即由Ioc容器来控制对象的创建;在Ioc中, 容器控制对象...

2019-01-28 17:57:52 142

原创 [技术分享]-mysql binlog

-> 首先需要一组有监听权限的userName & passWord-> 使用命令 SHOW BINARY LOGS; 查询当前sql  binlog情况mysql> SHOW BINARY LOGS;+------------------+------------+| Log_name         | File_size  |+------------...

2019-01-28 16:20:24 207 1

转载 [技术分享]-Servlet/tomcat/spring mvc之间关系

首先,什么是Servlet?狭义的说,Servlet是JAVA提供的Servlet接口,我们可以看一眼Servlet接口的定义:[java] view plain copyA servlet is a small Java program that runs within a Web server. Servlets receive and respond to requests from Web...

2018-04-12 15:13:28 931

转载 [技术分享]-事务

1.什么是事务:事务是程序中一系列严密的操作,所有操作执行必须成功完成,否则在每个操作所做的更改将会被撤销,这也是事务的原子性(要么成功,要么失败)。2.事务特性:事务特性分为四个:原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)、持续性(Durability)简称ACID。原子性(Atomicity):事务是数据库逻辑工作单元,事务中包含的操作要么都执...

2018-03-30 18:35:17 152

原创 [Coding Time]-Spring 整合Druid 连接池

DRUID是阿里巴巴开源平台上一个数据库连接池实现,它结合了C3P0、DBCP、PROXOOL等DB池的优点,同时加入了日志监控,可以很好的监控DB池连接和SQL的执行情况,可以说是针对监控而生的DB连接池(据说是目前最好的连接池,不知道速度有没有BoneCP快)。和其它连接池一样DRUID的DataSource类为:com.alibaba.druid.pool.DruidDataSource,基...

2018-03-29 18:30:38 175

原创 [技术分享]-springboot & AOP

Spring对AOP的支持Spring中AOP代理由Spring的IOC容器负责生成、管理,其依赖关系也由IOC容器负责管理。因此,AOP代理可以直接使用容器中的其它bean实例作为目标,这种关系可由IOC容器的依赖注入提供。Spring创建代理的规则为:1、默认使用Java动态代理来创建AOP代理,这样就可以为任何接口实例创建代理了2、当需要代理的类不是代理接口的时候,Spring会切换为使用C...

2018-03-27 18:29:13 134

原创 [技术分享]-是时候关注Kotlin了

编程界小小白一枚,平时刷刷知乎看看博客,偶发性遇见GitChat这个文:https://mp.weixin.qq.com/s/K6NTWV9gth8Ge-eDvTzWfQ于是,顺带科普了一下自己[ 先上Kotlin语言中文版文档:https://www.gitbook.com/book/hltj/kotlin-reference-chinese/details ]Kotlin的来历Kotlin的作...

2018-03-27 18:25:07 229

原创 [技术分享]-Mybatis配置多个数据源(Java)

首先,使用Mybatis配置多个数据源需要用到两个工具类:SqlSessionFactory   MapperFactory/** * 根据mybatis.xml中配置的不同的environment创建对应的SqlSessionFactory */public final class SqlSessionFactory {    private static final Logge

2018-01-31 17:26:38 12134 2

原创 [Thinking in java] _容器 _Map

Java中的Map包含了几种基本实现:HashMap TreeMap LinkedHashMap WeakHashMap ConcurrentHashMap IdentityHashMaphashCode() 是根类Object中的方法 因此所有Java对象都具有hashcode 散列码HashMap 就是使用对象的hashcode进行快速定位查询的,此方法较传统的get方法可以显著提高性...

2018-01-19 11:09:09 136

原创 [技术分享]-volatile关键字

volatileJava提供了volatile关键字来保证可见性。(此处的保证可见性可以理解为:一个不稳定的变量,即值可能会经常改变,每次使用它的时候都到内存中进行读取,所以一般来说,多任务环境下各任务之间共享的标志都应该加volatile修饰)当一个共享变量被volatile修饰时,它会保证修改的值会立即被更新到主存,当有其他线程需要读取时,它会去内存中读取新值。volatile

2018-01-17 14:50:16 174

原创 [技术分享]- Synchronized与ReentrantLock的区别

Java在编写多线程程序时,为了保证线程安全,需要对数据同步,经常用到两种同步方式就是Synchronized和可重入锁ReentrantLock。相似:这两种同步方式有很多相似之处,它们都是加锁方式同步,而且都是阻塞式的同步,也就是说当如果一个线程获得了对象锁,进入了同步块,其他访问该同步块的线程都必须阻塞在同步块外面等待,而进行线程阻塞和唤醒的代价是比较高的(操作系统需要在用户态与内核

2018-01-17 14:41:16 205

原创 [技术分享]-ConcurrentHashMap在jdk1.8中的改进

一、简单回顾ConcurrentHashMap在jdk1.7中的设计与Hashtable不同的是,ConcurrentHashMap使用的是分段锁技术,将ConcurrentHashMap容器的数据分段存储,每一段数据分配一个Segment,当线程占用一个Segment时,其他线程可以访问其他段的数据.(每个segment都是一个锁). 与hashtable相比,这么设计的目的是对于put, re

2018-01-17 11:56:16 3629 2

转载 vim简明教程

——————————正文开始——————————你想以最快的速度学习人类史上最好的文本编辑器VIM吗?你先得懂得如何在VIM幸存下来,然后一点一点地学习各种戏法。Vim the Six Billion Dollar editorBetter, Stronger, Faster.学习 vim 并且其会成为你最后一个使用的文本编辑器。没有比这个更好的文本编辑器了

2017-11-06 11:53:39 152

转载 kafka学习笔记:知识点整理

一、为什么需要消息系统1.解耦:  允许你独立的扩展或修改两边的处理过程,只要确保它们遵守同样的接口约束。2.冗余:  消息队列把数据进行持久化直到它们已经被完全处理,通过这一方式规避了数据丢失风险。许多消息队列所采用的"插入-获取-删除"范式中,在把一个消息从队列中删除之前,需要你的处理系统明确的指出该消息已经被处理完毕,从而确保你的数据被安全的保存直到你使用完毕。3

2017-04-21 17:44:49 354

转载 Azkaban入门篇

Azkaban是由Linkedin公司推出的一个批量工作流任务调度器,用于在一个工作流内以一个特定的顺序运行一组工作和流程。Azkaban使用job配置文件建立任务之间的依赖关系,并提供一个易于使用的web用户界面维护和跟踪你的工作流。在介绍Azkaban之前,我们先来看一下现有的两个工作流任务调度系统。知名度比较高的应该是Apache Oozie,但是其配置工作流的过程是编写大量

2017-04-21 17:36:13 1053

原创 Mybatis动态标签--trim,where,set

trimtrim标记是一个格式化的标记,可以完成set或者是where标记的功能,如下代码:  1、  select * from user       0"> AND name=#{name}    0"> AND gender=#{gender}    假如说name和gender的值都不为null的话打印的SQL为:select * from

2017-04-20 11:48:42 548

原创 [Java笔试面试知识点自整理系列]Java线程中run和start方法的区别

两种方法的区别1) start:用start方法来启动线程,真正实现了多线程运行,这时无需等待run方法体代码执行完毕而直接继续执行下面的代码。通过调用Thread类的start()方法来启动一个线程,这时此线程处于就绪(可运行)状态,并没有运行,一旦得到cpu时间片,就开始执行run()方法,这里方法 run()称为线程体,它包含了要执行的这个线程的内容,Run方法运行结束,此线

2016-05-25 13:41:19 698

原创 [Java笔试面试知识点自整理系列]Struts1与Struts2的区别

从action类上分析:a)   Struts1要求Action类继承一个抽象基类。Struts1的一个普遍问题是使用抽象类编程而不是接口。b)    Struts 2 Action类可以实现一个Action接口,也可实现其他接口,使可选和定制的服务成为可能。Struts2提供一个ActionSupport基类去实现常用的接口。Action接口不是必须的,任何有execute标识的PO

2016-05-25 13:22:48 383

原创 [Java笔试面试知识点自整理系列]HashMap,HashTable的区别

a)   HashMap是HashTable的轻量级实现(非线程安全实现)。HashMap允许空(null)键(key)值(value),而HashTable不允许。b)   HashMap把HashTable的contains方法去掉了,改成了containsvalue和containsKeyc)   HashMap是Java1.2引进的Mapinterface的一个实现,而HashTa

2016-05-25 13:20:57 384

原创 JAVA笔试面试题系列之----②网络编程

1、网络编程概述(1)网络模型OSI参考模型TCP/IP参考模型(2)网络通讯要素IP地址端口号传输协议(3)网络通讯前提:**找到对方IP**数据要发送到指定端口。为了标示不同的应用程序,所以给这些网络应用程序都用数字进行标示 。这个表示就叫端口。**定义通信规则。这个规则称为通信协议,国际组织定义了通用协议TCP/IP(4)计算机网络:是指将

2016-05-11 08:49:54 3271

原创 HTTP 常见错误代码

400 无法解析此请求。  401.1 未经授权:访问由于凭据无效被拒绝。  401.2 未经授权: 访问由于服务器配置倾向使用替代身份验证方法而被拒绝。  401.3 未经授权:访问由于 ACL 对所请求资源的设置被拒绝。  401.4 未经授权:Web 服务器上安装的筛选器授权失败。  401.5 未经授权:ISAPI/CGI 应用程序授权失败。  401.7 未经授权

2016-05-11 08:45:06 708

原创 JAVA笔试面试题系列之----①多线程

1.      进程和线程:进程:正在进行的程序。每一个进程执行都有一个执行顺序,该顺序是一个执行路径,或者叫一个控制单元。线程:进程内部的一条执行路径或者一个控制单元。两者的区别:一个进程至少有一个线程进程在执行过程中拥有独立的内存单元,而多个线程共享内存;2.      jvm多线程的启动是多线程吗?java的虚拟机jvm启动的是单线程,就有发生内存泄露的可能,而我

2016-04-19 14:10:42 2021 2

转载 浅析Java中的final关键字

谈到final关键字,想必很多人都不陌生,在使用匿名内部类的时候可能会经常用到final关键字。另外,Java中的String类就是一个final类,那么今天我们就来了解final这个关键字的用法。下面是本文的目录大纲:  一.final关键字的基本用法  二.深入理解final关键字  若有不正之处,请多多谅解并欢迎指正。  请尊重作者劳动成果,转载请标明原文链接

2016-03-16 15:49:45 287

原创 Java_数据结构(哈希表简介)

1.什么是哈希表?     哈希表是一种数据结构,它提供了快速的插入操作和查找操作。其基于数组来实现。 2.哈希化     1)直接将关键字作为索引。     2)将单词转换成索引。         将字母转换成ASCII码,然后进行相加         幂的连乘         压缩可选值 3.压缩后仍然可能出现的问题。     冲突:不能保证每个单词都映射到

2016-03-11 18:44:31 376

原创 Java_移位运算

java移位运算符不外乎就这三种:>(带符号右移)和>>>(无符号右移) 1、 左移运算符  左移运算符1)它的通用格式如下所示:  value num 指定要移位值value 移动的位数。  左移的规则只记住一点:丢弃最高位,0补最低位  如果移动的位数超过了该类型的最大位数,那么编译器会对移动的位数取模。如对int型移动33位,实际上只移动了33%32=1位。 2)

2016-03-11 16:41:30 375

原创 程序员面试金典(动态规划):叠罗汉问题_最长递增子序列(java解法)

题目描述:叠罗汉是一个著名的游戏,游戏中一个人要站在另一个人的肩膀上。同时我们应该让上面的人比下面的人更高一点。已知参加游戏的每个人的身高,请编写代码计算通过选择参与游戏的人,我们多能叠多少个人。注意这里的人都是先后到的,意味着参加游戏的人的先后顺序与原序列中的顺序应该一致。给定一个int数组men,代表依次来的每个人的身高。同时给定总人数n,请返回做多能叠的人数。保证

2016-03-10 20:38:39 3482

原创 程序员面试金典(排序与查找):元素查找(java解法)

题目描述有一个排过序的数组,包含n个整数,但是这个数组向左进行了一定长度的移位,例如,原数组为[1,2,3,4,5,6],向左移位5个位置即变成了[6,1,2,3,4,5],现在对于移位后的数组,需要查找某个元素的位置。请设计一个复杂度为log级别的算法完成这个任务。给定一个int数组A,为移位后的数组,同时给定数组大小n和需要查找的元素的值x,请返回x的位置(位置从零开始)。

2016-03-09 22:33:43 360

原创 程序员面试金典(排序与查找):变位词排序(java解法)

题目描述请编写一个方法,对一个字符串数组进行排序,将所有变位词合并,保留其字典序最小的一个串。这里的变位词指变换其字母顺序所构成的新的词或短语。例如"triangle"和"integral"就是变位词。给定一个string的数组str和数组大小int n,请返回排序合并后的数组。保证字符串串长小于等于20,数组大小小于等于300。测试样例:["ab","ba","abc

2016-03-09 21:50:56 1005

原创 程序员面试金典(动态规划):约瑟夫环问题(java解法)

题目描述约瑟夫问题是一个非常著名的趣题,即由n个人坐成一圈,按顺时针由1开始给他们编号。然后由第一个人开始报数,数到m的人出局。现在需要求的是最后一个出局的人的编号。给定两个int n和m,代表游戏的人数。请返回最后一个出局的人的编号。保证n和m小于等于1000。测试样例:5 3返回:4import java.util.*;public clas

2016-03-09 15:06:30 873

原创 程序员面试金典(动态规划):8(n)皇后问题(java解法)

题目描述请设计一种算法,解决著名的n皇后问题。这里的n皇后问题指在一个nxn的棋盘上放置n个棋子,使得每行每列和每条对角线上都只有一个棋子,求其摆放的方法数。给定一个int n,请返回方法数,保证n小于等于10import java.util.*;public class Queens { //Solution: 定义一个全局变量sum作为最后

2016-03-09 12:49:30 1376 1

原创 程序员面试金典(动态规划):1分,5分,10分,25分硬币面值组合问题(解题思路)

问题描述:假设我们有8种不同面值的硬币{1,2,5,10,20,50,100,200},用这些硬币组合够成一个给定的数值n。例如n=200,那么一种可能的组合方式为 200 = 3 * 1 + 1*2 + 1*5 + 2*20 + 1 * 50 + 1 * 100. 问总过有多少种可能的组合方式?[华为面试题] 1分2分5分的硬币三种,组合成1角,共有多少种组合?[创新

2016-03-08 22:05:18 22547 3

原创 程序员面试金典(动态规划):返回某集合的所有子集(java解法)

import java.util.*;public class Subset {public ArrayList> getSubsets(int[] A, int n) { if(A==null||A.length==0) return new ArrayList<>(); Arrays.sort(A);// 数组A从小到大排序 r

2016-03-08 18:25:40 911

转载 java用三种方法实现阶乘n!

用三种方法来实现n!实现使用BigDecimal类,因为用int最多正确算到12!,用long最多正确算到20!.实现方法都比较简单,但是转换为BigDecimal实现后可能看起来有点莫名其妙。废话不多说,直接上代码:   第一种方法:从1开始,一直递增乘到n,从而实现n! Java代码  package Factorial;    

2016-03-07 17:41:54 5635 1

转载 用Java实现二叉树

二叉树的定义:二叉树是树形结构的一个重要类型。许多实际问题抽象出来的数据结构往往是二叉树的形式,即使是一般的树也能简单地转换为二叉树,而且二叉树的存储结构及其算法都较为简单,因此二叉树显得特别重要。    二叉树(BinaryTree)是n(n≥0)个结点的有限集,它或者是空集(n=0),或者由一个根结点及两棵互不相交的、分别称作这个根的左子树和右子树的二叉树组成。    这个定义

2016-03-06 23:14:13 348

转载 Java 二叉树查找算法代码

/** 二叉树节点 */   public class BTNode {     private char key;     private BTNode left, right;     public BTNode(char key) {       this(key, null, null);     }     public BTNode(char key, BT

2016-03-06 21:53:50 764

空空如也

空空如也

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

TA关注的人

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