• 博客(2556)
  • 收藏
  • 关注

原创 工作中对InheritableThreadLocal使用的思考

作者:京东科技 王奕龙代码评审时,发现在线程池中使用InheritableThreadLocal上下文会使其中的线程变量失效,无法获取到预期的变量值,所以对问题进行了复盘和总结。

2025-06-13 13:27:00 590

原创 Spring AI接入DeepSeek:快速打造微应用

作者:京东科技 张新磊。

2025-06-13 13:24:24 324

原创 DeepSeek免费福利限时开启,AI界的“薅羊毛”机会来了!

作者:京东科技 张新磊。

2025-06-13 13:23:21 124

转载 京东率先开启“3D信息流时代” 让购物更有趣

未来,京东将继续以技术驱动体验升级,持续优化3D引擎、拓展AIGC能力,并与更多品牌合作,共同探索3D信息流时代的无限可能。让商品“跃然屏上”、家电家居“直接入户”、直播间360度查看商品细节,今年京东618,在为用户提供“又好又便宜”极致体验的同时,京东XR创新团队首次将“京东立影-裸眼3D广告”、3D智能居家搭配工具“立影-美家”、“立影-3D直播”等创新3D内容产品应用于多个品类或场景,京东在行业中率先开启“3D信息流时代”,为用户带来全新体验,为品牌带来新的增长空间。“京东立影-裸眼3D广告”

2025-06-13 10:00:45 40

原创 大促数据库压力激增,如何一眼定位 SQL 执行来源?

)@Override// ...})@Overridetry {// 1. 找到 StatementHandler(SQL 执行时,StatementHandler 的实际类型为 RoutingStatementHandler)= null) {// 其中 delegate 是实际类型的 StatementHandler (静态代理模式),获取到实际的 StatementHandler。

2025-06-10 11:21:28 855

原创 由 Mybatis 源码畅谈软件设计(九):“能用就行” 其实远远不够

或者为其。

2025-06-10 11:20:19 718

原创 前端开发中依赖包有问题怎么办

作者:屠永涛。

2025-06-10 11:19:15 439

原创 JDK从8升级到21的问题集

第一步:在本地进行编译,提前识别出语法错误、版本冲突及不兼容问题。主要有以下几种场景:Base64:参照【Base64编解码改造】升级版本jsr250、jaxb-runtime、jakarta.annotation-api:参照【注解包冲突典型案例】升级版本升级版本升级版本。

2025-06-06 16:39:39 545

原创 设计模式-策略模式

作者:京东工业 孙磊。

2025-06-06 16:38:45 168

原创 【银河麒麟高级服务器操作系统】正式上线云主机官方镜像

为此,京东云与国产操作系统领军品牌麒麟软件达成深度合作,双方已完成银河麒麟高级服务器操作系统与京东云平台在海光、鲲鹏、Intel、AMD等多款x86、arm处理器的适配认证,基于此,京东云正式推出。京东云此次上线的银河麒麟操作系统镜像,改变了云上使用商业化操作系统授权的采购模式,只需在购买云主机时一键选择银河麒麟高级服务器操作系统镜像,即可自动完成授权绑定,真正实现“开箱即用”。,以订阅式服务模式,为企业提供更灵活、更便捷的云上国产化解决方案,目前该镜像已上线至官方镜像,并在全地域发布。

2025-06-06 16:37:51 353

原创 做「长期主义者」的技术人们

近年来,传统的深度稀疏模型已经进入瓶颈,稀疏大模型是成为新的技术升级方向,但概率预估与生成式模型的差异,以及工业级的高请求、低延迟要求,使升级充满挑战。Taro 是由京东发起的开放式跨端跨框架解决方案,支持以 Web 的开发范式来实现小程序、H5、原生 APP 的跨端统一开发,从18年开源至今,在 GitHub 已累计获得 36,000+ Stars。2、在技术工作的初期,我往往会从一个个具体的问题点切入,比如优化某个算法的性能、解决特定的技术难题等。在技术发展的浪潮中,有人辗转风口,有人深耕沉淀。

2025-06-03 16:58:08 661

原创 Taro on Harmony C-API 版本正式开源

