精彩博客

Java NIO:Buffer、Channel 和 Selector

本文将介绍 Java NIO 中三大组件 Buffer、Channel、Selector 的使用。 本来要一起介绍非阻塞 IO 和 JDK7 的异步 IO 的,不过因为之前的文章真的太长了,有点影响读者阅读,所以这里将它们放到...

前天 19:53
421
0
Spring事务传播属性有那么难吗?看这一篇就够了

Spring事务传播属性有那么难吗?看这一篇就够了 笔者文笔功力尚浅,如有不妥,请慷慨指出,必定感激不尽 学习东西要知行合一,如果只是知道理论而没实践过,那么掌握的也不会特别扎实,估计过...

前天 18:23
491
0
SpringCloud实现分库分表模式下,数据库实时扩容方案

本文源码:GitHub·点这里 || GitEE·点这里 一、项目结构 1、工程结构 2、模块命名 shard-common-entity: 公共代码块 shard-open-inte: 开放接口管理 shard-eureka-7001: 注册中心 shar...

10/15 20:43
818
1
从 JVM 视角看看 Java 守护线程

Java 多线程系列第 7 篇。 这篇我们来讲讲线程的另一个特性:守护线程 or 用户线程? 我们先来看看 Thread.setDaemon() 方法的注释,如下所示。 Marks this thread as either a daemon threa...

10/15 09:02
607
0
Tomcat是如何实现异步Servlet的

前言 通过我之前的Tomcat系列文章,相信看我博客的同学对Tomcat应该有一个比较清晰的了解了,在前几篇博客我们讨论了Tomcat在SpringBoot框架中是如何启动的,讨论了Tomcat的内部组件是如何设...

10/14 07:59
768
4
写了那么多年 Java 代码,终于 debug 到 JVM 了

继上篇文章 全网最新最简单的 OpenJDK13 代码编译 之后,我们有了自己编译后的 jdk 和 hotspot,如下图所示。接下来就来干一番事情。 搭建调试环境 1.下载 CLion 软件 Jetbrains 是一家非常牛...

10/12 10:11
7.1K
7
全网最新最简单的 OpenJDK13 代码编译

个人博客原文:全网最新最简单的 OpenJDK13 代码编译 [TOC] 最近因写文章需要查看 JVM 源码,有时代码逻辑不是很清晰,找半天,趁国庆假期,抽空下载了 OpenJDK13 搭建了 JVM debug 环境,把...

10/10 09:09
1K
2
C++ 生态:编译器、IDE、测试工具大全

编写专业的 C++ 应用程序,您不仅需要基本的文本编辑器和编译器。您还需要更多工具。在这篇文章中,我们将介绍大量 C++ 编程工具,包括:编译器,IDE,调试器等。 介绍 C++计算机编程语言已经...

10/09 10:40
4.4K
9
死磕 java线程系列之自己动手写一个线程池

(手机横屏看源码更方便) 问题 (1)自己动手写一个线程池需要考虑哪些因素? (2)自己动手写的线程池如何测试? 简介 线程池是Java并发编程中经常使用到的技术,那么自己如何动手写一个线...

10/09 08:18
4K
22
死磕 java线程系列之创建线程的8种方式

(手机横屏看源码更方便) 问题 (1)创建线程有哪几种方式? (2)它们分别有什么运用场景? 简介 创建线程,是多线程编程中最基本的操作,彤哥总结了一下,大概有8种创建线程的方式,你知道...

10/07 11:52
691
4
ES2019 中的 JavaScript 新特性

JavaScript 从成立之初就已经走了很长一段路,提供了许多新的功能,这些功能是专门设计来使该语言更加人性化和提升效率。以下是我最近发现的一些有趣的JavaScript 新增内容。其中一些功能已在...

09/29 14:51
4.7K
0
Python 之父的解析器系列之七:PEG 解析器的元语法

