- 博客(4)
- 收藏
- 关注
原创 Java进阶之MyBatis源码分析
MyBatis源码骨架分析(一)整体架构设计模式:采用外观模式(门面模式),由一个统一接口对外提供服务,客户端与子系统之间进行解耦,遵循了迪米特原则,对内封装了子系统复杂相互调用,对外只暴露必要的接口。为什么要分层:可维护性高,分工明确,系统清晰,维护方便。方便团队开发、效率提升。提高系统伸缩性和性能。(二)日志模块需求点需要接入第三方的日志组件,统一日志级别。按照第三方日志组件的优先级别进行自动扫描加载。日志动态代理进行增强。设计模式适配器模式代理模式...
2021-04-22 00:22:39
94
原创 Java进阶之Zookeeper
基础知识ZNode持久节点:创建一直存在临时节点:客户端关闭,则节点被移除有序节点:创建时自动在节点名跟上自增的整形数字。可以创建同名的节点。无序节点:不能创建同名节点ACL权限机制分三个维度:schema,id,permissionschema:world,auth,digest,ippermission:create,read,write,delete,admin(设置子节点的权限)Watcher监听原生客户端:new ZooKeeper(connectAddr, ses
2021-04-06 00:48:28
98
原创 Java进阶之并发编程
线程共享和协作(一)基础概念什么是进程和线程进程是程序运行资源分配的最小单位,当你运行一个程序,你就启动了一 个进程。线程是 CPU 调度的最小单位,必须依赖于进程而存在。Thread 和 Runnable 的区别Thread和Runnable的实质是继承关系,没有可比性。用法上,如果有复杂的线程操作需求,那就选择继承Thread,如果只是简单的执行一个任务,那就实现runnable。interrupt()、interrupted()、isInterrupted()安全的中止线程的方式是
2021-03-13 00:36:10
238
原创 Java进阶之JVM笔记
JVM基础原理基础概念什么是虚拟机Java 程序的执行过程:.java文件–>javac编译器–>.class文件–>JVM虚拟机加载到方法区–>机器码–>调用操作系统函数总结:JVM 是一个虚拟化的操作系统,类似于 Linux 或者 Windows 的操作系统,只是它架在操作系统上,接收字节码也就是 class,把字节码翻译成操作系统上的机器码且进行执行运行时数据区线程共享区:堆、方法区线程私有区:虚拟机栈、本地方法栈、程序计数器直接内存虚拟机栈总结
2021-02-22 20:45:13
311
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人