Taro on Harmony C-API 版本经历了京东鸿蒙 APP 的实践,综合性能、生态以及开发体验来讲,毫无疑问已经成为了开发鸿蒙应用的最佳框架选型之一。当下,我们也仍然在不断完善着鸿蒙的适配方案,基于当前的 Taro on Harmony C-API 方案,我们会进行多线程的架构升级以及 React 的 C++ 化,进一步提升 Taro 在鸿蒙端侧的性能,并极大地降低应用的丢帧率,整体进展也已经处于验证和测试阶段。

2025-06-03 16:56:47 755

原创 解剖DeepSeek四把刀,一场深到源码,大到行业,细到人心的手术盛宴

在这个算力与算法疯狂博弈的时代,DeepSeek就像一剂强效兴奋剂,能让追赶者瞬间爆发,却有可能治不好核心技术的贫血症,下一个十年AI王座的归属,恐怕要看谁能再这条钢索上走出最精妙的平衡。反观OpenAi彻底闭源的API模式,DeepSeek这招即赚了口碑,又卡住了技术咽喉。第三刀:刺穿精度幻象,在数学推理测实际上,DeepSeek-R1确实追评了GPT-3,但当用医疗影像诊断任务实测时,FP8精度导致的梯度消失问题暴露无疑:例如模型可能会把0.8cm的肿瘤误判为0.1cm,这种误差在现实场景中足以致命。

2025-06-03 16:54:32 385

转载 做「长期主义者」的技术人们

近年来,传统的深度稀疏模型已经进入瓶颈,稀疏大模型是成为新的技术升级方向,但概率预估与生成式模型的差异,以及工业级的高请求、低延迟要求,使升级充满挑战。Taro 是由京东发起的开放式跨端跨框架解决方案,支持以 Web 的开发范式来实现小程序、H5、原生 APP 的跨端统一开发,从18年开源至今,在 GitHub 已累计获得 36,000+ Stars。2、在技术工作的初期,我往往会从一个个具体的问题点切入,比如优化某个算法的性能、解决特定的技术难题等。1、在技术实践中,“简单”往往是最难实现的。

2025-05-29 10:22:19 184

转载 EMNLP 2024 | 突破RQ-SID“沙漏“瓶颈,提高生成式搜推上限

基于此,我们对该现象进行了深入的理论与实验分析,并提出了相应的解决方案。解决沙漏现象的方法有多种,在此简单的从分布角度提出两种简单易行的方法:一种启发式的方法是直接移除第二层,从而消除长尾效应的影响。需要注意的是,这里首先要生成一个L层的语义ID(SID),然后再移除第二层,这与直接生成一个两层的SID不同,因为后者可能仍然存在大的路由节点。然而,当交换后给定第一个标记时,输出任务变为预测第二或第三层的SID,这使得任务变得更简单,并且长尾分布不再影响结果(因为给定了真实的SID1),因此效果显著提升。

2025-05-28 16:15:39 188

转载 EMNLP 2024 | 突破RQ-SID“沙漏“瓶颈,提高生成式搜推上限

该方法在选择性移除不太重要的tokens的同时,保留了最有信息量的tokens,即使在移除大量数据的情况下,也能提升模型性能。解决沙漏现象的方法有多种,在此简单的从分布角度提出两种简单易行的方法:一种启发式的方法是直接移除第二层,从而消除长尾效应的影响。需要注意的是,这里首先要生成一个L层的语义ID(SID),然后再移除第二层,这与直接生成一个两层的SID不同,因为后者可能仍然存在大的路由节点。通过上述实验,不仅确认了“沙漏”效应的存在,还阐明了其对模型性能的具体影响,从而为未来的优化提供了坚实的基础。

2025-05-28 16:15:39 92

转载 EMNLP 2024 | 突破RQ-SID“沙漏“瓶颈,提高生成式搜推上限

基于此,我们对该现象进行了深入的理论与实验分析,并提出了相应的解决方案。解决沙漏现象的方法有多种,在此简单的从分布角度提出两种简单易行的方法:一种启发式的方法是直接移除第二层,从而消除长尾效应的影响。需要注意的是,这里首先要生成一个L层的语义ID(SID),然后再移除第二层,这与直接生成一个两层的SID不同,因为后者可能仍然存在大的路由节点。然而,当交换后给定第一个标记时,输出任务变为预测第二或第三层的SID,这使得任务变得更简单,并且长尾分布不再影响结果(因为给定了真实的SID1),因此效果显著提升。