原题 | A Meta-Grammar for PEG Parsers 作者 | Guido van Rossum(Python之父) 译者 | 豌豆花下猫(“Python猫”公众号作者) 声明 | 本翻译是出于交流学习的目的,基于 CC BY-NC-SA 4.0 ...

09/27 19:19
545
1
Spring IOC 容器源码分析

Spring 最重要的概念是 IOC 和 AOP,本篇文章其实就是要带领大家来分析下 Spring 的 IOC 容器。既然大家平时都要用到 Spring,怎么可以不好好了解 Spring 呢?阅读本文并不能让你成为 Spring...

09/24 17:09
1K
11
了解Java线程优先级,更要知道对应操作系统的优先级,不然会踩坑

Java 多线程系列第 6 篇。 这篇我们来看看 Java 线程的优先级。 Java 线程优先级 Thread 类中,使用如下属性来代表优先级。 private int priority; 我们可以通过 setPriority(int newPriorit...

09/24 09:30
2.9K
15
线程最最基础的知识

Java 多线程系列文章第 5 篇。 什么是线程 试想一下没有线程的程序是怎么样的?百度网盘在上传文件时就无法下载文件了,得等文件上传完成后才能下载文件。这个我们现在看起来很反人性,因为我...

09/19 08:28
1K
2
Java描述设计模式(08):桥接模式

本文源码:GitHub·点这里 || GitEE·点这里 一、桥接模式简介 1、基础描述 桥梁模式是对象的结构模式。又称为柄体(Handle and Body)模式或接口(Interface)模式。桥梁模式的用意是“将抽象化...

09/19 08:03
927
0
彻底解决Spring mvc中时间的转换和序列化等问题

痛点 在使用Spring mvc 进行开发时我们经常遇到前端传来的某种格式的时间字符串无法用java8的新特性java.time包下的具体类型参数来直接接收。 我们使用含有java.time封装类型的参数接收也会报...

09/18 17:43
716
1
面试官问你B树和B+树,就把这篇文章丢给他

原文链接:面试官问你B树和B+树,就把这篇文章丢给他 1 B树 在介绍B+树之前, 先简单的介绍一下B树,这两种数据结构既有相似之处,也有他们的区别,最后,我们也会对比一下这两种数据结构的区...

09/18 10:23
7.8K
18
浅谈singleton枚举单例模式

一、前言 单例模式比较简单,可以说没有复杂的调用和接口的设计,就是一个简单的类,只是要求这个类只生成一个对象,无论什么时候都要保证这一点,因此只能生成一个实例的模式就是单例模式。...

09/18 09:38
548
0
Spring Ioc源码分析 之 Bean的加载(五):实例化Bean

上篇文章Spring Ioc源码分析 之 Bean的加载(四):createBean()中我们分析了doCreateBean()方法的大致流程,这篇文章我们就详细分析下实例化 bean的createBeanInstance()方法,剩下的步骤将...

09/17 20:02
489
0

没有更多内容

加载失败,请刷新页面

写了那么多年 Java 代码,终于 debug 到 JVM 了

继上篇文章 全网最新最简单的 OpenJDK13 代码编译 之后,我们有了自己编译后的 jdk 和 hotspot,如下图所示。接下来就来干一番事情。 搭建调试环境 1.下载 CLion 软件 Jetbrains 是一家非常牛...

10/12 10:11
7.1K
7
C++ 生态:编译器、IDE、测试工具大全

编写专业的 C++ 应用程序,您不仅需要基本的文本编辑器和编译器。您还需要更多工具。在这篇文章中,我们将介绍大量 C++ 编程工具,包括:编译器,IDE,调试器等。 介绍 C++计算机编程语言已经...

10/09 10:40
4.4K
9
死磕 java线程系列之自己动手写一个线程池

(手机横屏看源码更方便) 问题 (1)自己动手写一个线程池需要考虑哪些因素? (2)自己动手写的线程池如何测试? 简介 线程池是Java并发编程中经常使用到的技术,那么自己如何动手写一个线...

10/09 08:18
4K
22
ES2019 中的 JavaScript 新特性

JavaScript 从成立之初就已经走了很长一段路,提供了许多新的功能,这些功能是专门设计来使该语言更加人性化和提升效率。以下是我最近发现的一些有趣的JavaScript 新增内容。其中一些功能已在...

09/29 14:51
4.7K
0
了解Java线程优先级,更要知道对应操作系统的优先级,不然会踩坑

Java 多线程系列第 6 篇。 这篇我们来看看 Java 线程的优先级。 Java 线程优先级 Thread 类中,使用如下属性来代表优先级。 private int priority; 我们可以通过 setPriority(int newPriorit...

09/24 09:30
2.9K
15
JVM优化之逃逸分析与分配消除

要了解逃逸分析背后的基本原理,我们先来看下这段有问题的C代码——当然这个是没法用Java来写的: 这段C代码在栈上创建了一个int类型的变量,然后把它的指针作为函数的返回值返回了。这样做是...

09/19 14:52
3.3K
6
面试官问你B树和B+树,就把这篇文章丢给他

原文链接:面试官问你B树和B+树,就把这篇文章丢给他 1 B树 在介绍B+树之前, 先简单的介绍一下B树,这两种数据结构既有相似之处,也有他们的区别,最后,我们也会对比一下这两种数据结构的区...

09/18 10:23
7.8K
18
Python 内存分配时的小秘密

Python 中的sys 模块极为基础而重要,它主要提供了一些给解释器使用(或由它维护)的变量,以及一些与解释器强交互的函数。 本文将会频繁地使用该模块的getsizeof() 方法,因此,我先简要介绍...

08/31 15:32
3.3K
12
从 Python 之父的对话聊起,关于知识产权、知识共享与文章翻译

一、缘起 前不久,我在翻译 Guido van Rossum(Python之父)的文章时,给他留言,申请非商业用途的翻译授权。 过程中起了点小误会,略去不表,最终的结果是:他的文章以CC BY-NC-SA 4.0 许可...

08/22 17:10
2.2K
17
Tomcat在SpringBoot中是如何启动的

前言 我们知道SpringBoot给我们带来了一个全新的开发体验,我们可以直接把web程序达成jar包,直接启动,这就得益于SpringBoot内置了容器,可以直接启动,本文将以Tomcat为例,来看看SpringB...

08/12 07:57
11.4K
60
P++ 的想法: 常见问题( 全文翻译 )

关键字 PHP, PPlusPlus, FAQ, Zeev Suraski, [email protected] P++ 的想法: 常见问题 原文: https://wiki.php.net/pplusplus/faq 时间: 2019 年 8 月 9 日 作者: Zeev Suraski, [email protected] 这是...

08/12 00:11
4K
2
Python 之父再发文:构建一个 PEG 解析器

花下猫语: Python 之父在 Medium 上开了博客,现在写了两篇文章,本文是第二篇的译文。前一篇的译文 在此 ,宣布了将要用 PEG 解析器来替换当前的 pgen 解析器。 本文主要介绍了构建一个 PE...

08/03 20:41
4K
2
分布式Redis深度历险-Cluster

本文为分布式Redis深度历险系列的第三篇,主要内容为Redis的Cluster,也就是Redis集群功能。 Redis集群是Redis官方提供的分布式方案,整个集群通过将所有数据分成16384个槽来进行数据共享。 ...

07/22 15:52
3.3K
6
分布式Redis深度历险-Sentinel

上一篇介绍了Redis的主从服务器之间是如何同步数据的。试想下,在一主一从或一主多从的结构下,如果主服务器挂了,整个集群就不可用了,单点问题并没有解决。Redis使用Sentinel解决该问题,保...

07/20 14:35
3.6K
0
分布式系统的负载均衡 | 架构干货

一、 什么是负载均衡? 什么是负载均衡? 记得第一次接触 Nginx 是在实验室,那时候在服务器部署网站需要用 Nginx 。Nginx 是一个服务组件,用来反向代理、负载平衡和 HTTP 缓存等。那么这里...

07/17 15:43
7.6K
11
对比 C++ 和 Python,谈谈指针与引用

花下猫语:本文是学习群内 樱雨楼 小姐姐的投稿。之前已发布过她的一篇作品《当谈论迭代器时,我谈些什么?》,大受好评。本文依然是对比 C++ 与 Python,来探讨编程语言中极其重要的概念。祝...

07/12 22:09
3.9K
4
编程语言之问:何时该借用,何时该创造?

编程语言之问:何时该借用,何时该创造? 本文原创并首发于公众号【Python猫】,未经授权,请勿转载。 原文地址:https://mp.weixin.qq.com/s/OypPwnJ2vX2vJtZRkVa-Ug 6 月 22 日,Python 之...

06/30 11:00
5.9K
4
Redis压缩列表原理与应用分析

摘要 Redis是一款著名的key-value内存数据库软件,同时也是一款卓越的数据结构服务软件。它支持字符串、列表、哈希表、集合、有序集合五种数据结构类型,同时每种数据结构类型针对不同的应用...

06/29 21:09
2.9K
2
美团点评数据库高可用架构的演进与设想

本文介绍最近几年美团点评MySQL数据库高可用架构的演进过程,以及我们在开源技术基础上做的一些创新。同时,也和业界其它方案进行综合对比,了解业界在高可用方面的进展,和未来我们的一些规...

06/27 22:36
3.3K
2
消息队列的消费语义和投递语义

引言 所谓的消费语义,指的就是如下三种情况 如何保证消息最多消费一次 如何保证消息至少消费一次 如何保证消息恰好消费一次 其实类似还有一个投递语义 如何保证消息最多投递一次 如何保证消...

06/19 14:41
2.2K
1

没有更多内容

加载失败,请刷新页面

很遗憾,没有一篇文章能讲清楚线程的生命周期!

(手机横屏看源码更方便) 注:java源码分析部分如无特殊说明均基于 java8 版本。 简介 大家都知道线程是有生命周期,但是彤哥可以认真负责地告诉你网上几乎没有一篇文章讲得是完全正确的。 ...

31分钟前
1
0
Java集合类常见面试知识点总结

Java集合类学习总结 这篇总结是基于之前博客内容的一个整理和回顾。 这里先简单地总结一下,更多详细内容请参考我的专栏:深入浅出Java核心技术 https://blog.csdn.net/column/details/21930...

今天 20:49
7
0
怎么用for循环打出爱心

先上效果图: 这是用*组成的爱心,下面讲讲思路: 首先这个图形可以拆分成三部分:第一部分是上面三行的两个梯形,第二部分是中间三行的长方形,第三部分是最下面的倒三角形。 其实图形拆分好...

今天 20:43
4
0
用大白话告诉你 :Java 后端到底是在做什么?

新手程序员通常会走入一个误区,就是认为学习了一门语言,就可以称为是某某语言工程师了。但事实上真的是这样吗?其实并非如此。 今天我们就来聊一聊,Java 开发工程师到底开发的是什么东西。...

今天 20:40
5
0
用HttpUrlConnection伪造成HttpClient

https://www.jianshu.com/p/27ad06cc39d2

今天 20:38
4
0
2.设计模式之三:工厂方法模式【创建型模式】

在现实生活中社会分工越来越细,越来越专业化。各种产品有专门的工厂生产,彻底告别了自给自足的小农经济时代,这大大缩短了产品的生产周期,提高了生产效率。 同样,在软件开发中能否做到软...

今天 20:21
4
0
java线程池,Executor框架,Callable,Future

package com.yh.tools.thread; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import java.util.ArrayList; import java.util.List; import java.util.concurrent.Callable; im...

今天 18:05
6
0
Java 11 新特性

java 11 是继 java8 之后的第一个LTS版本。因此有必要针对它进行一些深入的学习,虽然短时间内java8 还是主流版本。当然,如果从java8基础上升级,几乎可以确定目标就是java11。 同时也要明确...

今天 17:39
9
0
Python基础知识

编译型语言 编译型语言是指使用专门的编译器,针对特定平台(操作系统)将某种高级语言源代码,一次性“翻译”成可被该平台硬件执行的机器语言(包括机器指令和操作数),并包装成该平台所能...

今天 17:10
5
0
Python基础知识

编译型语言 编译型语言是指使用专门的编译器,针对特定平台(操作系统)将某种高级语言源代码,一次性“翻译”成可被该平台硬件执行的机器语言(包括机器指令和操作数),并包装成该平台所能...

今天 17:07
3
0
C++基础知识点

计算机语言 计算机不能理解高级语言,只能理解机器语言,必须要将高级语言翻译成机器语言,翻译的方式有两种,一种是编译,一种是解释 解释型语言,在运行程序时进行翻译,每个语句在执行时逐...

今天 17:04
4
0
大家久等了,改造版阿里巴巴 sentinel 控制台终于开源了

前言 最近几天,好几个小伙伴在后台询问,改造后的 sentinel-dashboard 什么时候开源。讲真,不是不想给大家放出来,是因为一些地方还没有完善好,怕误导了大家,在经过了一个星期业余时间的...

今天 16:31
12
0
超炫酷的 IntelliJ IDEA 插件(一)

工善其事必先利器 打开setting文件选择Plugins选项 Ctrl + Alt + S File -> Setting 我的idea是最新版本2019.02 有的和别人界面可能不一样 主界面(左边那个箭头是外网搜索,右边哪个箭头是已经...

今天 16:28
8
0
超详细的MySQL8.0.17版本安装教程

下载MySQL MySQL的官网地址:https://www.mysql.com/。 如下图所示: 然后点击DOWNLOADS ==> Community,选择MySQL Community Server。如图所示: 滑到页面的最下面,找到Recommended Downl...

今天 16:09
11
0
复杂场景下的 typescript 类型锚定 (1) ----- 对象索引提取

前言:在编写 typescript 应用的时候,有时候我们会希望复用或者构造一些特定结构的类型,这些类型只从 typescript 靠内建类型和 interface、class 比较难以表达,这时候我们就需要用到类型推...

今天 15:52
4
0
桶排序

1.原理图 2.代码 public static void main(String[] args) { // 输入元素均在 [0, 10) 这个区间内 float[] arr = new float[] { 0.12f, 2.2f, 8.8f, 7.6f, 7.2f, 6.3f, 9.0f, 1.6f, 5.6f, 2...

今天 15:35
6
0
Redis的这八个问题,验证你是否熟悉掌握Redis

1、为什么使用Redis 分析:博主觉得在项目中使用redis,主要是从两个角度去考虑:性能和并发。当然,redis还具备可以做分布式锁等其他功能,但是如果只是为了分布式锁这些其他功能,完全还有其...

今天 15:35
21
0
利用 python+plotly 制作双波源干涉三维图像

本人在学习完制作双波源干涉现象的的二维Contour Plots图像之后,发现 plotly 还有3D 图像制作,也就是3D Surface Plots,这个更能展示双波源干涉现象的结果,果然学之。中间有些地方要说明一...

今天 15:31
8
0
idea 提交拉取代码,解决冲突

继上两篇文章,本篇重点。所用的都是项目实际操作 提交代码 新建文件提交代码 idea自动提醒你是否加入到本地缓存(点击add就是添加如果不添加提交不上去事后需要手动提交 ps:快捷键是ctrl+alt+...

今天 15:16
3
0
好程序员Java教程分享Java中this的几种用法

  好程序员Java教程分享Java中this的几种用法,this关键字必须放在非静态方法里面   this关键字代表自身,在程序中主要的使用用途有以下几个方面:   ?使用this关键字引用成员变量   ...

今天 15:11
9
0

没有更多内容

加载失败,请刷新页面

返回顶部
顶部
天津时时彩