8 明明如月学长

尚未进行身份认证

我要认证

喜欢技术,热爱编程

等级
TA的排名 975

《过目不忘的读书方法》读书摘要

最近读了桦泽紫苑写的《过目不忘的读书方法》,深受启发。摘录部分比较不错的表述:前言部分1 有大量的”输入“,才能有大量的”输出“。为什么要读书1 百货商场地下层的试吃理论1 网上的信息都是碎片化的,不成体系。2 一年就过时的是”信息“,十年都不过时的才是“知识”。3 网络上的是“信息”,书上的是“知识”。(指点有待商榷,但是大概率是这样;换句话说“经典的书上知识居多”)2 时间购买理论每个人每天都有 24 个小时,只有时间是最公平的。所以,到底能不能获得幸福,完全看怎么去利用有限的时间。

2020-06-27 10:48:43

arthas 执行ognl表达式ClassNotFoundException

1 问题描述不希望通过编码的方式,想通过arthas 获取spring 属性。参考一篇文章https://my.oschina.net/u/4255537/blog/3357593 根据applicationcontext 工具类获取配置属性的方法。实际执行时总是报找不到类, 但是通过sc 命令可以找到该类[arthas@312]$ ognl '#context=@com.xxx.ApplicationContextHelper@appCtx,#context.getEnvironment().ge

2020-06-03 23:05:24

参加孤尽老师DIY班一期的主要收获

一、背景前一段时间孤尽老师组织的 DIY 班一期结束,本人有幸走到了最后,成为最后的十几个人之一,收到了个人的证书、DIY纪念章和获胜团队奖杯。虽然每一期都会有人淘汰,但是正是因为这种淘汰机制,才能够淘汰掉一些不够坚持的人,只有有危机感才能更认真地对待 DIY 的每一份作业。只有珍惜机会,有毅力的人才更容易走到最后。历时一年多的 DIY 班,给自己带来了很多启发和成长,下面讲讲一些重要的体会。二、主要收获2.1 两种能力孤尽老师常提到的两种能力,也是 DIY班前几次作业中提到的:学习如何学习

2020-05-13 22:19:23

你真得知道Java 中有几种创建线程的方式吗?

