9 冰 河

尚未进行身份认证

大数据架构师,编程专家,拥有多年的项目架构和实战经验,多年来致力于分布式系统、微服务、分布式数据库、分布式事务、大数据技术的研究,在高并发、高可用、高可扩展性、高可维护性和大数据等领域拥有丰富的实战经验,对Hadoop、Spark、Storm、Flink等大数据框架源码进行过深度分析并具有丰富的实战经验。为Mykit系列开源框架创始人、核心架构师和开发者,《海量数据处理与大数据技术实战》、《MySQL开发、优化与运维实战》作者。

等级
TA的排名 68

【Java8新特性】面试官:谈谈Java8中的Stream API有哪些终止操作?

写在前面如果你出去面试,面试官问了你关于Java8 Stream API的一些问题,比如:Java8中创建Stream流有哪几种方式?(可以参见:《【Java8新特性】面试官问我:Java8中创建Stream流有哪几种方式?》)Java8中的Stream API有哪些中间操作?(可以参见:《【Java8新特性】Stream API有哪些中间操作?看完你也可以吊打面试官!!》)如果你都很好的回答了这些问题,那么,面试官可能又会问你:Java8中的Stream API有哪些终止操作呢?没错,这就是Java8

2020-05-29 00:19:20

【Java8新特性】Stream API有哪些中间操作?看完你也可以吊打面试官!!

写在前面在上一篇《【Java8新特性】面试官问我:Java8中创建Stream流有哪几种方式?》中,一名读者去面试被面试官暴虐!归根结底,那哥儿们还是对Java8的新特性不是很了解呀!那么,我们继续讲述Java8的新特性,旨在最终可以让每位读者在跳槽面试的过程中吊打面试官!!Stream的中间操作多个中间操作可以连接起来形成一个流水线,除非流水线上触发终止操作,否则中间操作不会执行任何的处理!而在终止操作时一次性全部处理,称为“惰性求值” 。 Stream的中间操作是不会有任何结果数据输出的。

2020-05-27 00:31:05

【JVM】关于JVM,你需要掌握这些!!

写在前面最近,一直有小伙伴让我整理下关于JVM的知识,经过十几天的收集与整理,初版算是整理出来了。希望对大家有所帮助。JDK 是什么?JDK 是用于支持 Java 程序开发的最小环境。Java 程序设计语言Java 虚拟机Java API类库JRE 是什么?JRE 是支持 Java 程序运行的标准环境。Java SE API 子集Java 虚拟机Java历史版本的特性?Java Version SE 5.0引入泛型;增强循环,可以使用迭代方式;自动装箱与自动拆箱;

2020-05-26 01:34:42

【Java8新特性】面试官问我:Java8中创建Stream流有哪几种方式?

写在前面先说点题外话:不少读者工作几年后,仍然在使用Java7之前版本的方法,对于Java8版本的新特性,甚至是Java7的新特性几乎没有接触过。真心想对这些读者说:你真的需要了解下Java8甚至以后版本的新特性了。今天,一名读者出去面试,面试官问他:说说Java8中创建Stream流有哪几种方式?他竟然没回答上来!!Stream概述Java8中有两大最为重要的改变。第一个是 Lambda 表达式;另外一个则是 Stream API(java.util.stream.*)。Stream 是

2020-05-25 22:54:28

【Oracle】通过LogMiner实现Oracle数据同步迁移

写在前面最近在研究如何实现Oracle数据库之间的数据同步,网上的资料确实比较少。最好用的Oracle数据库同步工具是:GoldenGate ,而GoldenGate是要收费的。那么还有什么好的办法来同步Oracle的数据吗?没错,就是使用LogMiner来实现Oracle数据同步迁移。实现过程1.创建目录在服务器上创建/home/oracle/tools/oracle11g/oradata/orcl/LOGMNR目录来存储数据库的字典信息,如下所示。mkdir -p /home/oracle

2020-05-24 23:38:37

【Oracle】CentOS7/CentOS8命令行重启Oracle 11G R2

写在前面按照读者朋友的要求写了一篇《【Oracle】CentOS7/CentOS8命令行安装Oracle 11G R2》,由于读者完全是按照我的安装方式安装的Oracle数据库,也是将Oracle数据库安装在了CentOS 8虚拟机中,安装成功后,便关闭了虚拟机,等重新开启虚拟机时,Oracle数据库并没有自动启动,此时,需要我们重新启动Oracle数据库。重启Oracle数据库重启Oracle数据库包括启动Oracle数据库服务进程和启动Oracle数据库两步,大家继续往下看。按照《【Orac

2020-05-24 16:52:24

【Oracle】CentOS7/CentOS8命令行安装Oracle 11G R2

