51CTO首页
AI.x社区
博客
学堂
精品班
软考社区
免费课
企业培训
鸿蒙开发者社区
WOT技术大会
IT证书
公众号矩阵
移动端
短视频
免费课程
课程排行
直播课
软考学堂
全部课程
厂商认证
IT技术
24年11月软考
PMP项目管理
免费题库
在线学习
文章
资源
问答
课堂
专栏
直播
51CTO
鸿蒙开发者社区
51CTO技术栈
51CTO官微
51CTO学堂
51CTO博客
CTO训练营
鸿蒙开发者社区订阅号
51CTO软考
51CTO学堂APP
51CTO学堂企业版APP
鸿蒙开发者社区视频号
51CTO软考题库
鸿蒙开发者社区
首页
帖子
问答
资源
课堂
直播
发现
登录/注册
51CTO
中国优质的IT技术网站
51CTO博客
专业IT技术创作平台
51CTO学堂
IT职业在线教育平台
活动
短视频
专栏
极客Show
鸿蒙技术特刊
我的关注
全部帖子
操作系统
OpenHarmony
HarmonyOS
其他
应用开发
卡片开发
三方库
IDE
其他
设备开发
海思开发板
树莓派
其他
框架语言
C/C++
Java
JavaScript
ArkUI / eTS
其他
其他
物联网
云原生
数据库
操作系统
大数据
人工智能
开发语言
其他
社区版务
社区公告
社区生活
意见反馈
社区规则
社区活动
默认
发布时间
热度
原创
精华
热门标签
鸿蒙
华为
HarmonyOS
几道高频的JVM面试题
前言大家好,我是程序员田螺。整理了几道高频的JVM面试题,小伙伴们加油呀!•JVM内存为什么要分成新生代,老年代•新生代中为什么要分为Eden和Survivor•JVM中一次完整的GC流程是怎样的•CMS收集器和G1收集器的区别•JVM调优•CPU飙升如何排查1.JVM内存为什么要分成新生代,老年代?1.1JVM共享内存划分•共享内存区持久代+堆(jdk1.8及以上jvm废弃了持久代)•持久代方法区+其他•Java堆...
chujichenxuyuan
2回复
8046浏览
JVM
《重学Java高并发》Disruptor使用实战
上文已经详细介绍了disruptor,也体会了并发编程的奥妙,接下来将理论结合实战,本文和大家分享一下disruptor的使用,加深对disruptor工具包对理解。1、disruptor常用类一览disruptor的常用类体系如下图所示:其职责说明如下:RingBuffer环形队列,disruptor中的核心存储类Sequencer序号实现器,维护发送者发送的序号生成逻辑、消费方获取可消费的序号,是无锁化访问的核心实现类,共有两个实现类,MultiProducerSequencer为多...
yoursoft
0回复
4120浏览
Java
《重学Java高并发》disruptor是如何做到百万级吞吐?
Disruptor是业界非常出名的单机版高性能队列,官方宣传能达到百万级吞吐,那disruptor是如何做到的呢?其核心秘诀如下:破除伪共享对象池无锁化设计批处理上面这些观点,网上已经提了N遍,没关系,本文将结合代码、图解的方式,与大家一起探究实现原理,希望能给读者朋友们不一样的感悟。提到Disruptor,必然会提到RingBuffer,disruptor环形队列,是整个Disruptor是基座,本文将尝试以RingBuffer为突破口,揭晓disruptor的核心...
yoursoft
0回复
3894浏览
Java
中通又一个承载千亿级流量平台开源啦!!!
从JDK5开始,Java提供了注解新特性,随后,注解如雨后春笋般被大量应用到各种开发框架中,其中,最具代表的是Spring。在注解出现以前,Spring的配置通常需要写到xml中。基于xml配置,有着十分繁琐,难以记忆,容易出错等弊端。Spring开发者也意识到了这个问题,于是开始引入大量的注解,让注解替代传统的xml配置。到了大数据时代,以Hadoop、Spark、Flink为代表的分布式计算引擎先后横空出世。相信很多从事过JavaWeb开发工作的...
WilliamGates
0回复
2623浏览
Java
try 语句如何更优雅的关闭资源?请看这里!
一、摘要trywithresources是JDK7中引入的一个新的异常处理机制,它能让开发人员不用显式的释放trycatch语句块中使用的资源。比如,我们以文件资源拷贝为示例,大家所熟悉的trycatchfinally写法如下:publicclassResourceTest1{publicstaticvoidmain(String[]args){BufferedInputStreambinnull;BufferedOutputStreamboutnull;try{binnewBufferedInputStream(newFileInputStream(newFile("test.txt")));b...
maxdl
0回复
3295浏览
java
一文教你如何通过 Stream API 批量 Mock 数据
在日常开发的过程中我们经常会遇到需要mock一些数据的场景,比如说mock一些接口的返回或者说mock一些测试消息用于队列生产者发送消息,可能很多时候我们都是使用一些固定的case或者一条相同的数据重复使用。今天阿粉就教大家用Stream去构造一些伪真实的一些数据。Mock任意个UUID首先我们通过普通写法来构造100个UUID,代码如下相信大家都会写,就不多说了。publicstaticList<U...
maxdl
0回复
2968浏览
java
详细解读ThreadLocal的内存泄露
说到内存溢出,我相信各位都知道是什么,但是说到内存泄露,而且还是ThreadLocal,阿粉就得来说一下这个了,毕竟如果面试的时候被问到ThreadLocal的内存泄露,是不是有可能不太了解了呢,今天阿粉来说一下这个ThreadLocal的内存泄露的原因,以及如何从开发中去避免这个问题。什么是内存泄露说到内存泄露,阿粉就得说一下,这个可能对于初中级的程序员来说,还是比较陌生的,为什么这么说,是因为,JVM有自己的内存回收机制,所以...
maxdl
0回复
2591浏览
java
一文解读所有HashMap的面试题
关于HashMap阿粉相信大家再面试的时候,是非常容易被问到的,为什么呢?因为至少是在JDK8出来之后,非常容易被问到关于HashMap的知识点,而如果对于没有研究过他的源代码的同学来说,这个可能只是说出一部分来,比如线程安全,链表+红黑树,以及他的扩容等等,今天阿粉就来把HashMap上面大部分会被在面试中问到的内容,做个总结。HashMap说到HashMap想必大家从脑海中直接复现出了一大堆的面试题,HashMap的数据结构JDK7和JDK8Ha...
maxdl
0回复
1966浏览
java
为什么我在公司里访问不了家里的电脑?
上篇文章「为什么我们家里的IP都是192.168开头的?」提到,因为IPv4地址有限,最大42亿个。为了更好的利用这有限的IP数量,网络分为局域网和广域网,将IP分为了私有IP和公网IP,一个局域网里的N多台机器都可以共用一个公网IP,从而大大增加了"可用IP数量"。收发数据就像收发快递当我们需要发送网络包的时候,在IP层,需要填入源IP地址,和目的IP地址,也就是对应快递的发货地址和收货地址。IP报头里含有发送和接收IP地...
love374
0回复
3473浏览
网络通讯
自定义的配置文件,如何注入到SpringBoot?
一、简介在实际的项目开发过程中,我们经常需要将某些变量从代码里面抽离出来,放在配置文件里面,以便更加统一、灵活的管理服务配置信息。比如,数据库、eureka、zookeeper、redis、mq、kafka等服务组件的连接参数配置,还有我们自定义的项目参数配置变量。当然,实际上根据当前的业务需求,我们往往会自定义参数,然后注入到代码里面去,以便灵活使用!今天,我们就一起来聊一聊SpringBoot加载配置文件的几种玩法,如...
maxdl
0回复
4136浏览
java
面试官提问:什么是前缀索引?
一、什么是前缀索引?所谓前缀索引,说白了就是对文本的前几个字符建立索引(具体是几个字符在建立索引时去指定),比如以产品名称的前10位来建索引,这样建立起来的索引更小,查询效率更快!有点类似于Oracle中对字段使用Left函数来建立函数索引,只不过MySQL的这个前缀索引在查询时是内部自动完成匹配的,并不需要使用Left函数。二、为什么要用前缀索引?可能有的同学会发出疑问,为什么不对整个字段建立索引呢?一般来说,当...
maxdl
0回复
3414浏览
java
一文带你了解 Spring 的 @Enable 开头的注解
前面的文章给大家介绍Spring的重试机制的时候有提到过Spring有很多Enable开头的注解,平时在使用的时候也没有注意过为什么会有这些注解,今天就给大家介绍一下。Enable注解首先我们先看一下有哪些常用的Enable开头的注解,以及都是干什么用的。EnableRetry:开启Spring的重试功能;EnableScheduling:开启Spring的定时功能;EnableAsync:开启Spr...
maxdl
0回复
3000浏览
java
Java 中的接口还可以这样用,你知道吗?
Java程序员都知道要面向接口编程,那Java中的接口除了定义接口方法之外还能怎么用你知道吗?今天阿粉就来带大家看一下Java中的接口还可以有哪些用法。基本特性我们先看一下接口的基本特性接口的定义需要使用关键字interface;接口定义的所有方法默认都是publicabstract;当一个具体的class去实现一个interface时,需要使用implements关键字;接口之间...
maxdl
0回复
2865浏览
java
从0学Java(一)编程语言和软件
什么是编程?编程就是和计算机交流,你写下要计算机逐一执行的命令,然后让计算机来执行。当然在现实生活中想要别人执行你的命令,首先得让对方听懂你说的话,计算机也一样,但计算机只能听懂16进制。那怎么办呢?难道我还要学习16进制?答案是:当然不用啦,学习编程语言就是为了让计算机能听懂你在说什么,你想让它做什么。如何让计算机听我的命令?这个时候我们需要一个软件,在这个软件中写程序,然后让它解释或者编译成计...
maxdl
0回复
2347浏览
java
代码开发技巧之快速逆向工程
我们都知道,在开发的时候,是百分百都能够使用到我们的实体类,各种工具类,而有些实体类,因为表中字段的增多,一个实体类,有可能有二三十个字段,而如果每一个字段都让我们自己去编辑,那你有一多半的时间,都会浪费在处理这个字段上面,所以,今天阿粉就来交给你,这个快速而又简单的根据表结构,生成实体类的小工具,逆向工我们都知道,在开发的时候,是百分百都能够使用到我们的实体类,各种工具类,而有些实体类,因为...
maxdl
0回复
2092浏览
java
从0学Java(二)变量与计算
首先要了解,任何程序都可以理解为有一些输入,将这些输入的数据记录下来,加以计算,然后输出的过程。我们已经知道用System.out.println可以让计算机输出,我们需要知道如何能让计算机读到我们输入的内容,我们还需要知道如何让计算机能记住我们输入的内容,以及如何进行相应的计算。这篇文章的内容将讲解以下知识点:①输入与输出,②变量与赋值,③浮点数的计算以及与整数之间的转换①输入与输出要读到程序的用户的输入,需...
maxdl
0回复
2169浏览
java
Spring的循环依赖,到底是什么样的
前一段时间,阿粉的读者给阿粉留言,说在面试的时候,有个面试官就问她,Spring的各种知识,Spring的生命周期,Spring的循环依赖是如何解决的。就这么几个问题,虽然回答的不是很好,但是也是很幸运的接到了offer,毕竟面试一般很少会因为一两个面试题回答的不好,就直接pass的,还是看综合表现的,既然问到阿粉这个Spring是如何处理循环依赖的了,那么阿粉就得来解释一下,Spring是如何处理循环依赖的。循环依赖什么是循环依赖...
maxdl
0回复
3948浏览
java
Java 远程调用失败?如何优雅的进行重试?
在日常开发的过程中我们经常会需要调用第三方组件或者数据库,有的时候可能会因为网络抖动或者下游服务抖动,导致我们某次查询失败。这种时候我们往往就会进行重试,当重试几次后依旧还是失败的话才会向上抛出异常进行失败。接下来阿粉就给大家演示一下通常是如何做的,以及如何更优雅的进行重试。常规做法我们先来看一下常规做法,常规做法首先会设置一个重试次数,然后通过while循环的方式进行遍历,当循环次数没有达...
maxdl
0回复
3235浏览
java
项目中到底该不该用 lombok?
一、摘要Java,作为一款非常热门的编程语言,尽管它有着非常丰富的语言特性,完全面向对象编程,编程高度规范化,但是也有一个最受大家诟病的一个缺点:啰嗦,尤其是当你开发了很多年之后,你会明显的感受到,相比动态语言,java定义变量之前,要先创建类,然后定义变量类型,每个类要写很多的getsettoStringhashCodeequals等等方法。尤其是当一个实体类,高达几十个变量时,写完get、set方法之后,一个实体类...
maxdl
0回复
3255浏览
java
Java注解与原理分析
使用的太多,被忽略的理所当然;一、注解基础注解即标注与解析,在Java的代码工程中,注解的使用几乎是无处不在,甚至多到被忽视;无论是在JDK源码或者框架组件,都在使用注解能力完成各种识别和解析动作;在对系统功能封装时,也会依赖注解能力简化各种逻辑的重复实现;基础接口在Annotation的源码注释中有说明:所有的注解类型都需要继承该公共接口,本质上看注解是接口,但是代码并没有显式声明继承关系,可以直接查看字节码...
pivoteic
0回复
1842浏览
Java
暂无内容
1
13
14
15
16
17
18
19
20
21
71
精选
客服
订阅鸿蒙技术特刊,精选内容抢先看
微信扫码关注,即刻订阅