自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(69)
  • 资源 (2)
  • 问答 (1)
  • 收藏
  • 关注

原创 RuoYi若依框架学习:多环境配置

本文介绍了在RuoYi框架中实现多环境配置的方法。通过使用不同的YML配置文件(如application-dev.yml、application-test.yml和application-prod.yml),开发者可以针对开发、测试和生产环境设置特定的数据库连接、日志级别等参数。文章详细说明了如何创建这些配置文件,并在application.yml中设置默认激活的Profile。同时,提供了通过命令行参数覆盖默认设置的示例。通过使用@Value注解,开发者能够在代码中方便地读取配置项。文章强调了灵活管理不同

2024-09-27 22:56:33 408

原创 Springboot中yml文件不生效原因分析及解决

本文分析了在Spring Boot项目中YML文件不生效的常见原因及解决方案。首先,YML文件的格式非常敏感,任何缩进或语法错误都可能导致配置无法解析,因此需确保格式正确。其次,文件命名和位置也至关重要,必须放在src/main/resources目录下,并命名为application.yml或application-{profile}.yml。此外,要检查是否激活了正确的Profile,并注意环境变量可能覆盖YML中的配置。代码中若有硬编码的配置也会导致YML失效。最后,确保所有依赖版本匹配,以避免因版本

2024-09-27 22:55:13 307

原创 之前请求都是正常的,然后第三方的数据库抖动了导致请求的二次请求出现431

本文讨论了第三方数据库抖动导致二次请求出现HTTP 431错误的技术问题。文章分析了数据库抖动对请求处理和服务器资源管理的影响,指出数据库延迟可能导致服务器无法及时响应二次请求,从而触发431错误。文章提出了解决方案,包括显式关闭HTTP连接以释放资源、优化服务器的连接池和请求队列管理、以及调整超时和重试机制,确保在数据库抖动时系统能稳定运行。这些方法能够有效避免由于资源未及时释放或超时处理不当引发的请求失败问题。

2024-09-26 14:38:52 661

原创 接口返回动态列名及动态列数据结构

本文介绍了如何在接口中实现动态列名及动态列数据结构的返回。通过具体的业务场景——房屋供应数据,展示了如何将数据库中的聚合值(如日期和供应数量)解析为动态列,并通过代码实现动态列名和数据的处理。文章详细阐述了实体类设计、动态列解析以及如何生成动态列名列表并返回给前端。此外,介绍了如何使用 LinkedHashSet 保证列名有序,确保动态生成的列按照日期顺序展示。文章为处理报表和统计类需求提供了可参考的技术解决方案。

2024-09-26 14:32:15 478

原创 解决Java应用中数据库连接池泄漏问题定位处理

数据库连接池泄漏是影响Java应用性能的常见问题,及时检测和解决此类问题至关重要。通过合理的配置、有效的监控和编码规范,可以显著减少连接泄漏的风险,保障应用的稳定性与高效性。通过本文的分享,希望能帮助开发者更好地管理数据库连接池,提升应用性能。

2024-09-25 10:11:10 286

原创 解决docker目录内存不足扩容处理

本文探讨了在使用Docker时遇到的目录内存不足问题及其扩容解决方案。随着容器化应用的增加,Docker目录(如存储层、镜像、日志等)可能会迅速消耗可用内存,导致系统性能下降或容器无法正常运行。文章首先分析了内存不足的常见原因,包括不当的存储配置和容器日志积累。接着,提供了几种有效的扩容方法,如修改Docker存储路径、使用外部卷和清理不必要的镜像和容器。通过实际案例和步骤指导,用户能够迅速应对内存不足问题,实现Docker环境的稳定运行和高效管理。

2024-09-25 09:58:39 1531

原创 linux中搭建Nginx

本文介绍了如何在Linux系统中搭建Nginx,从环境准备、安装步骤到基本配置的详细过程。首先,通过更新系统包和安装Nginx开始,随后介绍了启动、查看Nginx服务状态及设置开机自启的方法。接着,讨论了Nginx配置文件的基础配置和虚拟主机设置,指导用户如何修改配置文件并重启Nginx使其生效。文章还讲解了开放防火墙端口以允许外部访问,并提供了常用的Nginx管理命令,如重启、停止、查看状态等。最后,文章简要介绍了配置SSL证书以支持HTTPS的步骤。通过本文,用户可以快速搭建并配置一个基础的Nginx服