写在前面很长一段时间内,国内互联网公司都在提倡“去IOE”,但是很多企业还是愿意为昂贵的Oracle数据库买单,不少读者所在的公司也在用Oracle,很多读者自行安装Oracle数据库时,多多少少遇到了些问题,苦恼于几天下来还是没能解决问题。这不,不少读者跑来问我,让我输出一篇如何在物理机上安装Oracle的文章,最好是安装过程中不会出现各种“疑难杂症”。哈哈,这要求不过分,我周末也着实捣鼓了一番,不过我是安装在CentOS 7/ CentOS 8虚拟机中的,效果和在物理机中一样,整个过程也算是小有所成

2020-05-24 12:47:42

【Java】面试官灵魂拷问:if语句执行完else语句真的不会再执行吗?

写在前面最近跳槽找工作的朋友确实不少,遇到的面试题也是千奇百怪,这不,一名读者面试时,被面试官问到了一个直击灵魂的问题:if 语句执行完else语句真的不会再执行吗?这个奇葩的问题把这名读者问倒了!问题分析最近一名读者留言说,自己出去面试被面试官的一道奇葩问题问倒了,这个问题就是:if语句执行完else语句真的不会再执行吗?这名读者确实不知道该如何回答这个问题。回去后,自己查阅了很多资料也没弄明白这个问题!想必很多读者朋友遇到这种奇葩面试题时,多多少少都会觉得闹心吧!不过,闹心归闹心,问题还是要

2020-05-23 22:26:37

【Java8新特性】关于Java8的Stream API,看这一篇就够了!!

Java8中有两大最为重要的改变。第一个是 Lambda 表达式;另外一个则是 Stream API(java.util.stream.*)。Stream 是 Java8 中处理集合的关键抽象概念,它可以指定你希望对集合进行的操作,可以执行非常复杂的查找、过滤和映射数据等操作。使用Stream API 对集合数据进行操作,就类似于使用 SQL 执行的数据库查询。也可以使用 Stream API 来并行执行操作。简而言之,Stream API 提供了一种高效且易于使用的处理数据的方式

2020-05-22 00:46:13

【Maven】pom.xml文件报错:Artifact has not been packaged yet. When used on reactor artifact, copy should be

导入一个新项目后pom.xml报错:Artifact has not been packaged yet. When used on reactor artifact, copy should be executed after packaging: see MDEP-187 is thrown经过在网上查找资料,将解决方案整理如下:首先,这个是eclipse的插件m2e的问题,并不...

2020-04-28 14:01:03

【Harbor】Harbor修改暴露端口

把原来的端口映射改成1180一 修改docker-compose.yml[root@binghe~]# vim /mnt/harbor/docker-compose.ymlversion: '2.3'services: log: image: goharbor/harbor-log:v1.8.0 container_name: harbor-log re...

2020-04-28 22:01:12

【K8S】基于Docker+K8S+GitLab/SVN+Jenkins+Harbor搭建持续集成交付环境(环境搭建篇)

万字长文!值得收藏!!最近在 K8S 1.18.2 版本的集群上搭建DevOps环境,期间遇到了各种坑。目前,搭建环境的过程中出现的各种坑均已被填平,特此记录,并分享给大家!

2020-05-21 00:51:20

【数据同步】最近一个多月我学习的关于数据双活的文章与书籍

一、Mysql数据库双活1、Mysql binlog介绍官网:https://dev.mysql.com/doc/refman/5.5/en/binary-log.html中文:* http://www.cnblogs.com/Richardzhu/p/3225254.html* http://www.cnblogs.com/martinzhang/p/3454358.html2、阿里数据库同步工具Canal官网:https://github.com/alibabatech/ca.

2020-05-20 21:42:53

【Java8新特性】浅谈方法引用和构造器引用

写在前面Java8中一个很牛逼的新特性就是方法引用和构造器引用,为什么说它很牛逼呢?往下看!方法引用当要传递给Lambda体的操作,已经有实现的方法了,可以使用方法引用!这里需要注意的是:实现抽象方法的参数列表,必须与方法引用方法的参数列表保持一致!那么什么是方法引用呢?方法引用就是操作符“::”将方法名和对象或类的名字分隔开来。有如下三种使用情况:对象::实例方法类::静态方法类::实例方法这里,我们可以列举几个示例。例如:(x) -> System.out

2020-05-20 00:38:54

【Java8新特性】还没搞懂函数式接口?赶快过来看看吧!

写在前面Java8中内置了一些在开发中常用的函数式接口,极大的提高了我们的开发效率。那么,问题来了,你知道都有哪些函数式接口吗?函数式接口总览这里,我使用表格的形式来简单说明下Java8中提供的函数式接口。四大核心函数式接口首先,我们来看四大核心函数式接口,如下所示。函数式接口参数类型返回类型使用场景Consumer消费型接口Tvoid对类型为T的对象...

2020-05-07 23:31:32

【Java新特性】Lambda表达式典型案例,你想要的的都在这儿了!!

