首页
首页
沸点
课程
直播
活动
竞赛
商城
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
java
订阅
Java个体户
更多收藏集
281篇文章 · 0订阅
大家都说 Java 反射效率低,你知道原因在哪里么
我们在 Java 开发中,难免会接触到反射,而在一些框架中,反射的运用更是常见。我相信,每次提到反射,大家的第一反应一定是反射效率低,尽量少使用。 这篇文章就来探索一下这些问题。 由于本机上安装的是 openjdk 12,所以这里就使用 openjdk 12 源码进行分析。 我…
Java 反射真的很慢吗?
说到Java 中的反射,初学者在刚刚接触到反射的各种高级特性时,往往表示十分兴奋,甚至会在一些不需要使用反射的场景中强行使用反射来「炫技」。而经验较为丰富的长者,看到反射时往往会发出灵魂三问:为什么要用反射?反射不会降低性能么?不用还有什么办法可以解决这个问题? 在我们分析具体…
JAVA | Guava EventBus 使用 发布/订阅模式
EventBus 是 Guava 的事件处理机制,是观察者模式(生产/消费模型)的一种实现。 观察者模式在我们日常开发中使用非常广泛,例如在订单系统中,订单状态或者物流信息的变更会向用户发送APP推送、短信、通知卖家、买家等等;审批系统中,审批单的流程流转会通知发起审批用户、审…
【肥朝】计算时间差,你的方式或许不是最佳实践!
我们计算两段代码时间差,很多同学公司的代码是采用以下这种方式。 首先先说明,这种方式并不是不行。按照“能跑就行”的原则,这段代码,肯定是能用的!但是这并不是最佳实践,为何? 虽然文中的每个字都认识,但是这段话想表达的意思你可能还是不太清楚,有句话叫做,不怕现实,就怕对比。那么我…
又踩到Dubbo的坑,但是这次我笑不出来
由于工作性质的原因,上班时间根本抽不出时间做其他事,修bug,都只能下班时间来做,因此周六就到公司搬砖了。 中文意思就是,并发修改异常。也就是我们常说的fail-fast(快速失败)。当然肥朝更认为,快速失败是一种思想,比如Spring会在启动的时候做大量的检查,什么bean找…
SpringBoot自适应异常处理
强烈建议先用自己常用的搜索引擎搜索一遍,然后再看一下自己公司代码,看看是不是类似这么一段代码再往下看。 当然很多同学可能会说,我们就已经和客户端约定很好了,只会有json,不会有返回html的场景。所以,不做这个适应,其实也是没问题的。但是如果你是做基础架构的同学,这个功能你是…
Spring Boot 中的 AOP,到底是 JDK 动态代理还是 Cglib 动态代理?
周六发了一个抽奖送书的活动,不过抽奖的人不多,中奖率蛮高的,小伙伴们可以去试试运气: 指令重排序?代码不按写的顺序执行吗?送书啦! 好啦,开始今天的正文。 大家都知道,AOP 底层是动态代理,而 Ja
channel 和 stream 的区别
前言 之前学习 netty 的时候,一直觉得这两者很相似,当时又不懂具体区别在哪,只知道在使用 NIO 编程的时候,先获得一个 stream 然后通过 stream 获得一个 channel, 最后通
⚡效率工具(第一期)⚡ - 推荐一款对象映射神器「MapStruct」
工作中常常出现的一种情况是,我们需要把 Entity/PO/DTO/VO/QueryParam 之间做转换,解决这类问题的工具有很多,总得挑一款合适的
Mapstruct源码解析- 框架实现原理
只有用过Mapstruct才知道它是有多么的好用与顺手。本篇主要讲述Mapstuct的实现原理,它是怎么去生成转换代码的过程,让大家对这个框架的实现原理有个比较透彻的了解。 1. Java动态编译与JSR 269 首先,我们先重温下java的编译过程:Java源代码-->编译器…