Java IOC-00-ioc 是什么
IOC 框架
spring-framework 和 google guice
IOC 是什么
控制反转(Inversion of Control,缩写为IoC),是面向对象编程中的一种设计原则,可以用来减低计算机代码之间的耦合度。
其中最常见的方式叫做依赖注入(Dependency Injection,简称DI)。
通过控制反转,对象在被创建的时候,由一个调控系统内所有对象的外界实...
2019-11-06 03:18:30 |
Java
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-01-字节码生成入门介绍
Byte Buddy
Byte Buddy 是一个代码生成和操作库,用于在Java应用程序运行时创建和修改Java类,而无需编译器的帮助。
除了Java类库附带的代码生成实用程序外,Byte Buddy还允许创建任意类,并且不限于实现用于创建运行时代理的接口。
此外,Byte Buddy提供了一种方便的API,可以使用Java代理或在构建过程中手动更改类。
简洁优雅的 api
为了...
2019-10-30 02:18:30 |
Java
Byte Buddy-02-替换类实现
替换类实现
maven 引入
<dependencies>
<dependency>
<groupId>net.bytebuddy</groupId>
<artifactId>byte-buddy</artifactId>
<version>1.8....
2019-10-30 02:18:00 |
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