2024-09-24 09:51:44 760

原创 Python项目打包并部署到Docker

本文介绍了如何使用Docker将一个Python项目打包成镜像并部署为容器,主要步骤包括:准备Python项目和依赖文件。编写Dockerfile定义镜像构建过程。使用Docker命令构建镜像并运行容器。优化Docker镜像大小。自动化部署脚本。通过将Python应用打包成Docker镜像,开发者可以轻松实现跨平台的应用部署和管理,显著提高开发和运维效率。

2024-09-24 09:15:00 523

原创 docker部署datart并配置邮件发送及遇到的问题

docker部署datart并配置邮件发送及遇到的问题及解决方案

2024-09-23 15:21:17 239

原创 docker部署datart并添加扩展clickhouse&odps的jar包数据源驱动

docker部署datart并添加扩展clickhouse&odps的jar包数据源驱动

2024-09-23 15:20:29 658

原创 使用docker-compose给自己上传的JAR打包成镜像并自动启动容器每次更新jar包自动化执行脚本

本文介绍了通过编写自动化脚本,可以在每次更新JAR包后自动执行历史容器镜像移除并打包新的镜像和启动容器的操作。希望本文对你在Docker和Docker Compose的使用上有所帮助。如有任何问题或建议,欢迎交流讨论。使用Docker Compose给自己上传的JAR打包成镜像并自动启动容器传送门。

2024-07-22 11:33:27 649

原创 使用Docker Compose给自己上传的JAR打包成镜像并自动启动容器

本文介绍了如何使用Docker Compose将一个上传的JAR文件打包成Docker镜像,并在容器中自动启动该应用程序。通过Docker Compose,可以简化多容器应用程序的管理和部署,提高开发和运维效率。安装Docker和Docker Compose。创建项目目录并放置JAR文件。编写Dockerfile定义镜像构建过程。编写定义服务配置。使用命令构建并启动容器。验证容器状态和查看日志。希望本文对你在Docker和Docker Compose的使用上有所帮助。

2024-07-22 11:19:44 1470 1

原创 linux设置Nginx自动重启

在生产环境中,确保Nginx在服务器重启后自动启动是非常重要的。本文将详细介绍如何在Linux系统中设置Nginx服务开机自动重启的方法,确保Nginx能够在系统启动后自动恢复运行。

2024-07-15 09:39:06 719

原创 Linux中docker服务及容器设置开机自动重启

在使用Docker进行应用部署时,确保Docker服务在系统重启后自动启动是非常重要的。这样可以确保在服务器重启后,所有的容器和服务能够自动恢复运行,保证业务的连续性。本文将详细介绍如何在Linux系统中设置Docker服务开机自动重启的方法。

2024-07-15 09:38:33 1104

原创 Spring Boot应用启动慢的原因分析及优化方法

Spring Boot应用启动慢的原因有很多,涉及自动配置、依赖、数据加载、配置文件、外部服务、类加载、日志配置以及自定义初始化逻辑等多个方面。通过禁用不必要的自动配置、减少依赖、启用延迟初始化、优化数据加载、简化配置文件、优化类加载、合理配置日志以及优化自定义初始化逻辑等方法,可以显著提升Spring Boot应用的启动速度。

2024-07-05 13:24:27 2792

原创 如何处理Java中数据结构(如HashMap)导致的性能瓶颈

HashMap是Java中常用的数据结构,但在使用过程中可能会遇到性能瓶颈。通过合理设置初始容量和负载因子、选择合适的哈希函数、使用、优化扩容机制以及考虑替代数据结构,可以有效提升HashMap的性能。

2024-07-05 13:23:50 495

原创 Java中类加载器引起的ClassNotFoundException和NoClassDefFoundError

ClassNotFoundException和NoClassDefFoundError是Java开发中常见的异常,通常与类加载器有关。通过理解类加载器的工作原理,合理设置类路径,并在必要时使用自定义类加载器,可以有效地解决这些问题。

2024-07-04 10:17:50 1179