写在前面不得不说,有些小伙伴的学习热情真高,学完了Lambda表达式的语法,想来几个典型案例再强化下。于是问冰河能否给几个Lambda表达式的典型使用示例。于是乎,便有了这篇文章。案例一需求调用Collections.sort()方法,通过定制排序比较两个Employee(先比较年龄,年龄相同按姓名比较),使用Lambda表达式作为参数传递。实现这里,我们先创建一个Employee...

2020-05-06 23:55:54

【Java8新特性】Lambda表达式基础语法,都在这儿了!!

写在前面前面积极响应读者的需求,写了两篇Java新特性的文章。有小伙伴留言说:感觉Lambda表达式很强大啊!一行代码就能够搞定那么多功能!我想学习下Lambda表达式的语法,可以吗?我的回答是:没问题!这不,Lambda表达式来了!匿名类到Lambda表达式我们先来看看从匿名类如何转换到Lambda表达式呢?这里,我们可以使用两个示例来说明如何从匿名内部类转换为Lambda表达式。...

2020-05-06 00:48:01

【Java8新特性】你知道Java8为什么要引入Lambda表达式吗?

写在前面这是一道真实的面试题,一个读者朋友出去面试,面试官竟然问他这样一个问题:你说说Java8中为什么引入Lambda表达式?引入Lambda表达式后有哪些好处呢?还好这个朋友对Java8早有准备。不过,如果是看文章的你出去面试,面试官问你这样的问题,你是否也能轻松回答呢?什么是Lambda表达式?Lambda表达式是一个匿名函数,我们可以这样理解Lambda表达式:Lambda是一段...

2020-05-04 23:46:16

【Java8新特性】一张图带你领略Java8有哪些新特性

写在前面很多小伙伴留言说,冰河你能不能写一些关于Java8的文章呢,看书看不下去,看视频进度太慢。好吧,看到不少读者对Java8还是比较陌生的,那我就写一些关于Java8的文章吧,希望对大家有所帮助。至于【高并发专题】,后续咱们会继续更新的。Java8有哪些新特性?简单来说,Java8新特性如下所示:Lambda表达式函数式接口方法引用与构造器引用Stream ...

2020-05-04 23:39:48

【高并发】线程的生命周期其实没有我们想象的那么简单!!

写在前面在【高并发专题】中的《高并发之——线程与多线程》一文中,我们简单介绍了线程的生命周期和线程的几个重要状态,并以代码的形式实现了线程是如何进入各个状态的。今天,我们就结合操作系统线程和编程语言线程再次深入探讨线程的生命周期问题,线程的生命周期其实没有我们想象的那么简单!!理解线程的生命周期本质上理解了生命周期中各个节点的状态转换机制就可以了。接下来,我们分别就通用线程生命周期和Ja...

2020-05-03 23:25:49

查看更多

CSDN身份
  • 博客专家
勋章 我的勋章
  • GitHub
    GitHub
    绑定GitHub第三方账户获取
  • 签到新秀
    签到新秀
    累计签到获取,不积跬步,无以至千里,继续坚持!
  • 技术圈认证(专家版)
    技术圈认证(专家版)
    博客专家完成年度认证,即可获得
  • 阅读者勋章Lv1
    阅读者勋章Lv1
    授予在CSDN APP累计阅读博文达到3天的你,是你的坚持与努力,使你超越了昨天的自己。
  • 专栏达人
    专栏达人
    授予成功创建个人博客专栏的用户。专栏中添加五篇以上博文即可点亮!撰写博客专栏浓缩技术精华,专栏达人就是你!
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 1024勋章
    1024勋章
    #1024程序员节#活动勋章,当日发布原创博客即可获得
  • 1024超级勋章
    1024超级勋章
    授予原创文章总数达到1024篇的博主,感谢你对CSDN社区的贡献,CSDN与你一起成长。
  • 勤写标兵Lv4
    勤写标兵Lv4
    授予每个自然周发布9篇以上(包括9篇)原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。
  • 原力探索
    原力探索
    参与《原力计划【第二季】——打卡挑战》的文章入选【每日精选】的博主将会获得此勋章。
  • 原力突破
    原力突破
    参与《原力计划【第二季】— 打卡挑战》的文章入选【打卡挑战周榜】的博主,即可获得此勋章。
  • 学习力
    学习力
    《原力计划【第二季】》第一期主题勋章 ,第一期活动已经结束啦,小伙伴们可以去参加第二期打卡挑战活动获取更多勋章哦。
  • 博客之星-入围
    博客之星-入围
    授予每年博客之星评选结果第21-200名的用户
  • 原力新人
    原力新人
    在《原力计划【第二季】》打卡挑战活动中,成功参与本活动并发布一篇原创文章的博主,即可获得此勋章。
  • 原力探索 · S
    原力探索 · S
    在《原力计划【第二季】》打卡挑战活动中,发布 12 篇原创文章参与活动的博主,即可获得此勋章。(本次活动结束后统一统计发放)
  • 分享王者
    分享王者
    成功上传51个资源即可获取