一、背景本文给出两个简单却很有意思的线程相关的题目题目1:Java 中有几种创建线程的方式?如果面试中遇到这个问题,估计很多人会非常开心,然而网上的诸多答案真的对吗?题目2:public static void main(String[] args) { Thread thread = new Thread(() -> System.out.println("Runnab...

2020-04-11 12:54:37

docker for mac更换国内镜像源

一、背景最近想要下载 neo4j 的 docker 镜像,发现速度不是一般的慢,囧…于是乎,类似于 maven 有国内镜像,docker 是不是也有呢?搜了一下,的确有。二、用法1、打开 docker 选择 Preferences2、切换到 Daemon 选项卡,在 Registry mirrors 添加想要添加的国内镜像如:https://docker.mirrors.ust...

2020-03-23 23:56:32

Java 性能测试框架工具-JunitPerf

一、背景最近写文章需要了解和对比一些函数的性能差异,因此在网上找到了一个简单易用的 Java 性能测试框架 junitperf。官方介绍它的优势是:可以和 Junit5 完美契合。使用简单,便于项目开发过程中的测试实用。提供拓展,用户可进行自定义开发。二、范例2.1 依赖<!-- https://mvnrepository.com/artifact/org.junit.j...

2020-03-22 23:07:59

Java 14 instanceof 的模式匹配

Java 14 instanceof 的模式匹配1. 概述本文是 Java 14 系列教程的其中一篇,本文主要讲述 InstanceOf 的模式匹配。JEP 305 的核心目的是让创建对象更简单、简洁、可读性更强而且更加安全。2. 传统的 instanceOf 操作很多时候,我们需要检查对象的类型,然后根据类型去编写不同的逻辑。通常会使用 instanceof 进行判断,然后再对对象进行...

2020-03-21 23:59:16

将一个接口响应时间从2s优化到 200ms以内的一个案例

一、背景在开发联调阶段发现一个接口的响应时间特别长,经常超时,囧…本文讲讲是如何定位到性能瓶颈以及修改的思路,将该接口从 2 s 左右优化到 200ms 以内 。二、步骤2.1 定位定位性能瓶颈有两个思路,一个是通过工具去监控,一个是通过经验去猜想。2.1.1 工具监控就工具而言,推荐使用 arthas ,用到的是 trace 命令具体安装步骤很简单,大家自行研究。我的使用步骤是...

2020-03-01 14:49:11

深度剖析'StringBuilder' can be replaced with 'String' 提示

一、背景在写代码的时候使用 StringBuilder 进行字符串拼接时,IDEA 很可能会给出下面的提示: ‘StringBuilder’ can be replaced with ‘String’ 。那么为什么会给出这种提示?这种提示意味着什么?二、思考之前有讲过:“每一个疑问背后都隐藏着至少一个盲点和学习的绝佳机会”。因此我们不会轻易放过这个机会。另外很多人这个时候可能就要开始百度...

2020-02-15 14:02:57

临时文件传输工具推荐

一、背景在工作和学习过程中有时候需要临时传输文件,尤其是大文件。此时如果使用某度网盘,由于你懂得的原因,下载非常慢。因此需要寻找好用的替代方案。下面介绍两个用过的不错的临时文件传输工具。二、介绍2.1 牛奶快穿https://cowtransfer.com/优点:界面非常简洁,可以不用登陆即可添加文件获取取件码。缺点:免费用户限制较多。...

2020-02-15 12:23:42

Java finally 的用法,看这一篇就够了

1.概述在本教程中,我们将研究 Java 中的 finally 关键字的用法。 我们将看到如何在错误处理中与 try / catch 块一起使用它。 尽管 finally 的目的是保证代码被执行,但是我们还将讨论 JVM 不执行 finally 代码的特殊情况。我们还将讨论一些常见的陷阱,在这些陷阱中,finally 块可能会产生意外的结果。2.什么是finallytry 关键字最后可以定...

2020-01-05 12:51:20

使用OkHttp发送POST请求的快速入门指南

英文原文:https://www.baeldung.com/okhttp-post1介绍本文将介绍 OkHttp 客户端的基本用法。在本篇简短的技术文章中,我们将特别介绍 OkHttp 3.x 版本中发送Post请求的不同方式。2 基本的 POST 请求d我们可以使用 FormBody.Builder 构造基本的 RequestBody , 包含两个参数:用户名、密码,发送 POST请...

2020-01-01 22:46:36

细微之处见真章之StringUtils的isBlank函数细节解读

一、背景技术群里有一个老铁分享了一段 commons-lang 的 StringUtils 工具类的代码:public static boolean isBlank(final CharSequence cs) { int strLen; if (cs == null || (strLen = cs.length()) == 0) { return true;...

2019-12-28 15:20:34

Java 中的拷贝构造方法

1.介绍Java 中的拷贝构造方法是一种使用该类的一个对象构造另外一个对象的构造方法。当需要拷贝一个带有多个成员变量的复杂对象或者想构造已存在对象的深拷贝对象时非常有用。译者注:本文内容很简单,但是很实用。拷贝构造方法实战中用虽然用的不多,但是是一个非常不错的技巧。2.如何创造拷贝构造方法要创建拷贝构造方法,首先需要声明带有和本类相同类型的参数构造函数:public class E...

2019-12-20 23:21:24

简单源码解读之猜想验证

一、背景最近有一个朋友问,为啥 ArrayList 空参构造方法和有参构造方法的参数为 0 所用的空元素数组不用同一个。空参构造方法:/** * Constructs an empty list with an initial capacity of ten. */public ArrayList() { this.elementData = DEFAULTCAPACITY_E...

2019-12-19 00:25:07

尽信书不如无书之获取枚举值代码优化

1 背景实际开发中根据枚举的某个属性获取枚举值非常常见。如定义一个枚举:@Getterpublic enum CoinEnum { PENNY(1), NICKEL(5), DIME(10), QUARTER(25); CoinEnum(int value) { this.value = value; } private fi...

2019-12-13 00:55:20

每一个疑问背后都隐藏着至少一个盲点和学习的绝佳机会

一、背景之前我好多次谈到:“每一个疑问背后至少有一个知识盲区,隐藏着一次极佳的学习机会”。今天结合一个具体的案例,谈谈这个观念,顺便谈谈如何正确提问。今天有一个朋友问到:请教一个问题 为什么用lombox的build构建一个对象内部持有的另外一个对象 用io的方式进行深克隆 拿到的两个内部对象是一样的 但是如果用set的方式给内部持有对象赋值 深克隆出来的就不是同一个对象...

2019-12-13 00:32:31

论所谓“适合自己的方法”

一、背景听到很多同学总是强调找到“适合自己的方法”。但是发现很多人其实并不能真正理解什么才是“适合自己的方法”,这是一个看似简单但是非常严重的问题。本文发表一下自己的看法,希望能给一些同学带来不一样的启发。二、分析2.1 所谓适合自己的方法很多人所谓的“适合自己 ”,会认为对自己高效,另外隐含的条件是 学起来舒服。但是这里有一个非常严重而又容易被忽略的情况。你想找到...

2019-12-01 22:07:23

2019年Java生态状况

译者注:本文主要介绍 2019年 Java的生态状况。文章非常简短,希望大家学习技术的同时可以关注Java的发展状况。0 背景在过去的几周中,我一直在进行2019年年度“ Java状态”调查。在调查的第6个年投,我们有6707名开发人员参与了调查的回答。现在是公布结果的时间????1 不同Java 版本使用情况毫不意外,直到现在 Java8 依然生产环境中...

2019-12-01 16:23:01

校验两个Java Date是不是同一天的N种姿势

一、背景本文将介绍比较两个java.util.Date对象是不是代表同一天的N种姿势。首先介绍 Java自带 API实现,然后会介绍几种类库实现该功能。译者:比较两个对象是否是同一天本身难度不是很大,重点提醒大家多了解用到的其他类库,未来更多时间相关的功能需求,可以通过相关类库更方便地处理。二、Core JavaDate类表示特定的时间瞬间,精度为毫秒。为了找...

2019-12-01 15:53:11

查看更多

CSDN身份
  • 博客专家
勋章 我的勋章
  • GitHub
    GitHub
    绑定GitHub第三方账户获取
  • 签到新秀
    签到新秀
    累计签到获取,不积跬步,无以至千里,继续坚持!
  • 技术圈认证(专家版)
    技术圈认证(专家版)
    博客专家完成年度认证,即可获得
  • 推荐红人
    推荐红人
    发布高质量Blink获得高赞和评论,进入推荐栏目即可获得
  • 精彩红人
    精彩红人
    发布高质量Blink获得高赞和评论,进入精彩栏目即可获得
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 1024勋章
    1024勋章
    #1024程序员节#活动勋章,当日发布原创博客即可获得
  • 勤写标兵Lv4
    勤写标兵Lv4
    授予每个自然周发布9篇以上(包括9篇)原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。
  • 学习力
    学习力
    《原力计划【第二季】》第一期主题勋章 ,第一期活动已经结束啦,小伙伴们可以去参加第二期打卡挑战活动获取更多勋章哦。
  • 分享王者
    分享王者
    成功上传51个资源即可获取