原创 Java多线程编程中的死锁问题及解决方法

死锁是指两个或两个以上的线程在执行过程中互相等待对方释放锁,而导致的永久等待状态。1. 互斥条件:一个资源每次只能被一个线程占用。2. 持有和等待:一个线程已持有至少一个资源,同时等待其他线程释放资源。3. 不可剥夺:线程获得的资源在未使用完之前,不能强行剥夺。4. 环路等待:多个线程形成环路,每个线程等待下一个线程释放资源。在Java多线程编程中,死锁是一个常见的问题。通过了解死锁的原理,使用正确的编程实践和工具,可以有效地预防和解决死锁问题。

2024-07-04 10:16:22 674

原创 自定义编写 MySQL 语句 SELECT * 及返回对象用 MySQL 表映射类接收值为空的定位及处理

在使用自定义 SQL 查询语句时,由于命名不符合驼峰命名规则导致查询结果为空的问题。我们提供了两种解决方案:修改实体类字段命名为符合驼峰命名规则,或者使用 @Results 注解手动映射字段。

2024-07-03 10:23:17 828

原创 内存泄漏的追踪及分析定位

内存泄漏指的是程序中不再需要的内存未能被释放,导致内存使用量不断增加,最终可能耗尽所有可用内存。内存泄漏通常发生在手动内存管理的语言中,如 C 和 C++,但在自动内存管理语言如 Java 和 Python 中也可能发生。内存泄漏是一个常见且严重的问题,通过正确的工具和方法可以有效地追踪和定位内存泄漏。在实际开发中,良好的编码习惯和定期的内存监控是预防内存泄漏的重要措施。

2024-07-03 10:22:24 1781

原创 Docker 镜像移动或复制到另一台服务器

通过本文介绍的方法,你可以选择适合自己需求的方式将 Docker 镜像移动或复制到另一台服务器。无论是使用 docker save 和 docker load,Docker Registry,还是 docker export 和 docker import,都能帮助你实现镜像的迁移和管理。希望本文对你有所帮助,如果有任何问题或建议,欢迎交流讨论。

2024-07-02 09:53:17 5143

原创 定位线上同步锁仍然重复扣费的Bug定位及Redis分布式锁解决方案

通过以上步骤,我们可以解决同步锁在分布式环境下无法避免重复扣费的问题。使用 Redis 分布式锁,不仅能在多台服务器上保证锁的唯一性,还能提高系统的并发处理能力,避免性能瓶颈。希望本文对你在解决分布式系统中的并发问题有所帮助,如果有任何问题或建议,欢迎交流讨论。

2024-07-02 09:52:42 836

原创 Linux中将指定文件远程发送到指定服务器中

在日常开发和运维过程中,我们经常需要将本地文件传输到远程服务器。本文将详细介绍如何使用 scp 命令将本地文件或目录发送到远程主机。

2024-07-01 10:47:34 549

原创 Docker 中查看及修改 Redis 容器密码的实用指南

通过本文介绍的方法,你可以轻松地查看和修改 Docker 中 Redis 容器的密码。无论是通过启动命令、Docker Compose 文件,还是容器内的配置文件,这些步骤都能帮助你更好地管理你的 Redis 实例。希望本文对你有所帮助,如果有任何问题或建议,欢迎交流讨论。

2024-07-01 10:46:28 2028

原创 优化 Java 异常处理机制以提高代码可靠性

优化 Java 异常处理机制以提高代码可靠性

2024-05-30 09:28:49 350

原创 for循环外创建一个http请求对象,循环内赋值参数多次请求返回数据相同定位及解决(共用一个请求对象,不同请求参数,结果相同问题定位)

for循环外创建一个http请求对象,循环内赋值参数多次请求返回数据相同定位及解决(共用一个请求对象,不同请求参数,结果相同问题定位)

2024-05-30 09:27:25 360

原创 解决 MySQL 中使用 VARCHAR 类型字段判断是否等于 ‘1‘ 时总是异常的问题

解决 MySQL 中使用 VARCHAR 类型字段判断是否等于 ‘1‘ 时总是异常的问题

2024-05-21 09:34:44 457

原创 如何在 Spring Boot 中集成 Redis 存储并避免 Redis 大 Key 的方案及场景