2025-05-28 16:15:39 146

转载 EMNLP 2024 | 突破RQ-SID“沙漏“瓶颈,提高生成式搜推上限

该方法在选择性移除不太重要的tokens的同时,保留了最有信息量的tokens,即使在移除大量数据的情况下,也能提升模型性能。解决沙漏现象的方法有多种,在此简单的从分布角度提出两种简单易行的方法:一种启发式的方法是直接移除第二层,从而消除长尾效应的影响。需要注意的是,这里首先要生成一个L层的语义ID(SID),然后再移除第二层,这与直接生成一个两层的SID不同,因为后者可能仍然存在大的路由节点。通过上述实验,不仅确认了“沙漏”效应的存在,还阐明了其对模型性能的具体影响,从而为未来的优化提供了坚实的基础。

2025-05-28 16:15:39 98

转载 EMNLP 2024 | 突破RQ-SID“沙漏“瓶颈,提高生成式搜推上限

该方法在选择性移除不太重要的tokens的同时,保留了最有信息量的tokens,即使在移除大量数据的情况下,也能提升模型性能。解决沙漏现象的方法有多种,在此简单的从分布角度提出两种简单易行的方法:一种启发式的方法是直接移除第二层,从而消除长尾效应的影响。需要注意的是,这里首先要生成一个L层的语义ID(SID),然后再移除第二层,这与直接生成一个两层的SID不同,因为后者可能仍然存在大的路由节点。通过上述实验,不仅确认了“沙漏”效应的存在,还阐明了其对模型性能的具体影响,从而为未来的优化提供了坚实的基础。

2025-05-28 16:15:39 57

转载 EMNLP 2024 | 突破RQ-SID“沙漏“瓶颈,提高生成式搜推上限

该方法在选择性移除不太重要的tokens的同时,保留了最有信息量的tokens,即使在移除大量数据的情况下,也能提升模型性能。解决沙漏现象的方法有多种,在此简单的从分布角度提出两种简单易行的方法:一种启发式的方法是直接移除第二层,从而消除长尾效应的影响。需要注意的是,这里首先要生成一个L层的语义ID(SID),然后再移除第二层,这与直接生成一个两层的SID不同,因为后者可能仍然存在大的路由节点。通过上述实验,不仅确认了“沙漏”效应的存在,还阐明了其对模型性能的具体影响,从而为未来的优化提供了坚实的基础。

2025-05-28 16:15:39 125

转载 EMNLP 2024 | 突破RQ-SID“沙漏“瓶颈,提高生成式搜推上限

基于此,我们对该现象进行了深入的理论与实验分析,并提出了相应的解决方案。解决沙漏现象的方法有多种,在此简单的从分布角度提出两种简单易行的方法:一种启发式的方法是直接移除第二层,从而消除长尾效应的影响。需要注意的是,这里首先要生成一个L层的语义ID(SID),然后再移除第二层,这与直接生成一个两层的SID不同,因为后者可能仍然存在大的路由节点。然而,当交换后给定第一个标记时,输出任务变为预测第二或第三层的SID,这使得任务变得更简单,并且长尾分布不再影响结果(因为给定了真实的SID1),因此效果显著提升。

2025-05-28 16:15:39 75

转载 EMNLP 2024 | 突破RQ-SID“沙漏“瓶颈,提高生成式搜推上限

该方法在选择性移除不太重要的tokens的同时,保留了最有信息量的tokens,即使在移除大量数据的情况下,也能提升模型性能。解决沙漏现象的方法有多种,在此简单的从分布角度提出两种简单易行的方法:一种启发式的方法是直接移除第二层,从而消除长尾效应的影响。需要注意的是,这里首先要生成一个L层的语义ID(SID),然后再移除第二层,这与直接生成一个两层的SID不同,因为后者可能仍然存在大的路由节点。通过上述实验,不仅确认了“沙漏”效应的存在,还阐明了其对模型性能的具体影响,从而为未来的优化提供了坚实的基础。

2025-05-28 16:15:39 30

转载 EMNLP 2024 | 突破RQ-SID“沙漏“瓶颈,提高生成式搜推上限

