个人简介

Echo Blog


江湖无名 安心练剑
  • Java Shutdownhook-优雅的关闭服务
    什么是ShutdownHook? 在Java程序中可以通过添加关闭钩子,实现在程序退出时关闭资源、平滑退出的功能。 使用 Runtime.addShutdownHook(Thread hook) 方法,可以注册一个JVM关闭的钩子,这个钩子可以在以下几种场景被调用: 程序正常退出 使用System.exit() 终端使用Ctrl+...
    2019-10-30 03:18:30 | Java
  • 字节码概览
    class 文件简介及加载 Java编译器编译好Java文件之后,产生 .class 文件在磁盘中。 这种class文件是二进制文件,内容是只有JVM虚拟机能够识别的机器码。 JVM虚拟机读取字节码文件,取出二进制数据,加载到内存中,解析 .class 文件内的信息,生成对应的 Class对象: 文件格式 class字节码文件是根据JVM虚拟机规范中规定的字节码组织规则生成的、...
    2019-10-30 03:18:30 | Java
  • 字节码生成-Byte Buddy
    Byte Buddy Byte Buddy 是一个代码生成和操作库,用于在Java应用程序运行时创建和修改Java类,而无需编译器的帮助。 除了Java类库附带的代码生成实用程序外,Byte Buddy还允许创建任意类,并且不限于实现用于创建运行时代理的接口。 此外,Byte Buddy提供了一种方便的API,可以使用Java代理或在构建过程中手动更改类。 简洁优雅的 api 为了...
    2019-10-30 03:18:30 | Java
  • 从零开始的 windows 开发环境搭建-02-idea
    IDEA 常用的设计 常见设置 参见 idea 工具 需要调整的地方 font-size 直接 crtl+alt+s 设置 font serial 相关 直接搜索,设置为系列化的对象生成唯一标识 设置 java 文件头 java 文件还是很需要文件头的,建议常用如下: file and code template /** * <p> project: ${...
    2019-09-26 14:35:36 | Windows
  • 从零开始的 windows 开发环境搭建-01-git
    GIT 拉取报错 报错信息 $ git clone https://github.com/houbb/houbb.github.io.git Cloning into 'houbb.github.io'... remote: Enumerating objects: 138, done. remote: Counting objects: 100% (138/138), done. re...
    2019-09-26 14:35:36 | Windows
  • 从零开始的 windows 开发环境搭建-00-overview
    背景 这段时间全部重新装的 windows 环境,感觉每次都需要整理一下 windows 相关的环境信息。 这里统一整理一下,便于以后查阅。 常用软件列表 chrome 下载安装 chrome 浏览器 下载失败问题 一直下载失败,调增下设置,下载文件夹修改为存在的文件夹即可。 输入法 使用 sougou 输入法。 管理工具 火萤酱(火柴) 下载。 垃圾软件下载...
    2019-09-26 14:35:36 | Windows
  • 性能测试框架-Performance
    性能测试需求 我们经常需要对代码的性能进行压测,如果全部自己写一个工具,还是很消耗时间的。 junit 如果你使用 junit,可以直接结合 junitperf 进行编写。 简单的 main() 如果你直接想测试验证下,那也不是不行。 此处直接给出一个测试验证的代码模板。 import org.slf4j.Logger; import org.slf4j.LoggerFacto...
    2019-09-26 14:35:36 | Tool
  • Java BigDecimal 深入学习
    BigDecimal 遇到的坑 现象 public static void main(String[] args) { BigDecimal one = new BigDecimal("60"); BigDecimal two = new BigDecimal("60.00"); System.out.println(one.equals...
    2019-09-26 14:35:36 | Java