如何在 Spring Boot 中集成 Redis 存储并避免 Redis 大 Key 的方案及场景

2024-05-21 09:34:03 362

原创 负载均衡情况下或项目无法加载字体情况下处理

在springboot中使用ftl功能完成html转化为图片来实现各种页面动态分享图,但是ftl模板的字体设置不生效,会从项目字体模板中用默认的字体,当小程序或者app的ui有自己设计的字体需求时,则需要加载自己的字体或者特定字体

2024-05-08 13:42:54 196

原创 springboot中使用fastJson返回前端数据出现$ref处理

springboot中使用fastJson返回前端数据出现$ref处理

2024-05-08 13:41:28 578 2

原创 springboot通过ftl模板动态生成图片字体异常加载字体文件

有不少小伙伴问生成的图片字体异常,或者本地正常服务器异常,我这里有一个优化,给字体文件放在项目中自己加载即可。

2024-01-25 11:15:00 771 5

原创 springboot+拦截器+本地线程实现token的解析及用户信息上下文使用

springboot+拦截器+本地线程实现token的解析及用户信息上下文使用。

2024-01-25 11:14:14 851 2

原创 4、Redis高并发分布式锁实战

Redis高并发分布式锁实战

2024-01-15 16:55:03 727

原创 3、深入解析Redis Cluster集群运维与核心原理

深入解析Redis Cluster集群运维与核心原理

2024-01-15 16:48:08 841

原创 2、Redis持久化、主从与哨兵:构建强大而稳定的数据生态

Redis作为一款高性能的内存数据库,其在持久化、主从复制和哨兵系统方面的支持使其在大规模应用和高可用性场景中脱颖而出。本文将深入探讨Redis的持久化机制、主从复制以及哨兵系统,为构建强大而稳定的数据生态揭示关键技术。

2024-01-12 13:43:18 1154

原创 1、Redis核心数据结构: 魔法般的数据存储之旅

Redis核心数据结构

2024-01-12 11:33:56 1136

原创 优化Java代码性能的十个实用技巧

java优化代码性能的实用技巧

2024-01-11 10:36:54 814 2

原创 docker搭建部署minio 存储文件

MinIO是一个开源的对象存储服务器,它允许你在自己的硬件上构建高性能的对象存储。本文将指导你如何使用Docker搭建和部署MinIO,并挂载外部目录以实现文件的持久化存储。

2024-01-10 10:43:37 833

原创 docker搭建部署mysql并挂载指定目录

docker搭建部署mysql并挂载指定文件目录

2024-01-10 10:15:18 2585 2

原创 在springboot中集成clickhouse进行读写操作

上篇文章讲了如何在docker中搭建clickhouse,本篇记录一下在springboot中如何集成clickhouse并进行读写。

2024-01-08 14:58:16 1615

odps-jdbc-3.2.9-jar-with-dependencies.jar

odps-jdbc-3.2.9-jar-with-dependencies.jar 是阿里云 MaxCompute(开放数据处理服务,ODPS)平台的 JDBC 驱动程序,专为大数据处理和分析而设计。此版本的驱动程序包含所有必要的依赖库,简化了开发人员在 Java 环境中连接 MaxCompute 平台的过程。通过标准的 JDBC API,开发者可以使用 SQL 语句从 MaxCompute 读取和写入数据,实现与大数据平台的无缝集成。 该驱动程序支持执行复杂的分布式计算、批处理和数据分析操作,特别适用于大规模数据处理场景。开发人员能够利用它在 Java 应用程序中运行大数据查询、获取分析结果,并将其集成到企业数据流程中。此外,它具备良好的兼容性和扩展性,能够与常见的 Java 数据库工具和框架无缝对接,支持高效的并发查询和数据处理任务。 odps-jdbc-3.2.9-jar-with-dependencies.jar 提供了稳定的性能和可靠的连接管理,使开发者可以更轻松地操作阿里云的 MaxCompute 平台,优化数据分析和处理效率,提升大数据应用的开发体验。

2024-09-23

aliyun-odps-jdbc-3.2.29

