JVM - 运行时内存区域

Java源代码文件(.java后缀)会被Java编译器编译为字节码文件(.class后缀),然后由JVM中的类加载器加载各个类的字节码文件,加载完毕之后,交由JVM执行引擎执行。

那在整个程序执行过程中,JVM中怎么存取数据和相关信息呢?

事实上在JVM中是用一段空间来存储程序执行期间需要用到的数据和相关信息,这段空间一般被称作为Runtime Data Area(运行时数据区),也就是我们常说的JVM内存。

Mehr lesen

JVM - 类加载过程

开启Java程序员进阶之旅,比较难啃的JVM。

Mehr lesen

设计模式 - 6大原则

关于设计模式的六大设计原则的资料网上很多,但是很多地方解释地都太过于笼统化,我也找了很多资料来看,发现CSDN上有几篇关于设计模式的六大原则讲述的比较通俗易懂,因此转载过来。

Mehr lesen

Java中'==' 和 equals()

“判断两个事物是否相等”,是编程中最常见的操作之一,在Java中,判断是否相等有两种方法,一种是使用“==”判断符,另一种是使用“equals()”方法,你是否曾因混用二者导致不可思议的bug?本篇文章将带你深入二者背后的判断原理。

Mehr lesen

Hash在Java中的应用

雅虎的 Chief Scientist ,Udi Manber 曾说过,在 yahoo 所应用的算法中,最重要的三个是:Hash,Hash 和 Hash。其实从上文中所举的git用sha1判断文件更改,密码用MD5生成摘要后加盐等等对Hash的应用可看出,Hash的在计算机世界扮演着多么重要的角色。

Mehr lesen

校友录设计

校友录网站。作为毕业设计,为母校设计校友交流平台。基于javaWeb,由Maven构建管理,采用Spring+SpringMVC+MyBatis框架,用EhCache做数据缓存。门户网站采用BootStrap设计界面,后台管理网站用AmazeUI设计界面。

Mehr lesen

校友录设计

校友录网站。作为毕业设计,为母校设计校友交流平台。基于javaWeb,由Maven构建管理,采用Spring+SpringMVC+MyBatis框架,用EhCache做数据缓存。门户网站采用BootStrap设计界面,后台管理网站用AmazeUI设计界面。

Mehr lesen

依赖注入

讲真的,今年就业形势相当不好,对IT从业者的专业能力要求将变得更高。近来一边忙学业,一边学习Java基础和框架源码,为不久之后的招聘做准备。

打算从Java7、Java8d的版本新特性着手,再深入JVM、并发编程等。Java7中发布了JSR-330标准的DI特性。IoC是控制反转,DI是依赖注入。依赖注入(控制反转的一种形式)是Java开发主流中一个重要的范式。

Mehr lesen

分布式-开启SpringBoot微服务之旅

分布式架构可以降低程序错误给整体系统带来的风险,也可以通过不断扩张主机的数量以实现横向水平的性能扩展,因此我们需要分布式架构。

Mehr lesen

Docker入门

Linux Containers Linux容器 缩写LXC,其对进程进行隔离,而非一个完整的操作系统。Docker属于LXC的一种封装,提供简单易用的容器使用接口。Docker主要用于提供一次性环境、提供 弹性的云服务、组件微服务架构。

Mehr lesen