随笔分类 - 高级进阶
摘要:建造者模式(Builder Pattern)是一种设计模式,通过多个简单对象逐步构建复杂对象,分离构建过程与表示。适用于对象构建超出构造函数能力的场景,如电脑生产(分部件组装)或Mybatis框架(SqlSessionFactoryBuilder分层构造Configuration对象)。应用实例包括肯德基套餐组合和Java的StringBuilder。
阅读全文
摘要:本文介绍了 MyBatis 的架构设计和主要构件,包括功能架构分为API接口层、数据处理层和基础支撑层。讨论了 MyBatis 的各构件之间的交互关系,并描述了 MyBatis 的总体流程:加载配置并初始化,接收调用请求,处理操作请求,返回处理结果。通过分析这些内容,可以更好地理解 MyBatis 的内部工作原理和流程。
阅读全文
摘要:通用 Mapper 是基于 MyBatis 框架的插件,旨在简化单表的增删改查操作。通过这些特性,通用 Mapper 降低了开发复杂度,帮助开发者更专注于业务逻辑的实现。要使用该插件,开发者需要在 Maven 项目的 `pom.xml` 中添加相应的依赖,并确保 MyBatis 和数据库驱动的版本兼容。
阅读全文
摘要:Java 并发是与硬件息息相关的。Java 线程由操作系统管理,而操作系统又是运行在 CPU 之上的。 并发知识点 Java 并发领域介绍 volatile 关键字的应用场景与原理剖析 synchronized 关键字的底层原理深入剖析 Lock 原理深入剖析 何为原子操作以及原子操作的原理深入剖析
阅读全文
摘要:配置 # https://help.aliyun.com/document_detail/365559.html # HTTPS协议默认端口号为443,需要使用其他端口时,您可以在此处自定义。 server.port=8002 # https://docs.oracle.com/en/java/ja
阅读全文
摘要:Hibernate官网 https://hibernate.org 目标 应用程序分层结构体系的发展 软件分层的优点 Java应用的持久化层 Hibernate是持久化层的一种实现 软件的模型 模型之间的关系 概念模型 购物网站领域的概念模型 实体与实体之间存
阅读全文
摘要:background.js的配置 chrome.runtime.onMessage.addListener((request, sender, sendResponse) => { switch (request.type) { case 'fetchChromeXmlrpc': (async ()
阅读全文
摘要:pip 官网:https://pypi.org/project/pip/ 你可以通过以下命令来判断是否已安装: pip --version # Python2.x 版本命令 pip3 --version # Python3.x 版本命令 https://pip.pypa.io/en/stable/i
阅读全文
摘要:操作步骤: 1、新建一个普通报表 2、新建一个数据源,查询语句如下 select * from 销量 3、拖动地区、销售员、销量列到设计器 4、销量那一列设置 数据设置 为 分组 求和 。 5、销售员那一列的 左父格 设置为 默认 。 6、 预览效果 https://help.fanruan.c
阅读全文
摘要:用户自定义类加载器探秘 MyClassLoader /** * 自定义类加载器 * * @name: MyClassLoader * @author: terwer * @date: 2022-07-07 21:37 **/ public class MyClassLoader extends Cl
阅读全文
摘要:类加载器的父亲委托机制深度详解 类加载器 类加载器的父亲委托机制 类加载器的父亲委托机制(Parent Delegation) 父子加载器不是继承关系,子加载器不一定要继承父加载器。 定义类加载器:如果某个类加载器能够加载一个类,那么该加载器称为定义类加载器,定义类加载器及其所有子类加载器都称做初始
阅读全文
摘要:编译常量、ClassLoader类、系统类加载器深度探析 类的初始化 类的初始化步骤 类的初始化时机 例子: /** * @name: FinalTest * @author: terwer * @date: 2022-07-05 21:51 **/ public class Test2 { pub
阅读全文
摘要::::tip 文章更新历史 2022/05/25 feat:初稿。 ::: Zookeeper 的环境搭建 Zookeeper 的安装方式有三种:单机模式、集群模式和伪集群模式。 单机模式:Zookeeper 只运行在一台服务器上,适合测试环境。 集群模式:Zookeeper 运行于一个集群上,适合
阅读全文
摘要:架构的演进历程 分布式理论 CAP理论 正常情况,写入A1,同步到A2,这样的话,A1和A2都能读取到最新的数据。 但是网络如果不可靠 A1和A2会变成两个子网 保证A和P 保证C和P redis属于AP 实际应该考虑的是数据同步测时延。 PACELC理论 BASE理论 微服务不适合ZK Eurek
阅读全文
摘要:架构设计基本原则知识扩展 SOLID原则 前五种统一称为SOLID原则 SOLID(单一功能、开闭原则、里氏替换、接口隔离以及依赖反转)是由罗伯特·C·马丁在21世纪早期 引入的记忆术首字母缩略字,指代了面向对象编程和面向对象设计的五个基本原则。 当这些原则被一起应用时,它们使得一个程序员开发一个容
阅读全文
摘要:依赖倒置原则(DIP) , , 依赖倒置原则 依赖倒置原则的定义 原始定义:高层模块不要依赖低层模块,两种都应该依赖抽象。抽象不应该依赖细节,细节应该依赖抽象。 核心思想是: 要面向接口编程,不要面向实现编程 。 依赖倒置原则的作用 1. 降低类之间的耦合性 2. 提高系统的稳定性 3. 减少并行开
阅读全文
摘要:里式替换原则(LSP) , , 里氏替换原则 里氏替换原则的定义 里式替换阐述了继承的原则,可描述为:子类可以扩展父类的功能,但是不能改变父类原有的功能。 "https://zhuanlan.zhihu.com/p/268574641" 里式替换的作用 1. 里式替换是实现开闭原则的重要方式之一。
阅读全文
摘要:接口隔离原则(ISP) , 接口隔离原则 接口隔离原则的定义 将接口拆分成更小更具体的接口,让接口中只包含用户感兴趣的方法。 接口隔离和单一职责都是为了高类聚、低耦合,体现了封装思想。两者区别: 1. 单一职责注重的是职责,接口隔离注重对接口依赖的隔离 2. 单一职责主要约束类,针对的是程序中的实现
阅读全文
摘要:单一职责原则(SRP) , 单一职责原则 单一职责原则的定义 单一职责又称单一功能,职责指的是变化的原因,单一职责规定 一个类有且仅有一个引起他变化的原因 ,否则应该被拆分。 对象不应该承担太多职责,如果一个对象承担太多职责,至少有两个缺点: 1. 一个职责的变化可能削弱或者抑制其他的职责的能力。
阅读全文
摘要:本文介绍了一个良好的可扩展性的架构需要遵守的原则。 <! more 架构设计基本原则 2022/04/16 校对完成 文章更新历史 2022/04/16 初稿。 开闭原则(OCP) , 开闭原则 开闭原则的定义 开闭原则:软件实体应该对扩展开放,对修改关闭 软件实体包含几个部分 1. 项目中划分出来
阅读全文