aliyun-odps-jdbc-3.2.29jar包 是阿里云为其大数据平台 MaxCompute(也称为 ODPS:开放数据处理服务)提供的 JDBC 驱动程序。通过该驱动,开发者可以在 Java 应用程序中使用标准的 JDBC API 与 MaxCompute 平台进行无缝交互。它支持执行复杂的 SQL 查询、批量数据处理、数据分析、以及分布式计算,适用于大规模数据集的管理和操作。 该版本的驱动程序能够与常见的 Java 数据库管理系统整合,提供高性能的数据读写能力,支持大数据生态下的多种操作。同时,它保持了与 MaxCompute 的高兼容性,确保开发者能够充分利用阿里云的大数据基础设施。无论是离线分析还是实时数据处理场景,该 JDBC 驱动都可以帮助企业快速集成并高效利用 MaxCompute 资源,简化数据处理管道并提高数据分析的执行效率。

2024-09-23

docker配置和使用说明(超详细!!!)

真实可用的docker配置&使用,内附具体拉镜像、创建容器、停止容器、移除容器、构建镜像,自定义给项目jar包打成镜像、启动容器的具体保姆操作文章内容,可以让docker萌新小白顺利进阶为docker熟练工,冲刺高级Docker Compose 容器编排

2024-06-17

java将九个图片生成一个九宫格图片

使用Java代码技术将九个拼图生成一个九宫格图片;使用Java代码技术将九个拼图生成一个九宫格图片;使用Java代码技术将九个拼图生成一个九宫格图片;使用Java代码技术将九个拼图生成一个九宫格图片;使用Java代码技术将九个拼图生成一个九宫格图片;使用Java代码技术将九个拼图生成一个九宫格图片;使用Java代码技术将九个拼图生成一个九宫格图片;使用Java代码技术将九个拼图生成一个九宫格图片;使用Java代码技术将九个拼图生成一个九宫格图片;使用Java代码技术将九个拼图生成一个九宫格图片;使用Java代码技术将九个拼图生成一个九宫格图片;使用Java代码技术将九个拼图生成一个九宫格图片;使用Java代码技术将九个拼图生成一个九宫格图片;

2023-10-09

springboot注解+aop实现接口限流

springboot框架中使用自定义注解,配合切面实现接口限流,增加ip黑名单功能,可实现ip+账号+接口进黑名单,也可以实现账号+ip进黑名单及禁用账号; 可以学会自定义注解使用、自定义响应码枚举及使用、自定义异常类及使用、aop的使用、自定义动态配置全局配置项及使用、ip解析工具、自定义redis缓存key枚举及使用

2023-09-07

gui界面的账号管理系统

使用Java的gui开发,含有首页登录模块、主页面账号列表、查询按钮及查询条件过滤、添加账号功能、退出功能,适合初学者更好的使用和学习gui去开发管理系统

2023-08-21

html转img图片或ImgBase64(通过ftl模板填充数据转为图片)

通过ftl模板画好样式,然后进行填充数据后生成的html转为img图片或者imgBase64进行展示,优势可以用于实时生成图片方便用户保存和分享传播

2023-06-11

Java代码优化细节总结

代码优化,一个很重要的课题。可能有些人觉得没用,一些细小的地方有什么好修改的,改与不改对于代码的运行效率有什么影响呢?这个问题我是这么考虑的,像大海里面的鲸鱼一样,它吃一条小虾米有用吗?没用,但是,吃的小虾米一多之后,鲸鱼被喂饱了。代码优化也是一样,如果项目着眼于尽快无BUG上线,那么此时可以抓大放小,代码的细节可以不精打细磨;但是如果有足够的时间开发、维护代码,这时候必须考虑每个可以优化的细节了,一个一个细小的优化点累积起来,对于代码的运行效率是有提升的。

2023-06-06

程序员自我修养的提升规范

资源中包含编程风格、异常日志、单元测试、安全规约、数据库、工程结构(应用分层、二方库依赖、服务器等等相关的约束)

2023-06-06

Java面试题大全(备战2023)

这本面试手册包含了Java基础、Java集合、JVM、Spring、Spring Boot、Spring Cloud、Mysql、Redis、RabbitMQ、Dubbo、Netty、Kafka、MongoDB、设计模式、数据结构、Java算法、加密算法、机器学习、云计算、分布式及架构设计等方面的技术点。内容难度参差,满足初中高级Java工程师的面试需求

