首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
java
订阅
江城
更多收藏集
微信扫码分享
微信
新浪微博
QQ
13篇文章 · 0订阅
虚拟线程 - VirtualThread源码透视
前提 JDK19于2022-09-20发布GA版本,该版本提供了虚拟线程的预览功能。下载JDK19之后翻看了一下有关虚拟线程的一些源码,跟早些时候的Loom项目构建版本基本并没有很大出入,也跟第三方J
聊聊 Java8 以后各个版本的新特性
某天在网上闲逛,突然看到有篇介绍 Java 11 新特性的文章,顿时心里一惊,毕竟我对于 Java 的版本认识还停留在 Java 8 上,而日常使用的语法和 API 还停留在 Java 7 上。于是抽时间看了看 Java 8 以后各个版本的特性,做了一个总结。 JDK 全称 J…
JsonPath - 根据表达式路径解析Json
在xml的使用过程中,对于xml的解析我们知道可以使用xpath的方式,随意的获取到我们想要的属性值。那么在使用json时,我们能不能实现同样的操作呢? 我们可以先将json数据一次解析,然后多次使用,提升性能。json-path提供了如ReadContext ,Documen…
Java线程池「异常处理」正确姿势:有病就得治
更多精彩文章。 假设我们有一个线程池,由于程序需要,我们向该线程池中提交了好多好多任务,但是 这些任务都没有对异常进行try catch处理,并且运行的时候都抛出了异常 。这会对线程池的运行带来什么影响? 正确答案是:没有影响。 这可不是好事情。 想一下,如果是你开发了一个线程…
告别硬编码,让你的Excel导入导出拥抱变化(Java)
Excel导入导出在软件开发中非常常见,只要你接触过开发,就一定会遇到。相信很多人会跟我一样选择用Apache POI来完成这项工作,在感受到POI功能强大的同时,我的团队也遇到了以下问题: AutoExcel解决了上述问题,它非常简单,只需要少量的代码即可完成复杂的导入导出;…
为什么阿里巴巴禁止使用BigDecimal的equals方法做等值比较?
BigDecimal,相信对于很多人来说都不陌生,很多人都知道他的用法,这是一种java.math包中提供的一种可以用来进行精确运算的类型。 很多人都知道,在进行金额表示、金额计算等场景,不能使用double、float等类型,而是要使用对精度支持的更好的BigDecimal。…
String字符串拼接性能优化
java.lang.String拼接操作是很常见的操作,这篇blog主要分析一下String拼接操作的性能优化。 我们最初使用的拼接方式应该是操作符拼接,也就是+。 我们先来看一下这种操作背后的原理,首先看一段代码。 可以看到,上述代码在编译之后,我们用javap -c命令反编…
JVM之压缩指针(CompressedOops)
对于32位机器,进程能使用的最大内存是4G。如果进程需要使用更多的内存,需要使用64位机器。 对于Java进程,在oop只有32位时,只能引用4G内存。因此,如果需要使用更大的堆内存,需要部署64位JVM。这样,oop为64位,可引用的堆内存就更大了。 注:oop(ordina…
netty极简教程(五):Netty的Reactor模型演进及JDK nio聊天室实现
从Selector上获取所有注册的Channel然后遍历,如果不是ServerSocketChannel或者当前消息的Channel,就将消息发送出去. 在 1与2处,我们加入了线程池处理,不再在reactor主线程中做任何io操作。 这便是reactor多线程模型 子Sele…
终于我用JOL打破了你对java对象的所有想象
使用面向对象的编程语言的好处就是,虽然没有女朋友,但是仍然可以new对象出来。Java是面向对象的编程语言,我们天天都在使用java来new对象,但估计很少有人知道new出来的对象到底长的什么样子,是美是丑到底符不符合我们的要去? 对于普通的java程序员来说,可能从来没有考虑…