基于此,我们对该现象进行了深入的理论与实验分析,并提出了相应的解决方案。解决沙漏现象的方法有多种,在此简单的从分布角度提出两种简单易行的方法:一种启发式的方法是直接移除第二层,从而消除长尾效应的影响。需要注意的是,这里首先要生成一个L层的语义ID(SID),然后再移除第二层,这与直接生成一个两层的SID不同,因为后者可能仍然存在大的路由节点。然而,当交换后给定第一个标记时,输出任务变为预测第二或第三层的SID,这使得任务变得更简单,并且长尾分布不再影响结果(因为给定了真实的SID1),因此效果显著提升。

2025-05-28 16:15:39 92

转载 EMNLP 2024 | 突破RQ-SID“沙漏“瓶颈,提高生成式搜推上限

该方法在选择性移除不太重要的tokens的同时,保留了最有信息量的tokens,即使在移除大量数据的情况下,也能提升模型性能。解决沙漏现象的方法有多种,在此简单的从分布角度提出两种简单易行的方法:一种启发式的方法是直接移除第二层,从而消除长尾效应的影响。需要注意的是,这里首先要生成一个L层的语义ID(SID),然后再移除第二层,这与直接生成一个两层的SID不同,因为后者可能仍然存在大的路由节点。通过上述实验,不仅确认了“沙漏”效应的存在,还阐明了其对模型性能的具体影响,从而为未来的优化提供了坚实的基础。

2025-05-28 16:15:39 136

转载 EMNLP 2024 | 突破RQ-SID“沙漏“瓶颈,提高生成式搜推上限

该方法在选择性移除不太重要的tokens的同时,保留了最有信息量的tokens,即使在移除大量数据的情况下,也能提升模型性能。解决沙漏现象的方法有多种,在此简单的从分布角度提出两种简单易行的方法:一种启发式的方法是直接移除第二层,从而消除长尾效应的影响。需要注意的是,这里首先要生成一个L层的语义ID(SID),然后再移除第二层,这与直接生成一个两层的SID不同,因为后者可能仍然存在大的路由节点。通过上述实验,不仅确认了“沙漏”效应的存在,还阐明了其对模型性能的具体影响,从而为未来的优化提供了坚实的基础。

2025-05-28 16:15:39 76

转载 EMNLP 2024 | 突破RQ-SID“沙漏“瓶颈,提高生成式搜推上限

基于此,我们对该现象进行了深入的理论与实验分析,并提出了相应的解决方案。解决沙漏现象的方法有多种,在此简单的从分布角度提出两种简单易行的方法:一种启发式的方法是直接移除第二层,从而消除长尾效应的影响。需要注意的是,这里首先要生成一个L层的语义ID(SID),然后再移除第二层,这与直接生成一个两层的SID不同,因为后者可能仍然存在大的路由节点。然而,当交换后给定第一个标记时,输出任务变为预测第二或第三层的SID,这使得任务变得更简单,并且长尾分布不再影响结果(因为给定了真实的SID1),因此效果显著提升。

2025-05-28 16:15:39 85

转载 EMNLP 2024 | 突破RQ-SID“沙漏“瓶颈,提高生成式搜推上限

基于此,我们对该现象进行了深入的理论与实验分析,并提出了相应的解决方案。解决沙漏现象的方法有多种,在此简单的从分布角度提出两种简单易行的方法:一种启发式的方法是直接移除第二层,从而消除长尾效应的影响。需要注意的是,这里首先要生成一个L层的语义ID(SID),然后再移除第二层,这与直接生成一个两层的SID不同,因为后者可能仍然存在大的路由节点。然而,当交换后给定第一个标记时,输出任务变为预测第二或第三层的SID,这使得任务变得更简单,并且长尾分布不再影响结果(因为给定了真实的SID1),因此效果显著提升。

2025-05-28 16:15:39 112

转载 EMNLP 2024 | 突破RQ-SID“沙漏“瓶颈,提高生成式搜推上限

基于此,我们对该现象进行了深入的理论与实验分析,并提出了相应的解决方案。解决沙漏现象的方法有多种,在此简单的从分布角度提出两种简单易行的方法:一种启发式的方法是直接移除第二层,从而消除长尾效应的影响。需要注意的是,这里首先要生成一个L层的语义ID(SID),然后再移除第二层,这与直接生成一个两层的SID不同,因为后者可能仍然存在大的路由节点。然而,当交换后给定第一个标记时,输出任务变为预测第二或第三层的SID,这使得任务变得更简单,并且长尾分布不再影响结果(因为给定了真实的SID1),因此效果显著提升。