2023-06-06

springBoot+aop+自定义注解+本地线程实现统一接口日志及接口响应时长

内容概要:springboot+拦截器+aop+自定义注解+本地线程实现统一接口日志记录,记录下接口所在模块、接口描述、接口请求参数、接口返回参数、接口请求时间以及接口耗时用于接口优化,接口记录参数以及操作人防止使用人员误操作不认或者业务人员暗中操作系统的情况导致吵架现象; 核心原理:通过自定义注解实现每个接口的描述及所在模块还有接口的操作类型,通过拦截器及访问方法后的切面aop记录接口的总耗时,在接口请求前在本地线程记录请求的参数,接口请求后记录返回参数及记录请求日志 可以学习: 拦截器的使用、aop切面的使用、如何自定义注解以及自定义注解的使用、本地线程的使用方法及适用场景 有不懂的地方可以找我,项目readme介绍提供了联系方式 拦截器+aop+自定义注解+本地线程实现统一接口日志记录

2023-02-01

apache-maven-3.6.3.zip

Java开发必不可少的一个依赖; Maven作为一个构建工具,不仅帮我们自动化构建,还能抽象构建过程,提供构建任务实现。 他跨平台,对外提供一致的操作接口,这一切足以使他成为优秀的,流行的构建工具, 但是Maven不仅是构建工具,他还是一个依赖管理工具和项目信息管理工具,他还提供了中央仓库,能帮我们自动下载构件

2022-12-18

MybatisCodeHelperNew-2.8.8-SNAPSHOT-183-202.zip

idea的插件,下载导入到idea后重启idea即可使用,能快速对mysql表生成对应实体类,映射类,减少程序员工作量,专注于主业务的开发

2022-12-18

lde-eval-resetter idea重置试用期脚本

使用方式: 1、给下载的ide-eval-resetter.sh放在任何带有linux环境中 2、使用命令sh ide-eval-resetter.sh 3、给解压的压缩包拖进idea

2022-12-15

ide-eval-resetter

使用方法:将下载好的压缩包拖拽到pycharm后, 重启pycharm

2022-12-15

元旦倒计时代码前端html

元旦倒计时代码、前端html

2022-12-10

跨年烟花代码炫酷3D烟花

跨年烟花代码,炫酷3D跨年烟花代码

2022-12-10

java小游戏(贪吃蛇、2048、石头剪刀布)

java小游戏 贪吃蛇、2048、石头剪刀布

2022-12-06

动态水球用于页面加载等待页面

前端水球页面可用于页面加载中的页面,适用于前端页面

2022-12-06

圣诞树源码圣诞节圣诞树源码

内容概要:圣诞树源码 使用人群:有电脑就行 使用场景:圣诞节期间

2022-12-06

爱心源码表白神器表白男生女神

内容概要:爱心源码(拥有动态效果) 适用人群:有电脑就行 使用场景:给女生男生表白 其他说明:表白有手就行(下载就行)

2022-12-06

springboot实现获取企业微信会话内容存档支持windows、linux部署配置

java的springboot框架获取企业微信会话内容进行存档,支持windows部署、linux下的docker部署; 能学到什么:企业微信获取会话的流程;企业微信的获取会话内容的公钥私钥加解密;获取企业微信会话内容; 阅读建议:此资源根据企业微信提供的api文档流程进行开发,所以在学习的过程里要结合官方提供的api文档内容一起实践,并调试对应的代码;有不懂的地方可以直接找我,项目readme介绍提供了联系方式

2022-05-27

java的springboot框架实现获取企业微信会话内容存档

java的springboot框架获取企业微信会话内容进行存档,支持windows部署、linux下的docker部署; 能学到什么:企业微信获取会话的流程;企业微信的获取会话内容的公钥私钥加解密;获取企业微信会话内容; 阅读建议:此资源根据企业微信提供的api文档流程进行开发,所以在学习的过程里要结合官方提供的api文档内容一起实践,并调试对应的代码;有不懂的地方可以直接私聊我,博客有联系方式

2022-05-27

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

TA关注的人

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