Spark 集群执行任务失败的故障处理

2023-02-23
阅读 1 分钟
1.5k
在 Spark Master 管理界面上看到任务的 Driver 地址不是真实 IP 地址,而是一个叫做“host.containers.internal”的主机名;

关于Java的取时间戳方法的争论

2022-01-13
阅读 3 分钟
2.8k
Java有两个取时间戳的方法:System.currentTimeMillis() 和 System.nanoTime(),它们的使用场景是有区别的,当前网上一些文章对于这两个方法的性能讨论存在一些片面的描述,本文希望能给出一个简单的最终答案。
封面图

如何在 Java 11 下运行 RocketMQ

2021-12-10
阅读 1 分钟
7k
说到这里我想劝各位发布类似开源项目的时候,脚本里面不要带上一大堆的 -XX: 调优参数,这些应该交给用户自己去调整,因为你不知道用户用的是什么 JVM,你不要强行帮用户去“优化”,只要留个口子就行了。
封面图

Java 9-16 新增语法元素一览

2021-03-25
阅读 7 分钟
3.9k
随着 Java 16 的正式发布(以及长期支持版 17 的即将到来),还在用 Java 8 的小伙伴们可能已经觉得有太多东西要学了。本人将整理从 Java 9 到 Java 16 带来的主要新特性,按照分类陆续展示供大家参考。
封面图

理解 MyBatis 是如何在 Spring 容器中初始化的

2020-11-09
阅读 5 分钟
4.2k
MyBatis 初始化过程就是生成一些必须的对象放到 Spring 容器中。问题是这个过程到底生成了哪些对象?当遇到 MyBatis 初始化失败时,如何正确的找到分析问题的切入点?本文将针对这些问题进行介绍。
封面图

CompletionService 介绍

2020-08-13
阅读 4 分钟
5.6k
java.util.concurrent.CompletionService 是对 ExecutorService 的一个功能增强封装,优化了获取异步操作结果的接口。
封面图

Jackson 快速入门

2020-07-14
阅读 6 分钟
6.9k
本文是对 Jackson 的快速入门介绍,主要分为四部分:基本使用基础配置自定义序列化/反序列化对泛型的处理上面这几个话题足以覆盖日常开发的场景了。限于篇幅所限,本文力求读者读完后能掌握 Jackson 在日常使用中的绝大部分场景,以及了解如何着手探索 Jackson 的深层定制。基本使用引入 Jackson本文假设读者熟悉 Maven ...

关于 Immutable Object 模式适用场景的探讨

2020-06-10
阅读 1 分钟
3.1k
Immutable Object 模式是一种将对象设计为一旦创建就不能修改其属性值,所有的属性值都只有 getter 方法没有 setter 方法的模式。

实现限制执行频率的线程池

2020-05-19
阅读 3 分钟
5.5k
Java 中的线程池类叫做 ThreadPoolExecutor,它的执行机制,简单讲就是启动多个线程,不停的从队列里面取任务执行。但是我们可能遇到下面这样的场景:

MyBatis 如何实现流式查询

2020-04-26
阅读 3 分钟
15.6k
如果没有流式查询,我们想要从数据库取 1000 万条记录而又没有足够的内存时,就不得不分页查询,而分页查询效率取决于表设计,如果设计的不好,就无法执行高效的分页查询。因此流式查询是一个数据库访问框架必须具备的功能。
封面图

【译】【Java】【多线程】饥饿与公平

2020-03-04
阅读 5 分钟
3.3k
译注:本文展示了实现一个多线程同步工具类的过程当中,会遇到和解决那些与并发有关的问题。关于锁的更详细的文章,以及现实当中应该用哪种公平锁,推荐这篇文章。

Java 线程池快速入门

2019-12-06
阅读 3 分钟
3.2k
一、线程池是哪个类?java.util.concurrent.ThreadPoolExecutor 这个类。在搞清楚这个类怎么用之前,我们先要过一遍基本概念。二、线程池基本概念线程池由两个部分组成:池和任务队列。池中有很多线程用于执行任务,而任务队列则是用于缓存将要执行的任务。池中的线程都是并发执行,因此池越大,可以同时处理的任务就越...
封面图

XShell 的替代品 FinalShell

2019-09-30
阅读 2 分钟
25.2k
很多人在 Windows 下第一个接触的 SSH 终端工具是 XShell 或 SecureCRT,他们都是收费的,XShell 目前的价格是 人民币 899 元,SecureCRT 则是 99 美金/年。

(4/4)Java 垃圾回收监控和分析工具

2019-09-27
阅读 5 分钟
4.1k
In this Java garbage collection tutorial series let us look about the tools available for garbage collection monitoring and analysis. Then use a tool and monitor an example Java application for garbage collection process. If you are a beginner it is better for you to go through this series of tut...

(3/4)Java 垃圾回收方式

2019-09-20
阅读 6 分钟
3.1k
In this tutorial we will go through the various type of Java garbage collectors available. Garbage collection is an automatic process in Java which relieves the programmer of object memory allocation and de-allocation chores. This is the third part in the garbage collection tutorial series. In th...

(2/4)Java 垃圾回收的运行机理