2025-05-28 16:15:39 46

转载 EMNLP 2024 | 突破RQ-SID“沙漏“瓶颈,提高生成式搜推上限

基于此,我们对该现象进行了深入的理论与实验分析,并提出了相应的解决方案。解决沙漏现象的方法有多种,在此简单的从分布角度提出两种简单易行的方法:一种启发式的方法是直接移除第二层,从而消除长尾效应的影响。需要注意的是,这里首先要生成一个L层的语义ID(SID),然后再移除第二层,这与直接生成一个两层的SID不同,因为后者可能仍然存在大的路由节点。然而,当交换后给定第一个标记时,输出任务变为预测第二或第三层的SID,这使得任务变得更简单,并且长尾分布不再影响结果(因为给定了真实的SID1),因此效果显著提升。

2025-05-28 16:15:39 64

转载 EMNLP 2024 | 突破RQ-SID“沙漏“瓶颈,提高生成式搜推上限

基于此,我们对该现象进行了深入的理论与实验分析,并提出了相应的解决方案。解决沙漏现象的方法有多种,在此简单的从分布角度提出两种简单易行的方法:一种启发式的方法是直接移除第二层,从而消除长尾效应的影响。需要注意的是,这里首先要生成一个L层的语义ID(SID),然后再移除第二层,这与直接生成一个两层的SID不同,因为后者可能仍然存在大的路由节点。然而,当交换后给定第一个标记时,输出任务变为预测第二或第三层的SID,这使得任务变得更简单,并且长尾分布不再影响结果(因为给定了真实的SID1),因此效果显著提升。

2025-05-28 16:15:39 52

转载 EMNLP 2024 | 突破RQ-SID“沙漏“瓶颈,提高生成式搜推上限

基于此,我们对该现象进行了深入的理论与实验分析,并提出了相应的解决方案。解决沙漏现象的方法有多种,在此简单的从分布角度提出两种简单易行的方法:一种启发式的方法是直接移除第二层,从而消除长尾效应的影响。需要注意的是,这里首先要生成一个L层的语义ID(SID),然后再移除第二层,这与直接生成一个两层的SID不同,因为后者可能仍然存在大的路由节点。然而,当交换后给定第一个标记时,输出任务变为预测第二或第三层的SID,这使得任务变得更简单,并且长尾分布不再影响结果(因为给定了真实的SID1),因此效果显著提升。

2025-05-28 16:15:39 20

转载 EMNLP 2024 | 突破RQ-SID“沙漏“瓶颈,提高生成式搜推上限

该方法在选择性移除不太重要的tokens的同时,保留了最有信息量的tokens,即使在移除大量数据的情况下,也能提升模型性能。解决沙漏现象的方法有多种,在此简单的从分布角度提出两种简单易行的方法:一种启发式的方法是直接移除第二层,从而消除长尾效应的影响。需要注意的是,这里首先要生成一个L层的语义ID(SID),然后再移除第二层,这与直接生成一个两层的SID不同,因为后者可能仍然存在大的路由节点。通过上述实验,不仅确认了“沙漏”效应的存在,还阐明了其对模型性能的具体影响,从而为未来的优化提供了坚实的基础。

2025-05-28 16:15:39 27

转载 EMNLP 2024 | 突破RQ-SID“沙漏“瓶颈,提高生成式搜推上限

该方法在选择性移除不太重要的tokens的同时,保留了最有信息量的tokens,即使在移除大量数据的情况下,也能提升模型性能。解决沙漏现象的方法有多种,在此简单的从分布角度提出两种简单易行的方法:一种启发式的方法是直接移除第二层,从而消除长尾效应的影响。需要注意的是,这里首先要生成一个L层的语义ID(SID),然后再移除第二层,这与直接生成一个两层的SID不同,因为后者可能仍然存在大的路由节点。通过上述实验,不仅确认了“沙漏”效应的存在,还阐明了其对模型性能的具体影响,从而为未来的优化提供了坚实的基础。

2025-05-28 16:15:39 60

转载 EMNLP 2024 | 突破RQ-SID“沙漏“瓶颈,提高生成式搜推上限

