摘要: 文章目录 什么是循环依赖?产生原因Spring的解决办法循环依赖解决的过程源码剖析总结更多文章和干货请关注公众号 之前简单讲过Spring循环依赖的解决办法,但是没有深入源码分析,今天源码相关分析来了。 什么是循环依赖? 循环依赖问题就是A->B->A,spring在创建A的时候,发现需要依赖B,因 阅读全文
posted @ 2022-06-30 20:53 Java技术债务 阅读(377) 评论(0) 推荐(0)
摘要: 文章目录 1 概念2 解决办法3 更多文章和干货请移驾公众号和个人网站 1 概念 缓存穿透: 大量请求的key根本不存在于缓存中,... 阅读全文
posted @ 2022-06-30 20:53 Java技术债务 阅读(28) 评论(0) 推荐(0)
摘要: 文章目录 引入MySQL中MVCC的运用快照读和当前读更多文章和干货 引入 MVCC全称是:Multiversion concur... 阅读全文
posted @ 2022-06-30 20:53 Java技术债务 阅读(261) 评论(0) 推荐(0)
摘要: 文章目录 事务的概念事务的ACID事务的并发问题MySQL事务隔离级别问题:事务是如何通过日志来实现的补充更多文章和干货 事务的... 阅读全文
posted @ 2022-06-30 20:53 Java技术债务 阅读(31) 评论(0) 推荐(0)
摘要: 什么是循环依赖? 循环依赖问题就是A->B->A,spring在创建A的时候,发现需要依赖B,因为去创建B实例,发现B又依赖于A,又... 阅读全文
posted @ 2022-06-30 20:53 Java技术债务 阅读(120) 评论(0) 推荐(0)
摘要: 文章目录 引入概念BeanFactory和FactoryBean区别:BeanFactory和ApplicationContext... 阅读全文
posted @ 2022-06-30 20:53 Java技术债务 阅读(41) 评论(0) 推荐(0)
摘要: 问题 main方法能重载么?main方法能被其他方法调用么?main方法可以继承么? main方法的特殊 首先针对 main 方法的... 阅读全文
posted @ 2022-06-30 20:53 Java技术债务 阅读(71) 评论(0) 推荐(0)
摘要: 文章目录 1 特点2 使用细则(1)DDL 查询(2)数据复制(3)SELECT 查询(4)索引转换 3 物化MySQL实操1... 阅读全文
posted @ 2022-06-30 20:53 Java技术债务 阅读(86) 评论(0) 推荐(0)
摘要: 文章目录 副本分布式表1 副本写入流程2 配置步骤3 复制表的创建4 删除副本5 MergeTree 转换为 Replicated... 阅读全文
posted @ 2022-06-30 20:53 Java技术债务 阅读(286) 评论(0) 推荐(0)
摘要: 主要解决让每个线程绑定自己的值。如果你创建了⼀个 ThreadLocal 变量,那么访问这个变量的每个线程都会有这个变量的本地副本。... 阅读全文
posted @ 2022-06-30 20:53 Java技术债务 阅读(48) 评论(0) 推荐(0)
摘要: 文章目录 概述1 物化视图与普通视图的区别2 优缺点3 基本语法1) 创建物化视图的限制2) 物化视图的数据更新 4 物化视图... 阅读全文
posted @ 2022-06-30 20:53 Java技术债务 阅读(161) 评论(0) 推荐(0)
摘要: 文章目录 数据一致性的方案1 手动使用OPTIMIZE(强烈不建议生产上使用)2 通过 Group by 去重3 通过 FINAL... 阅读全文
posted @ 2022-06-30 20:53 Java技术债务 阅读(150) 评论(0) 推荐(0)
摘要: 文章目录 1 本文简介2 单表查询优化1 Prewhere 替代 where2 数据采样3 指定select字段查询与分区裁剪4 ... 阅读全文
posted @ 2022-06-30 20:53 Java技术债务 阅读(480) 评论(0) 推荐(0)
摘要: 文章目录 一 建表优化1 数据类型1.1 时间字段的类型1.2 空值存储类型 2 分区和索引3 表参数4 写入和删除优化5 常... 阅读全文
posted @ 2022-06-30 20:53 Java技术债务 阅读(210) 评论(0) 推荐(0)
摘要: 1、作用: (1)确保线程互斥的访问同步代码 (2)保证共享变量的修改能够及时可见 (3)有效解决重排序问题。 2、用法:... 阅读全文
posted @ 2022-06-30 20:53 Java技术债务 阅读(233) 评论(0) 推荐(0)
摘要: 悲观锁是将资源锁住,等一个之前获得锁的线程释放锁之后,下一个线程才可以访问。 乐观锁采取了一种宽泛的态度,通过某种方式不加锁来处理资... 阅读全文
posted @ 2022-06-30 20:53 Java技术债务 阅读(115) 评论(0) 推荐(0)
摘要: 文章目录 介绍1 CREATE创建表(包含副本,分布式表创建)2 ALTER修改表操作3 INSERT插入数据4 查询操作5 导出... 阅读全文
posted @ 2022-06-30 20:53 Java技术债务 阅读(176) 评论(0) 推荐(0)
摘要: 文章目录 引入表引擎的概念以及特点一、TinyLog二、Memory三、MergeTree四、ReplacingMergeTree... 阅读全文
posted @ 2022-06-30 20:53 Java技术债务 阅读(273) 评论(0) 推荐(0)
摘要: 文章目录 1. 整型2. 浮点型3. 布尔型4. Decimal 型5. 字符串6. 枚举类型7. 时间类型8. 数组9.Map1... 阅读全文
posted @ 2022-06-30 20:53 Java技术债务 阅读(186) 评论(0) 推荐(0)
摘要: 1、线程模型 redis 内部使用文件事件处理器 file event handler,它是单线程的,所以redis才叫做单线程... 阅读全文
posted @ 2022-06-30 20:53 Java技术债务 阅读(334) 评论(0) 推荐(0)
摘要: 文章目录 Stringlisthashsetzset更多文章和干货请看公众号以及博客 String 存储方式 key-value,... 阅读全文
posted @ 2022-06-30 20:53 Java技术债务 阅读(88) 评论(0) 推荐(0)
摘要: 文章目录 基础配置内存溢出配置回收器选择响应时间优先的并发收集器垃圾回收统计信息更多文章和干货请移驾公众号查看获取 基础配置 Xm... 阅读全文
posted @ 2022-06-30 20:53 Java技术债务 阅读(106) 评论(0) 推荐(0)
摘要: 文章目录 1 概念执行过程我的公众号 1 概念 连接器: 身份认证和权限相关(登录 MySQL 的时候)。 查询缓存: 执行查询语... 阅读全文
posted @ 2022-06-30 20:53 Java技术债务 阅读(44) 评论(0) 推荐(0)
摘要: 1、OOM异常:java.lang.OutOfMemoryError: Java heap space Xms10m代表堆初始化... 阅读全文
posted @ 2022-06-30 20:53 Java技术债务 阅读(372) 评论(0) 推荐(0)
摘要: 文章目录 jps进程状况工具jstat统计信息监控工具jmap堆内存使用状况jstack线程堆栈信息更多文章和干货请关注公众号 j... 阅读全文
posted @ 2022-06-30 20:53 Java技术债务 阅读(146) 评论(0) 推荐(0)
摘要: 文章目录 1 概念2 分析内存溢出可能出现的地方Java栈Metaspace堆 2 分析内存泄漏的原因1、静态集合类:容器使用时... 阅读全文
posted @ 2022-06-30 20:53 Java技术债务 阅读(417) 评论(0) 推荐(0)
摘要: 文章目录 集合框架图常用接口介绍以及区别常用接口类介绍ArrayListLinkedListHashMapConcurrentHa... 阅读全文
posted @ 2022-06-30 20:53 Java技术债务 阅读(114) 评论(0) 推荐(0)
摘要: AOP:面向切面编程 概念 AOP (Aspect Orient Programming),直译过来就是 面向切面编程。AOP 是一... 阅读全文
posted @ 2022-06-30 20:53 Java技术债务 阅读(112) 评论(0) 推荐(0)
摘要: Redis 常见面试题 文章目录 概述什么是RedisRedis有哪些优缺点优点缺点 为什么要用 Redis /为什么要用缓存... 阅读全文
posted @ 2022-06-30 20:53 Java技术债务 阅读(42) 评论(0) 推荐(0)
摘要: 问题引入 关于定时任务注解@Scheduled在之前的文章已经讲到,Spring Boot定时器默认的是单线程的。 但是问题就来了,... 阅读全文
posted @ 2022-06-30 20:53 Java技术债务 阅读(809) 评论(0) 推荐(0)
摘要: 一、引言 最近搞个服务器,然后部署了个人网站,以及一些服务供自己玩耍,其中Nginx最让我很难受,配置总是要现用现百度。所以,我来了... 阅读全文
posted @ 2022-06-30 20:53 Java技术债务 阅读(159) 评论(0) 推荐(0)
摘要: 文章目录 概念Redis 的复制分为全量同步和增量同步。Redis主从同步策略主从复制的特点主从复制的实现更多文章和干货请移驾公众... 阅读全文
posted @ 2022-06-30 20:53 Java技术债务 阅读(51) 评论(0) 推荐(0)
摘要: 引入 Redis是基于内存存储,常用于数据的缓存,所以Redis提供了对键的过期时间的设置,实现了几种淘汰机制便于适应各种场景。 设... 阅读全文
posted @ 2022-06-30 20:53 Java技术债务 阅读(134) 评论(0) 推荐(0)
摘要: 问题的引入 同时有请求A和请求B进行更新操作,那么会出现 (1)线程A更新了数据库 (2)线程B更新了数据库 (3)线程B更新了缓存... 阅读全文
posted @ 2022-06-30 20:53 Java技术债务 阅读(558) 评论(0) 推荐(0)
摘要: 文章目录 1、什么是ClickHouse2、ClickHouse的特点2.1 列式存储2.2 DBMS的功能2.3 多样化引擎2.... 阅读全文
posted @ 2022-06-30 20:53 Java技术债务 阅读(528) 评论(0) 推荐(0)
摘要: 文章目录 1、线程池的引入2、好处3、简单剖析内存结构4、核心参数5、线程池添加任务流程6、线程池参数配置依据7、线程池队列的选择... 阅读全文
posted @ 2022-06-30 20:53 Java技术债务 阅读(340) 评论(0) 推荐(0)
摘要: 1、问题出路 测试环境、线上环境日志陆续出现此类问题,本地环境并没有出现此类异常,而且服务器中也不是持续报错,而是时而报错,时而正常... 阅读全文
posted @ 2022-06-30 20:53 Java技术债务 阅读(679) 评论(0) 推荐(0)
摘要: CompletableFuture JDK 5引入了Future模式。Future接口是Java多线程Future模式的实现,在ja... 阅读全文
posted @ 2022-06-30 20:53 Java技术债务 阅读(62) 评论(0) 推荐(0)
摘要: JDK1.7: 底层数据结构:数组(sgement)、数组(HashEntry)、链表(HashEntry节点) 两个主要的内... 阅读全文
posted @ 2022-06-30 20:53 Java技术债务 阅读(136) 评论(0) 推荐(0)
摘要: 概述 要使用@ Scheduled注解,首先需要在启动类添加@ EnableScheduling,启用Spring的计划任务执行功能,这样可以在容器中的任何Spring管理的bean上检测@ Scheduled注解,执行计划任务。 注解定义 /** * An... 阅读全文
posted @ 2022-06-30 20:53 Java技术债务 阅读(381) 评论(0) 推荐(0)
摘要: 简述一下索引: 索引是数据库表中一列或多列的值进行排序的一种数据结构;索引分为聚集索引和非聚集索引,聚集索引查询类似书的目录,快速定位查找的数据,非聚集索引查询一般需要再次回表查询一次,如果不使用索引就会进行全表扫描;还有可以进行多字段组成联合索引,但是要... 阅读全文
posted @ 2022-06-30 20:53 Java技术债务 阅读(155) 评论(0) 推荐(0)
摘要: 使用集成了maven的Eclipse版本新建maven项目后,配置文件pom.xml会在project以及引用的xsd文件处出现错误(第一、二行报错) 其中一个报错例子: Multiple annotations found at this line: - P... 阅读全文
posted @ 2022-06-30 20:53 Java技术债务 阅读(536) 评论(0) 推荐(0)
摘要: 可以参考Maven指南一和Maven指南二 Maven安装: 下载Maven:http://www.apache.org/dyn/closer.cgi/maven/binaries/apache-maven-3.0.4-bin.tar.gz 然后解压,记住解... 阅读全文
posted @ 2022-06-30 20:53 Java技术债务 阅读(142) 评论(0) 推荐(0)
摘要: 你还可以保存博主的个人博客网站,可以第一时间获取更多的文章和干货 博客地址:https://www.cuizb.top JVM内... 阅读全文
posted @ 2022-06-30 20:52 Java技术债务 阅读(30) 评论(0) 推荐(0)
摘要: 分布式锁,是一种思想,它的实现方式有很多。比如,我们将沙滩当做分布式锁的组件,那么它看起来应该是这样的 加锁 在沙滩上踩一脚,留... 阅读全文
posted @ 2022-06-30 20:52 Java技术债务 阅读(40) 评论(0) 推荐(0)
摘要: 文章目录 代理模式的定义与特点代理模式的结构与实现模式的结构模式的实现 代理模式的应用场景代理模式的应用实例代理模式的扩展代理... 阅读全文
posted @ 2022-06-30 20:52 Java技术债务 阅读(89) 评论(0) 推荐(0)
摘要: 文章目录 原型模式的定义与特点优点缺点 原型模式的结构与实现模式的结构模式的实现 原型模式的应用场景原型模式的扩展实例 ... 阅读全文
posted @ 2022-06-30 20:52 Java技术债务 阅读(55) 评论(0) 推荐(0)
摘要: 文章目录 概述单例模式的定义与特点单例模式的优点和缺点单例模式的应用场景单例模式的结构与实现1. 单例模式的结构2. 单例模式的实... 阅读全文
posted @ 2022-06-30 20:52 Java技术债务 阅读(32) 评论(0) 推荐(0)
摘要: 文章目录 简单工厂模式概述工厂模式的定义优点和缺点应用场景模式的结构与实现 工厂方法模式概述优缺点应用场景模式的结构与实现1.... 阅读全文
posted @ 2022-06-30 20:52 Java技术债务 阅读(102) 评论(0) 推荐(0)
摘要: 文章目录 1. kafka存储结构1.1 topic1.2 partition1.3 segment1.4 message结构1... 阅读全文
posted @ 2022-06-30 20:52 Java技术债务 阅读(793) 评论(0) 推荐(0)
摘要: 文章目录 1、Table is in readonly mode (zookeeper path: /clickhouse/ta... 阅读全文
posted @ 2022-06-30 20:52 Java技术债务 阅读(1012) 评论(1) 推荐(0)
摘要: 文章目录 读前提示概览开闭原则开闭原则的定义开闭原则的作用开闭原则的实现方法 里氏替换原则里氏替换原则的定义里氏替换原则的作用里... 阅读全文
posted @ 2022-06-30 20:52 Java技术债务 阅读(159) 评论(0) 推荐(0)
摘要: 文章目录 概述一、 23种设计模式的功能二、分类1. 根据目的来分2. 根据作用范围来分 概述 设计模式(Design Patt... 阅读全文
posted @ 2022-06-30 20:52 Java技术债务 阅读(39) 评论(0) 推荐(0)
摘要: 文章目录 概述数据安全问题性能问题状态问题资源隔离方面MySQL 其实也是容器化 概述 容器的定义 容器是为了解决“在切换运行环... 阅读全文
posted @ 2022-06-30 20:52 Java技术债务 阅读(157) 评论(0) 推荐(0)
摘要: 文章目录 概述JSON 数据类型的意义JSON相关函数测试创建测试表插入数据查询数据条件查询 优化JSON查询解决方案 总结... 阅读全文
posted @ 2022-06-30 20:52 Java技术债务 阅读(10054) 评论(0) 推荐(0)
摘要: 文章目录 Docker分层镜像Docker镜像Docker镜像的获取Docker镜像分层原则Docker镜像分层结构Docker... 阅读全文
posted @ 2022-06-30 20:52 Java技术债务 阅读(215) 评论(0) 推荐(0)
摘要: 文章目录 Docker 基础命令Docker 镜像命令Docker容器相关命令Docker 运维命令 Docker 基础命令 启... 阅读全文
posted @ 2022-06-30 20:52 Java技术债务 阅读(38) 评论(0) 推荐(0)
摘要: 文章目录 什么是 Dockerfile?使用 Dockerfile 定制镜像开始构建镜像上下文路径指令详解COPYADDCMDE... 阅读全文
posted @ 2022-06-30 20:52 Java技术债务 阅读(213) 评论(0) 推荐(0)
摘要: Nginx 是一个高性能的 HTTP 和反向代理 web 服务器,同时也提供了 IMAP/POP3/SMTP 服务 。 以前没有用... 阅读全文
posted @ 2022-06-30 20:52 Java技术债务 阅读(467) 评论(0) 推荐(0)
摘要: 文章目录 网关简介网关⼯作过程网关基本概念常见网关的区别Gateway网关实战父工程子工程demo子工程gateway启动两个子... 阅读全文
posted @ 2022-06-30 20:52 Java技术债务 阅读(226) 评论(0) 推荐(0)
摘要: 文章目录 跨域JSONPCORSSpring Security启用CORS CSRFCSRF的攻击过程CSRF的防御手段使用S... 阅读全文
posted @ 2022-06-30 20:52 Java技术债务 阅读(156) 评论(0) 推荐(0)
摘要: 文章目录 1. 默认数据库认证和授权1.1 资源准备1.2 资源授权的配置1.3 基于内存的多用户支持1.4 认证和授权1.4.... 阅读全文
posted @ 2022-06-30 20:52 Java技术债务 阅读(94) 评论(0) 推荐(0)
摘要: 1. Spring Security简介 Spring Security 的前身是 Acegi Security,在被收纳为Spr... 阅读全文
posted @ 2022-06-30 20:52 Java技术债务 阅读(54) 评论(0) 推荐(0)
摘要: 文章目录 报错背景报错详情报错剖析解决办法总结 报错背景 微服务中两个子工程相互依赖时,出现程序包不存在找不到目标类 报错详情 m... 阅读全文
posted @ 2022-06-30 20:52 Java技术债务 阅读(1022) 评论(0) 推荐(0)
摘要: 文章目录 前言新建父工程cloud-alibaba-demo新建子工程dubbo-demo-service新建子工程gtw启动工... 阅读全文
posted @ 2022-06-30 20:52 Java技术债务 阅读(493) 评论(0) 推荐(0)
摘要: 文章目录 目的Spring Cloud AlibabaSpring Cloud和Spring Cloud AlibabaSpri... 阅读全文
posted @ 2022-06-30 20:52 Java技术债务 阅读(145) 评论(0) 推荐(0)
摘要: 文章目录 源和跨域同源策略CORS-跨域资源共享简单请求非简单请求 跨域解决方案 源和跨域 源(origin)就是协议、域名... 阅读全文
posted @ 2022-06-30 20:52 Java技术债务 阅读(249) 评论(0) 推荐(0)
摘要: 文章目录 JUC结构1、tools(工具类)CountDownLatchCyclicBarrierSemaphoreCyclic... 阅读全文
posted @ 2022-06-30 20:52 Java技术债务 阅读(69) 评论(0) 推荐(0)
摘要: 文章目录 一、创建线程池的方式一般有两种:二、通过Executors工厂创建1. Executors.newSingleThre... 阅读全文
posted @ 2022-06-30 20:52 Java技术债务 阅读(572) 评论(0) 推荐(0)
摘要: 文章目录 服务注册服务发现心跳机制常见的注册中心consulclientserverserver-leaderraft服务发现协... 阅读全文
posted @ 2022-06-30 20:52 Java技术债务 阅读(1180) 评论(0) 推荐(0)
摘要: 文章目录 1、引用计数为0(已经不用了)2、可达性分析算法GC Roots枚举根节点安全点-Safepoint安全区域-Safe... 阅读全文
posted @ 2022-06-30 20:52 Java技术债务 阅读(62) 评论(0) 推荐(0)
摘要: 文章目录 MyISAM和InnoDB存储引擎锁区别InnoDB锁机制InnoDB 表级锁的锁模式InnoDB 行锁模式及加锁方法... 阅读全文
posted @ 2022-06-30 20:52 Java技术债务 阅读(46) 评论(0) 推荐(0)
摘要: 安装的两种方式 通过已有的镜像直接pull安装;自己通过dockerfile等命令打包一个镜像安装(此种方式我们到已有镜像满足不了自... 阅读全文
posted @ 2022-06-30 20:52 Java技术债务 阅读(831) 评论(0) 推荐(0)
摘要: 疫情下的上海,按下了暂停键,期待早日重回繁华,上海加油! 文章目录 Docker简介Docker的出现Docker的优点D... 阅读全文
posted @ 2022-06-30 20:52 Java技术债务 阅读(76) 评论(0) 推荐(0)
摘要: 引入 日常开发中,我们经常会使用到group by。你是否知道group by的工作原理呢?group by和having有什么区别... 阅读全文
posted @ 2022-06-30 20:52 Java技术债务 阅读(308) 评论(0) 推荐(0)
摘要: 昨天连夜赶了一篇文章,讲述了一个被黑客连续攻击服务器三次的普通“搬砖人”,一次比一次艰难,一次比一次狠。 我给大家看几张图,看看黑客... 阅读全文
posted @ 2022-06-30 20:52 Java技术债务 阅读(279) 评论(0) 推荐(0)
摘要: 去年双十一腾讯云搞活动,198元购买了三年轻量级服务器的使用权,配置:4G内存,8G带宽,1200G月流量,80G硬盘,因此,我就闲... 阅读全文
posted @ 2022-06-30 20:52 Java技术债务 阅读(91) 评论(0) 推荐(0)
摘要: 问题引入 近日,项目中有一个耗时较长的Job存在CPU占用过高的问题,经排查发现,主要时间消耗在往MyBatis中批量插入数据。ma... 阅读全文
posted @ 2022-06-30 20:52 Java技术债务 阅读(118) 评论(0) 推荐(0)
摘要: 文章目录 一、引入二、工作原理三、实现四、源码剖析五、总结 一、引入 在 TCP 保持长连接的过程中,可能会出现断网等网络异常出... 阅读全文
posted @ 2022-06-30 20:52 Java技术债务 阅读(365) 评论(0) 推荐(0)
摘要: 文章目录 Reactor模型单Reactor单线程模型单Reactor多线程模型主从Reactor多线程模型 Netty的线程... 阅读全文
posted @ 2022-06-30 20:52 Java技术债务 阅读(197) 评论(0) 推荐(0)
摘要: 文章目录 什么是Netty为什么使用Netty应用场景Netty 的高性能表现Netty核心组件Bootstrap和Server... 阅读全文
posted @ 2022-06-30 20:52 Java技术债务 阅读(238) 评论(0) 推荐(0)
摘要: 主从复制,是用来建立一个和主数据库完全一样的数据库环境,称为从数据库;主数据库一般是准实时的业务数据库。 原理: 数据库有个bi... 阅读全文
posted @ 2022-06-30 20:52 Java技术债务 阅读(129) 评论(0) 推荐(0)
摘要: 文章目录 @SpringBootApplication@EnableAutoConfiguration@AutoConfigur... 阅读全文
posted @ 2022-06-30 20:52 Java技术债务 阅读(56) 评论(0) 推荐(0)
摘要: 文章目录 概述判断对象是否存活垃圾回收算法标记-清除算法复制算法标记整理算法分代收集算法 垃圾收集器Serial收集器ParN... 阅读全文
posted @ 2022-06-30 20:52 Java技术债务 阅读(54) 评论(0) 推荐(0)
摘要: 欢迎搜索 文章目录 一、布隆过滤器简介二、布隆过滤器的结构三、布隆过滤器应用四、布隆过滤器的优缺点五、布隆过滤器实战六、总结 R... 阅读全文
posted @ 2022-06-30 20:52 Java技术债务 阅读(183) 评论(0) 推荐(0)
摘要: 对于普通的Java对象,当new的时候创建对象,当它没有任何引用的时候被垃圾回收机制回收。而由Spring IoC容器托管的对象,它... 阅读全文
posted @ 2022-06-30 20:52 Java技术债务 阅读(3466) 评论(0) 推荐(0)
摘要: 引入 为什么突然说一下Spring启动原理呢,因为之前面试的时候,回答的那可谓是坑坑洼洼,前前后后,补补贴贴。。。 总而言之就是不行... 阅读全文
posted @ 2022-06-30 20:52 Java技术债务 阅读(99) 评论(0) 推荐(0)
摘要: 文章目录 MyISAM和InnoDB存储引擎锁区别InnoDB锁机制InnoDB 表级锁的锁模式InnoDB 行锁模式及加锁方法... 阅读全文
posted @ 2022-06-30 20:52 Java技术债务 阅读(46) 评论(0) 推荐(0)