首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
愤怒的酸菜鱼
掘友等级
后端开发工程师
那棵树看起来生气了
获得徽章 4
动态
文章
专栏
沸点
收藏集
关注
作品
赞
49
文章 49
沸点 0
赞
49
返回
|
搜索文章
赞
文章( 49 )
沸点( 0 )
求你了,别再随便打日志了,教你动态修改日志级别!
之前写过一篇文章《明明有自动清理,日志还是把我的服务干爆了!》,介绍过一次大促故障,是因为日志量激增,导致服务器差点挂掉。 在那次问题发生之后,我开发了一个简单的日志降级的小工具,通过配置的方式,动态推送日志级别,动态修改线上的日志输出级别。并且把这份配置的修改配置到我们的预案…
Java 泛型
Java的泛型的好处,一是提高了代码的复用性和通用性,二是为类型增加一定的约束条件,可以由编译器检查类型,自动和隐式的转换类型。了解泛型要了解一下几个概念。
一日一设计模式0708——观察者模式
观察者模式,主要意图是定义对象间一对多的关系,一个对象的状态有所改变,其他对象都能及时的得到通知并自动更新。利用观察者模式,将观察对象和其他对象之间解耦。 缺点:当观察对象过多时,广播的方式,会比较慢;其次,万一开发过程中,存在循环引用,那会无限通知下去。 关键代码:将观察对象…
一日一设计模式0701——装饰者模式(Java中的I/O流)
先给自己定个小目标,因为之前一直对设计模式不是特别熟悉,用起来总是感觉很生疏。因此,从今天开始,将会进行为期一个月左右的设计模式的学习和整理,借此增加对设计模式的了解和应用能力。设计模式,归根结底,还是一种代码设计的思想和代码设计的风格,设计模式的使用,会对代码进行精简,使用设…
当你还不懂反射的时候我已经用反射为女朋友做了公众号
主要想趁热聊点有趣的东西,说说看我这边是如何利用反射进行接口分发的。 之后再将拿到这个注解内的FuntionTypeEnum,然后再将该对象和该方法组装成一个Action后放入actionMap中,也就是说后面只要我们拿到了对应的FuntionTypeEnum枚举,就可以通过这…
CompletableFuture使用大全,简单易懂
CompletableFuture是高级的多线程功能,支持自定义线程池和系统默认的线程池,是多线程,高并发里面,经常需要用到的比直接创建线程,要简单易用的方法。 CompletableFuture主要是用于异步调用,内部封装了线程池,可以将请求或者处理过程,进行异步处理。创建线…
技术总监手把手教我如何消除项目中丑陋的Try{}Catch{},获益匪浅
软件开发过程中,不可避免的是需要处理各种异常,就我自己来说,至少有一半以上的时间都是在处理各种异常情况,所以代码中就会出现大量的try {...} catch {...} finally {...} 代码块,不仅有大量的冗余代码,而且还影响代码的可读性。比较下面两张图,看看您现…
Java8的CompletableFuture进阶之道
作为Java 8 Concurrency API改进而引入,本文是CompletableFuture类的功能和用例的介绍。同时在Java 9 也有对CompletableFuture有一些改进,之后再进入讲解。 Future异步计算很难操作,通常我们希望将任何计算逻辑视为一系列…
Java线程池ThreadPoolExecutor源码解析
今天看到Java的线程池,又看到一款这么好看的markdown的编写工具,顺便就写一篇读源码笔记,作为学习和读源码的第一步。本文会将ThreadPoolExecutor的部分源码粘贴到这边,然后一步一步的注释和解读关键部分。 第一步:如果当前正在执行的Worker数量比core…
下一页
个人成就
文章被点赞
66
文章被阅读
39,038
掘力值
631
关注了
27
关注者
12
收藏集
2
关注标签
60
加入于
2018-01-18