240 发简信
IP属地:福建
  • 四种方式构建可拓展的系统

    阅读 Scalability for Dummies 的小抄,这系列文章从克隆,数据库,缓存和异步这4个角度,教大家如何构建一个可拓展的应用程序...

  • 深入理解JVM阅读笔记

    1. JVM运行时数据区 除了方法区和堆属于线程共享,其它属于线程私有。 1.1. 程序计数器 Java文件经过javac编译成字节码文件后,通...

  • 理解外观模式,装饰者模式

    1. 外观模式 也叫面门模式。 1.1. PROS 在客户端与子系统之间实现解耦。 简化调用过程,客户端无需关系子系统细节,符合迪米特原则。 1...

  • 原型模式和深拷贝、浅拷贝

    1. PROS&CONS PROS 对象拷贝比new实例性能高 简化创建过程 这是因为对象拷贝的过程时,不会调用构造器,通过实现Cloneabl...

  • JPA/Hibernate LazyInitializationException 懒加载异常的四种解决方案

    问题描述 服务器使用thymeleaf渲染html页面,执行到语句${blog.type.id}时(即获取blog对象中的关联type对象),发...

  • Java核心技术卷1异常处理阅读笔记

    异常处理 关于Java核心技术 卷1 的 异常处理章节记录 1. 检查型异常和非检查型异常 异常可以分为: checked exception ...

  • 多线程Debug窥探单例模式

    1. 懒汉式单例模式 通过延迟初始化,降低单例创建期间的资源开销。 懒汉式单例实现,存在线程安全问题 线程任务 在主线程中创建两个线程任务T,通...

  • 我对软件设计原则的理解

    1. 开闭原则 软件实体(class,模块,功能或业务,微服务etc)对修改关闭,对拓展开放。 抽象构建框架,实现拓展细节。 面向抽象编程,而不...

  • 建造者模式源码案例

    1. 使用时机 建造者模式与工厂模式很类似,那么我们该如何选择呢? 简单来说,创建一个对象需要很多步骤时,选择建造者模式。创建一个对象只需要一个...