2019-09-17
阅读 10 分钟
2.5k
This tutorial is to understand the basics of Java garbage collection and how it works. This is the second part in the garbage collection tutorial series. Hope you have read introduction to Java garbage collection, which is the first part.本系列教程用于帮助读者了解 Java 垃圾回收的基本概念和运作机...

(1/4)Java 垃圾回收介绍

2019-09-17
阅读 5 分钟
2.6k
In Java, allocation and de-allocation of memory space for objects are done by the garbage collection process in an automated way by the JVM. Unlike C language the developers need not write code for garbage collection in Java. This is one among the many features that made Java popular and helps pr...

[IntelliJ] 在格式化代码的同时去掉空的 javadoc 标记

2019-04-13
阅读 1 分钟
2.7k
在右边选中 JavaDoc 标签页,勾选 “Enable JavaDoc formatting”,去掉勾选 Invalid tags 下面最后三个选项框。

Alibaba Sentinel(1):快速上手

2019-04-10
阅读 5 分钟
5k
该项目的地址是 [链接] 。但是阿里的文档一贯看起来一头雾水,所以本文介绍如何用一个最简单的项目来上手。如果你熟悉 Spring Boot,那么几分钟就可以搞定。

介绍 mybatis 执行 SQL 的大致过程

2019-03-27
阅读 4 分钟
2.3k
本文通过 main() 方法来用 mybatis 执行带参数的 SQL 命令,来介绍 mybatis 执行 SQL 的大致过程。 准备数据库 准备一个 MySQL 数据库,十分钟内快速运行起一个 MySQL 的方法可以看这篇文章。 数据库内创建一张很简单的表: {代码...} 创建项目 首先创建一个空的 Maven 项目,加上下面的依赖关系: {代码...} 创建 main(...

mybatis-plus 的一种很别扭的用法

2019-03-14
阅读 2 分钟
22.2k
对比这两个接口,操作都差不多,名字有一点点改变,比如 BaseMapper 里面叫 insert() 的方法,在 IService 里面叫 save()。

Map 的 getOrDefault(),putIfAbsent() 和 computeIfAbsent() 三个方法

2019-02-25
阅读 2 分钟
18.4k
假设我们定义下面一个 Map: {代码...} 如果我们要放一个元素进去,很多人会这么写: {代码...} 实际上从 Java 8 开始,Map 提供了 computeIfAbsent() 方法,我们可以写成一行即可: {代码...} 其中变量 k 是 Map 的 key。是不是很方便?但是除此之外,Map 还有两个方法:getOrDefault() 和 putIfAbsent(),这三个方法都...
封面图

笨蛋都看得懂的二叉树介绍(Java)

2018-03-28
阅读 6 分钟
5.2k
本文专门针对笨蛋介绍如何编写二叉树,包括二叉树的结构、如何添加节点、如何删除节点。 首先介绍二叉树的结构。 二叉树的结构有三个要点: 每个节点最多有两个子节点,分别称作左子节点和右子节点。 每个节点的左子节点的值比它小,右子节点的值比它大。 每个节点的左子树每个节点的值都比它小,右子树每个节点的值都比...

来自投资银行的 10 个 Java 面试题

2018-03-25
阅读 4 分钟
6.9k
有为数不少的开发者希望能在像 Barclays、Credit Suisse、Citibank 等等那样的投资银行做 Java 开发工作,但是他们当中很多不知道自己会遇到什么样的面试题。

示例:如何多线程遍历组合

2018-03-21
阅读 4 分钟
3.5k
这是一个再简单不过的组合问题: 编号 0-9 的 10 个球里面拿取任意 5 个,有多少种不同的组合? 答案是可以用公式算出来的,也就是 (10!) / ((5!) ^ 2) = 252 个。但是如果要把它们全部遍历出来呢? 下面是一种效率比较高的遍历方式,原理是将所有结果集看作是树节点(准确的说是叶子节点),然后去遍历这棵树即可。树的...

强大的 String.format() 快速介绍

2018-03-11
阅读 2 分钟
48.2k
从 Java 5.0 开始,String 类新增了一个强大的字符串格式化方法 format()。这个方法到现在用的人还是不多,实在是一种浪费。本文带你快速过一遍这个方法的功能,将来你要用到格式化文本的时候,可能就不需要再借用第三方类库或自己去实现了。
封面图

Java 8 时间 API 快速入门

2018-03-05
阅读 3 分钟
11.4k
Java 8 出来很久了,各位也可能已经在用了,不过其中新的时间日期 API 可能很少人用,甚至不知道怎么上手。本文快速介绍一下其中的主要的类的概念和用法。
封面图

Collections 里面的几个你还不知道的方法

2018-03-01
阅读 2 分钟
4k
java.util.Collections 这个类你可能知道,也可能经常用里面的像 sort()、reverse() 这样的方法。但这个类当中还有几个方法,估计你到现在还不知道,还在自己手写循环来实现。
封面图

Maven POM 模板

2017-12-22
阅读 3 分钟
3.6k
SpringBoot POM: [链接] 单独项目的 POM 模板: {代码...}

【译】十个刁钻的 Java 面试题

2017-12-20
阅读 2 分钟
5k
这里列出了十个常见而又刁钻的 Java 开发人员面试题及答案,这些题目是我从 StackOverflow 上找来的。如果你是初中级 Java 开发人员,而且近期准备面试的话,这些题目可能对你有些帮助。