该方法在选择性移除不太重要的tokens的同时,保留了最有信息量的tokens,即使在移除大量数据的情况下,也能提升模型性能。解决沙漏现象的方法有多种,在此简单的从分布角度提出两种简单易行的方法:一种启发式的方法是直接移除第二层,从而消除长尾效应的影响。需要注意的是,这里首先要生成一个L层的语义ID(SID),然后再移除第二层,这与直接生成一个两层的SID不同,因为后者可能仍然存在大的路由节点。通过上述实验,不仅确认了“沙漏”效应的存在,还阐明了其对模型性能的具体影响,从而为未来的优化提供了坚实的基础。

2025-05-28 16:15:39 1

转载 EMNLP 2024 | 突破RQ-SID“沙漏“瓶颈,提高生成式搜推上限

该方法在选择性移除不太重要的tokens的同时,保留了最有信息量的tokens,即使在移除大量数据的情况下,也能提升模型性能。解决沙漏现象的方法有多种,在此简单的从分布角度提出两种简单易行的方法:一种启发式的方法是直接移除第二层,从而消除长尾效应的影响。需要注意的是,这里首先要生成一个L层的语义ID(SID),然后再移除第二层,这与直接生成一个两层的SID不同,因为后者可能仍然存在大的路由节点。通过上述实验,不仅确认了“沙漏”效应的存在,还阐明了其对模型性能的具体影响,从而为未来的优化提供了坚实的基础。

2025-05-28 16:15:39 3

转载 EMNLP 2024 | 突破RQ-SID“沙漏“瓶颈,提高生成式搜推上限

本文研究了生成式搜索/推荐系统中残差量化语义标识符(RQ-SID)存在的“沙漏”瓶颈问题,其表现为中间码本令牌过度集中。通过实验分析发现,路径稀疏性和长尾分布是导致码本利用率失衡的核心因素,显著影响电商场景下生成式任务的性能。针对该问题,本文提出了针对性优化方案,有效改善了码本学习的数据分布特征,实验表明该方法能提升实际电商搜推系统的效果与泛化能力。论文链接:https://arxiv.org/abs/2407.21488v100摘要生成式搜索/推荐在搜索和推荐系统中已经成为一种创新的范式,它通过使用基于数

2025-05-28 16:15:39 1

原创 供应链计划性能优化解决方案-Clickhouse本地Join

作者:京东零售 姜波。

2025-05-27 14:31:35 609

原创 架构提效的矛盾和矛盾的主要方面

他深知自己作为新人,在这方面还有所欠缺,因此,他决定采取一个他认为更为“高效”的方法:在某个关键位置添加一个临时的标志位(flag),然后在所有需要改动的地方都加上if判断,以确保新特性能够按时上线,同时尽量减少对现有系统的影响。到此,我们介绍了架构提效中的稳定、性能和代码这三个主要的方面,限于篇幅和架构本身的实践性,还需要我们在架构提效上进行持续的优化。当然架构也有自身的矛盾统一,在架构提效上,系统的运行正常和问题频出是一对矛盾,功能的快和慢是一对矛盾,工程的整洁有序和无序是一对矛盾。

2025-05-27 14:29:43 887

原创 业务监控—一站式搭建jmeter+telegraf+influxdb+Grafana看板

这个jar包的JVM指标如何?jar包的火焰图是什么样的?对此,只能望洋兴叹。基于以上背景,对jar监控做了一些调研和实战。是一个由InfluxData开发的开源时序型数据库。它由Go语言写成,着力于高性能地查询与存储时序数据。InfluxDB被广泛应用于存储系统的监控数据,IoT行业的实时数据等场景。Influxdb有如下三大特性•基于时间序列•可度量性•基于事件相应的,我们也可以使用prometheus。

2025-05-27 14:25:37 866

原创 Java的SPI机制详解

SPI(Service Provicer Interface)是Java语言提供的一种接口发现机制,用来实现接口和接口实现的解耦。简单来说,就是系统只需要定义接口规范以及可以发现接口实现的机制,而不需要实现接口。SPI机制在Java中应用广泛。例如:JDBC中的数据库连接驱动使用SPI机制,只定义了数据库连接接口的规范,而具体实现由各大数据库厂商实现,不同数据库的实现不同,我们常用的mysql的驱动也实现了其接口规范,通过这种方式,JDBC数据库连接可以适配不同的数据库。

2025-05-26 15:53:30 562

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除