事务失效场景注意 spring 事务时通过spring aop实现的,通过this关键字调用方法时,没有通过代
1.根据proto文件生成 java文件 安装protoc命令 下载地址:https://github.com/protocolbuffers/protobuf/releases 如果想快捷使用,请配置相关的环境变量 执行以下命令,可以保存为脚本一件执行 protoc --proto_path=E:
1. 类加载运行全过程 当我们用java命令运行某个类的main函数启动程序时,首先需要通过类加载器把主类加载到 JVM。 Window系统下: java.exe调用底层的jvm.dll文件创建java虚拟机(C++) 创建一个引导类加载器实例(C++) C++调用java代码创建JVM启动器实例s
链接:https://pan.baidu.com/s/1ZSUEdoJ7imi6LdHip2g9Qg 提取码:9cfa 强制 好的单元测试必须遵守 AIR 原则 ⚫A:Automatic(自动化) ⚫ I:Independent(独立性) ⚫ R:Repeatable(可重复) 强制 单元测试应该是
链接:https://pan.baidu.com/s/1ZSUEdoJ7imi6LdHip2g9Qg 提取码:9cfa 强制 隶属于用户个人的页面或者功能必须进行权限控制校验 强制 用户敏感数据禁止直接展示,必须对展示数据进行脱敏。 强制 用户输入的 SQL 参数严格使用参数绑定或者 METADAT
链接:https://pan.baidu.com/s/1ZSUEdoJ7imi6LdHip2g9Qg 提取码:9cfa 1. 错误码 强制 错误码的制定原则:快速溯源、简单易记、沟通标准化。 强制 错误码不体现版本号和错误等级信息。 强制 全部正常,但不得不填充错误码时返回五个零:00000。 强制
聚集索引 普通索引 Mysql规约解读之前,先上图,这里是myql索引存储方式。 1. 建表规约 强制 表达是与否概念的字段,必须使用 is_xxx 的方式命名,数据类型是 unsigned tinyint(1 表示是,0 表示否)目的是见名知义is_delete POJO 类中的任何布尔类型的变量
1. 命名风格 强制 代码中的命名均不能以下划线或美元符号开始,也不能以下划线或美元符号结束 强制 所有编程相关的命名严禁使用拼音与英文混合的方式,更不允许直接使用中文的方式 强制 类名使用 UpperCamelCase 风格,但以下情形例外:DO / BO / DTO / VO / AO / PO
1. JDK动态代理分析代理是一种常用的设计模式,其目的就是为其他对象提供一个代理以控制对某个对象的访问。代理类负责为委托类预处理消息,过滤消息并转发消息,以及进行消息被委托类执行后的后续处理。就jdk动态代理而言,代理的UML图如下这里又三个重要的角色接口:代理类和被代理类被代理类:真实业务处理的类代理类:由jdk动态代理生成的类,一般以$Prxoy0结尾2. 使用代码2.1 接口类public
1. CGLib动态代理分析JDK实现动态代理需要实现类通过接口定义业务方法,对于没有接口的类,如何实现动态代理呢,这就需要CGLib了。CGLib采用了非常底层的字节码技术,其原理是通过字节码技术为一个类创建子类,并在子类中采用方法拦截的技术拦截所有父类方法的调用,顺势织入横切逻辑。JDK动态代理与CGLib动态代理均是实现Spring AOP的基础。这里有两个比较重要的角色:被代理类:真实的业
1. 简介 垃圾收集器虽然从Serial → Parallel->ParNew->CMS->G1->ZGC一步步演化,但是新的垃圾收集器不一定就适合所有场景,从垃圾收集的发展进程的可以看出,垃圾收集器的演化无非因为一下几点: 贴合当下的硬件,能够更友好的使用硬件资源 减少STW(Stop The W
1. 转义字符对应表格 2. java枚举类 @Getterpublic enum HtmlTransferEnum { Alpha("Α","Α","Α"), Delta("Δ","Δ","Δ"), Eta("Η","Η","Η"),
@Configuration public class FeignConfig { @Bean public RequestInterceptor headerInterceptor() { return template -> { ServletRequestAttributes attributes = (ServletRequ
原子类 阿里巴巴2021版JDK源码笔记(2月第三版).pdf 链接:https://pan.baidu.com/s/1XhVcfbGTpU83snOZVu8AXg 提取码:l3gy concurrent包的结构层次:Atomic类 → 锁与条件 → 同步工具 → 并发容器 → 编程池 → Cpmp
Lock与Condition 阿里巴巴2021版JDK源码笔记(2月第三版).pdf 链接:https://pan.baidu.com/s/1XhVcfbGTpU83snOZVu8AXg 提取码:l3gy 1. 互斥锁 1.1 锁的可重入性 当一个线程调用 object.lock()拿到锁,进入互斥
同步工具类 阿里巴巴2021版JDK源码笔记(2月第三版).pdf 链接:https://pan.baidu.com/s/1XhVcfbGTpU83snOZVu8AXg 提取码:l3gy 除了锁与 Condition,Concurrent 包还提供了一系列同步工具 类。这些同步工具类的原理,有些也是
线程池与Future 阿里巴巴2021版JDK源码笔记(2月第三版).pdf 链接:https://pan.baidu.com/s/1XhVcfbGTpU83snOZVu8AXg 提取码:l3gy 1. 线程池的实现原理 调用方不断地向线程池中提交任 务;线程池中有一组线程,不断地从队列中取任务,这
forkJoin 阿里巴巴2021版JDK源码笔记(2月第三版).pdf 链接:https://pan.baidu.com/s/1XhVcfbGTpU83snOZVu8AXg 提取码:l3gy 在大学的算法课本中,都有一种基本算法:分治。其基本思路 是:将一个大的任务分为若干个子任务,这些子任务分别
Copyright © 2005-2025 51CTO.COM 版权所有 京ICP证060544号