自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

CHQIUU的专栏

一切伟大的行动和思想,都有一个微不足道的开始

  • 博客(55)
  • 资源 (9)
  • 论坛 (4)
  • 收藏
  • 关注

原创 为大家提供一个基于Springboot开发的SSM代码自动生成工具(附源码地址)

code-generator-plus是基于Springboot开发的SSM代码生成器,使用 Apache FreeMarker 作为代码文件的模板,用户可以一键将数据库中的表生成entity、xml、dao、service、html、js、sql代码文件,并集成表的基础操作接口及前端功能实现(数据表的增加、删除、修改、根据ID获取信息以及分页查询功能),减少60%以上的开发任务;该工具支持所有实现JDBC规范的数据库;默认集成了MySQL数据库脚本;该工具提供了两种数据库表导入方式,连接数据库或直接导

2021-07-02 14:10:45 777 78

原创 VMWare ESXi系统中给虚拟机硬盘扩容记录(CentOS7)

在日常系统运维中,经常磁盘空间不足问题,在VMWare ESXi系统中怎么给虚拟机扩容呢?VMWare扩容了但是进入虚拟机发现磁盘容量并没有增加,这是该怎么处理呢?下面我记录一次给虚拟机CentOS7扩容的记录,希望能够帮助到您。

2021-07-01 11:34:34 977 1

原创 介绍一个基于Spring Redis Lua的无侵入应用级网关限流框架

介绍一个基于Spring Redis Lua的无侵入应用级网关限流框架项目介绍为什么选择spring-redis-current-limitQuick Start1. 引入spring-redis-current-limit2. 注册spring-redis-current-limit1.SpringBoot或SpringCloud项目2.Spring项目3. 配置您的redis连接1.SpringBoot或SpringCloud项目2. Spring应用4. 使用spring-redis-curre

2021-01-22 09:13:14 1055 26

原创 高并发系统的限流方案研究,其实限流实现也不复杂

在高并发系统中可以通过至少三种技术来保护系统:缓存、降级、限流。这里主要介绍限流算法。随着网站用户规模的增加,业务的扩张,我们网站所承受的流量规模和并发数也会不断增加。到了一定阶段我们就会希望可以对网站的流量进行一定程度的控制。因为我们的业务处理能力是有限的,我们需要优先保证关键业务的正常运转。技术人员一直以来都在致力于可以彻底的解决高并发问题,但是到目前为止也没有一种可以彻底解决的方案。其实我们可以从一整个用户请求的过程中的每个阶段进行分析,在不同的阶段采用不同的方案。

2020-12-16 17:08:40 1181

原创 Spring Boot项目中集成Swagger knife4j并自定义访问路径

我们在项目开发中,往往期望做到前后端分离,也就是后端开发人员需要输出大量的服务接口,在没有Swagger之前需要我们话费大量的精力去编写接口文档。包含如接口的地址、需要传递参数情况、返回值的JSON数据格式以及每一个字段说明、当然还要考虑HTTP请求头、请求内容等信息。而随着项目的开发进度和后期进行迭代,后端输出的接口往往会面临修改、修复等问题,那也意味着接口文档又要进行相应的调整。接口文档的维护度以及可读性就大大下降。既然接口文档需要花费精力去维护,还要适当的进行面对面交流沟通。Swagger为我们解

2020-11-20 17:08:36 2218 5

原创 SpringBoot项目增加统计接口耗时监控拦截器

话不多说直接上代码:import cn.hutool.core.util.StrUtil;import cn.hutool.extra.servlet.ServletUtil;import lombok.extern.slf4j.Slf4j;import org.springframework.lang.Nullable;import org.springframework.web.bind.annotation.RequestMethod;import org.springframewo

2020-10-14 10:28:43 2087 3

原创 SpringBoot项目基于@RestControllerAdvice注解进行全局异常统一处理

当我们在使用SpringBoot开发项目时,通常会对异常进行全局统一处理。在SpringBoot项目中,要进行全局异常处理通常有3种方式:通过@RestControllerAdvice或@ControllerAdvice注解方式;通过AOP切面方式;通过继承ErrorController方式;通过权衡,这里我们还是采用注解方式,减少代码耦合度,项目开上去也比较清爽。创建GlobalExceptionHandler类并添加注解@RestControllerAdvice,具体代码如下所示。当然你也

2020-09-01 09:13:38 1427 4

原创 QQ快速登录实现原理分析之localhost.ptlogin2.qq.com 怎么会映射到 127.0.0.1问题

最近也在研究QQ快速登录实现原理,在研究过程中也遇到一个问题久久知道其运作原理。在QQ快速安全登录页面中,一个https://localhost.ptlogin2.qq.com:4301/pt_get_uins接口,远程地址不是QQ的服务器,而是指向的是127.0.0.1访问的本机。可是奇怪的是,这样的域名映射在C:\Windows\system32\drivers\etc\hosts文件中又没有相应的配置项。腾讯是通过什么样的骚操作才能够实现这样的功能呢?下面揭晓答案(个人猜测,如有雷同纯属巧合)

2021-07-20 17:26:37 82 13

原创 手把手教你编写bat文件重启Springboot项目生成的jar包

在项目运维中,会遇到要更新线上项目的jar情况。有些项目根据客户要求可能会运行在Windows Server中,当我们更新发布新的jar文件时候都要执行多条命令才能更新完成。这里为大家提供一条新的思路进行参考,那就是建立一个批处理文件,完成jar项目重新启动功能。

2021-07-16 14:58:50 60 18

原创 CentOS系统中将Python2.7升级到3.X最新版本(3.9.6为例)

DEPRECATION: Python 2.7 will reach the end of its life on January 1st, 2020. Please upgrade your Python as Python 2.7 won’t be maintained after that date. A future version of pip will drop support for Python 2.7.CentOS系统中将Python2.7升级到3.X最新版本

2021-07-16 14:11:23 35 3

原创 Java8新增的日期处理工具LocalTime、LocalDate、LocalDateTime常用功能笔记整理

文章目录前言一、LocalTime二、LocalDate二、LocalDateTime前言Java 8新增了LocalDate和LocalTime接口,为什么要搞一套全新的处理日期和时间的API?因为旧的java.util.Date实在是太难用了。java.util.Date月份从0开始,一月是0,十二月是11,变态吧!java.time.LocalDate月份和星期都改成了enum,就不可能再用错了。java.util.Date和SimpleDateFormatter都不是线程安全的,而Local

2021-07-16 11:31:15 224 10

原创 数据分析研究思维导图

2021-07-14 11:00:47 380 2

原创 练习使用WebMagic爬取唯美图片

周末闲着没事,准备练习一下爬虫技术,同时也拓展一下视野(欣赏一下美好的东西),练习使用WebMagic爬取美女图片实战。

2021-07-12 11:19:36 1871 7

原创 Windows下安装图形数据库Neo4j说明(4.3.2压缩包方式)

Neo4j是一个世界领先的开源图形数据库。 它是由Neo技术使用Java语言完全开发的。Neo4j是NoSQL的一个代表,它是一个嵌入式,基于磁盘的,支持完整事务的Java持久化引擎,它在图像中而不是表中存储数据。Neo4j提供了大规模可扩展性,在一台机器上可以处理数十亿节点/关系/属性的图像,可以扩展到多台机器并行运行。相对于关系数据库来说,图形数据库善于处理大量复杂、互连接、低结构化的数据,这些数据变化迅速,需要频繁的查询——在关系数据库中,这些查询会导致大量的表连接,因此会产生性能上的问题。

2021-07-08 16:09:33 397 58

原创 MySQL 中常用时间处理方法都在这里了(获取当前时间/格式化/转换/计算)

文章目录一、获取当前时间二、时间格式化三、时间格式化四、时间计算一、获取当前时间-- 获得当前日期+时间(date + time)函数:NOW()SELECT NOW(); -- 2021-07-02 16:42:18-- 获得当前日期+时间(date + time)函数:SYSDATE() SELECT SYSDATE(); -- 2021-07-02 16:42:18-- 获取当期时间戳SELECT CURRENT_TIMESTAMP() -- 2021-07-02 16:

2021-07-02 17:44:50 573 24

原创 全国各地区行政代码

全国各地区行政代码统计用区划和城乡划分代码http://www.stats.gov.cn/tjsj/tjbz/tjyqhdmhcxhfdm/中华人民共和国行政区划代码http://www.mca.gov.cn/article/sj/xzqh/2018/

2021-07-02 16:28:25 3567 1

原创 HttpClient支持HTTPS(SSL),忽略安全证书配置,一文搞懂

文章目录问题描述解决方案:HttpClient4.5中支持HTTPS请求处理方法HttpClient5.1中支持HTTPS请求处理方法问题描述最近在学习HttpClient做爬虫,尝试使之能够支持HTTPS请求,忽略安全证书。在网上找了很久的资料,发现这方面的资料很少,而且多数都不准确。故记录一下。解决方案:HttpClient4.x与HttpClient5.x中配置还是有所不同,以下为大家两个版本的处理方法。HttpClient4.5中支持HTTPS请求处理方法Maven中引入配置:&lt

2021-07-01 16:14:19 1150 3

原创 电脑多网卡模式下,使用特定网口发送HTTP请求的代码实现(HttpClient5.1)

目录前言:解决方案:基于HttpClient5.1:总结:前言:前面我们讲了使用基于HttpClient和Socket两种方式处理多网卡模式下的绑定本地网卡发送请求的代码实现,现在讲一下重写HttpClient5实现本地网卡绑定实现方法。解决方案:基于HttpClient5.1:关键代码,重写DefaultRoutePlanner.determineLocalAddress 方法,加入需绑定的本地IP。代码如下:import lombok.SneakyThrows;import lombo

2021-07-01 15:39:45 2064 2

原创 自己开发邮编查询,根据地址查邮编代码实现(JAVA)

文章目录前言一、数据准备二、代码实现1. 格式化地址对象2. mapper数据库查询代码3. 查询代码实现三、运行效果前言通过地址查询邮编处理步骤:1. 首先要对地址进行格式处理,去掉多余部分,某某路后面的部分不要,因为地址库中可能没有会查不到;2. 对省市县进行处理,去掉省市县(民族)后缀;3. 若提供的详细地址在库中查不到,则从地址尾部去掉一个字再查询,直到查询到数据为止;4. 使用Mysql全文检索(5.7以后的版本),提供查询精度;一、数据准备首先准备全国邮编数据库,这里我整理了

2021-06-30 11:11:36 789 3

原创 为大家提供19个代理IP网站,我用这个免费代理IP池

最近准备搭建一个属于自己的代理IP池,整理了目前市面上提供免费代理IP的网站(详情请见下表),所列站点均经过手动验证请放松使用。

2021-06-24 15:11:08 895 3

原创 SpringBoot性能调优笔记

分析起一个单纯的spring boot的web项目,容器为undertow自动GC后使用的内存约为28M,随着运行产生一些运行对象,最高达到约300M起一个只有一个接口的spring cloud euraka项目,容器为undertow自动GC后使用的内存约为49M,最高达到约344M,每隔约17分钟执行一次垃圾回收hap-user-service服务,不添加JVM参数自动GC后使用的内存约为115M,最高达到约1.4G,每隔约50分钟执行一次垃圾回收。本机内存为16G,JVM自动

2021-06-24 11:00:34 1305 4

原创 Elasticsearch 调优策略

Elasticsearch 调优策略拆分集群对于存在明显分界线的业务,可以按照业务、地域使用不同集群,这种拆分集群的思路是非常靠谱的。Elasticsearch官方建议使用小而美的集群,避免巨无霸式的集群,我们在实际使用过程中对这一点也深有体会。但对于我们的场景,已经按照地域拆分了集群,且同一地域的子业务间分界线不明显,拆分过多的集群维护成本较高。调整滚动周期根据保留时长调整index滚动周期是最简单有效的思路。例如保留3天的数据按天滚动,保留31天的数据按周滚动,保留一年的数据按月滚动。合理的滚动

2021-06-24 10:55:44 1191

原创 重构改善现有代码的设计-知识点整理

重构改善现有代码的设计重构原则重构的定义名词形式:对软件内部结构的一种调整,目的是在不改变软件可观察行为的前提下,提供其可理解性,降低其修改成本;动词形式:使用一系列重构手法,在不改变软件可观察行为的前提下,调整其结构;软件开发的两顶帽子添加新功能时,不应该修改既有代码,只管添加新功能,并通过测试;重构时不能再添加新功能,只管改进程序的架构,并通过已有的测试。为何重构重构改进软件设计重构是软件更容易理解重构帮助找到BUG重构提高编程速度何时重构三次法则(事不过三,三则重

2021-06-24 10:53:04 1591

原创 SpringBoot项目中Controller层代码编写规范整理

SpringBoot项目中Controller层代码编写规范整理Controller层代码规范SpringMVC接口定义要注意以下常见的几种问题1. 返回格式不统一2. 没有考虑失败情况3. 出现和业务无关的输入参数Controller层代码规范主要的内容是就是接口定义里面的内容,你只要遵循里面的规范,controller就问题不大,除了这些,还有另外的几点:所有函数返回统一的ResultBean/PageResultBean格式;没有统一格式,AOP无法玩.ResultBean/PageRes

2021-06-24 10:49:18 1203

原创 Springboot项目中对返回前端的JSON数据进行格式化配置

文章目录前言对返回前端的JSON数据进行格式化代码前言在WEB项目开发中,通常都是前后端分离,由后端提供接口前端进行访问,返回的数据一般是JSON格式,在配置项目时候会对返回JSON进行格式化。下面是我在多个项目开发过程中总结出来的一个通用的JSON数据格式化的通用配置,希望能够帮助到大家。对返回前端的JSON数据进行格式化代码代码如下(示例): /** * 对返回前端的JSON数据进行格式化 * * @return 进行格式化ObjectMapper

2021-06-21 16:15:11 1333

原创 介绍Spring Boot 启动时,自动执行指定方法的 7 种方法

目录前言实现方式1.实现ServletContextListener接口contextInitialized方法2.静态代码块方式3.@PostConstruct注解方式4. 实现ServletContextAware接口setServletContext 方法5. @EventListener方式6. 实现ApplicationRunner接口run 方法7.实现CommandLineRunner接口run 方法以上几种方式的执行顺序总结前言在实际项目开发过程中,我们有时候需要让项目在启动时执行特定

2021-06-21 15:45:17 1272

原创 JAVA设计模式征服之路-00-设计模式简介

系列文章目录提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加例如:第一章 Python 机器学习入门之pandas的使用提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录系列文章目录前言一、pandas是什么?二、使用步骤1.引入库2.读入数据总结前言提示:这里可以添加本文要记录的大概内容:例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。提示:以下是本篇文章正文内容,下面案例

2021-06-21 12:19:17 724

原创 教你使用JAVA代码重启路由器(TP-LINK)

目录前言:解决方案:前言:在我们写爬虫时,防止目标网站封禁我们的IP,可能会经常重启路由器或光猫,重新获取IP地址解决方案:直接上代码:import org.openqa.selenium.By;import org.openqa.selenium.Dimension;import org.openqa.selenium.WebDriver;import org.openqa.selenium.chrome.ChromeDriver;import org.openqa.seleniu

2021-06-18 15:41:57 2198 1

原创 电脑多网卡模式下,使用特定网口发送HTTP请求的代码实现(WebMagic)

目录前言:解决方案:基于WebMagic:总结:前言:前面我们讲了使用基于HttpClient和Socket两种方式处理多网卡模式下的绑定本地网卡发送请求的代码实现,现在讲一下重写WebMagic实现本地网卡绑定实现方法。解决方案:基于WebMagic:首先,重写HttpUriRequestConverter类,增加绑定本地IP地址功能。代码如下:import org.apache.http.HttpHost;import org.apache.http.auth.AuthState;i

2021-06-18 08:54:04 864 4

原创 电脑多网卡模式下,使用特定网口发送HTTP请求的代码实现(HttpClient4、Socket)

电脑多网卡模式下,使用特定网口发送HTTP请求的代码实现。我的电脑上有多个网卡,同时链接有多个网络。在写爬虫的时候想使用特定的网卡发送请求,这样就不会每次需要爬取数据都要将另外的网卡禁用,防止使用到其他网卡而被要爬取的网站封禁IP。

2021-06-09 15:43:13 1211 4

原创 学习FreeMarker常用语法,一篇就够了

if指令//第一种用法[#if 条件]...[/#if]//第二种用法 [#if 条件] ... [#else] ...[/#if] //第三种用法 [#if 条件] ... [#elseif 条件] ... [#else] ...[/#if]list指令//第一种用法[#list animals as animal] ...[/#list]//第二种用法[#list animals] //如果集合为空则不进list ... [#ite

2021-06-02 09:18:46 979

原创 MySQL数据库中,字符串拆分(如将英文姓名拆分为姓氏和名字两个字段)

文章目录前言处理办法前言在开发工作中,遇到这样一个问题,之前客户将用户英文姓名存储在一个字段中如:Bin ZHOU 或 Bruce THOMEAS 这种形式。后期客户又想将将姓氏和名字分开存,这样我们就需要对数据库进行变更。处理办法我们知道英文中一般是名字在前姓氏在后。代码如下(示例):-- 先通过查询将原先字符串进行拆分,其中first_name_en为名字,last_name_en 为姓氏SELECT `username_en`,REPLACE(`username_en`,CONCAT

2021-06-01 16:04:52 2092

原创 Spring 5中WebClient支持SSL配置

问题描述:最近在学习WebClient做爬虫,尝试使之能够支持SSL。在网上找了很久的资料,发现这方面的资料很少,而且多数都不准确。故记录一下。解决方案:代码如下: public static WebClient createWebClient() throws SSLException { SslContext context = SslContextBuilder.forClient().trustManager(InsecureTrustManagerFactory.INST

2021-05-28 11:27:22 1047

原创 MyBatis-Plus自定义DefaultSqlInjector,添加自定义通用方法(replace、insertIgnore、insertIgnoreBatch)

文章目录前言一、代码结构二、使用步骤1.创建通用方法的实现类(InsertIgnore、InsertIgnoreBatch、Replace)2.MybatisPlus自定义SQL方法枚举3.创建自定义SQL注入器CustomerSqlInjector3.自定义基础CustomerMapper继承BaseMapper4.自定义基础Service继承IService及实现类5.增加或MybatisPlus配置类,加载自定义sql注入器总结前言虽然MyBats-Plus的BaseMapper提供了非常好用,

2021-05-25 10:36:02 733 3

原创 各种数据库中包含某个值的所表和字段的语句,支持Oracle、MySQL、SQLServer

在项目开发工作中,可能会遇到如敏感数据清理或者分析其他系统数据库数据结构的情况。这样就会用到通过某个特定的值去反向查询数据库,分析出该值在该数据库中的表和字段,以此为切入点了解该数据库的基本结构。这里整理了各个类型的数据库(Oracle、MySQL、SQLServer)中具体执行方法。

2021-05-21 09:38:47 1507

原创 Linux中重启Springboot项目命令

在将Springboot项目发布到Linux服务器后,经常会遇到发布新版本的情况。以前的操作流程需要将JAR包拷贝到服务器通过以下命令重启新版本的程序# 找到APP运行的进程IDps -ef|grep java 或 ps -ef|grep myapp# 结束进程kill -9 1343# 进入app目录后启动版本的appcd /apps/myapp/nohup java -jar myapp-1.0.8.jar & echo $! > /apps/myapp/myapp.pi

2021-03-29 17:29:25 1166 2

原创 C# 多线程下载文件功能实现,优化文件下载不全问题

using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.IO;using System.Threading;using System.Net;using System.Diagnostics;namespace Download{ /// <summary> /// 多线程下载文件工具类 /// </summary

2021-03-26 12:05:22 946

原创 Linux系统中安装Elasticsearch并实现开机自动启动

Linux系统中安装Elasticsearch并实现开机自动启动安装环境安装 JAVA 运行环境安装 Elasticsearch下载安装包解压安装包创建es用户修改配置文件修改elasticsearch.yml配置文件修改jvm.options配置文件配置elasticsearch启动文件和启动配置验证下服务是否正常运行安装常见问题max file descriptors [4096] for elasticsearch process is too low, increase to at least [6

2021-03-17 17:37:54 1397 1

原创 Idea中发布JAR包到中央仓库报错问题处理 unable to find valid certification path to requested target

报错信息如下:Failed to execute goal org.sonatype.plugins:nexus-staging-maven-plugin:1.6.8:deploy (injected-nexus-deploy) on project spring-redis-current-limit: Execution injected-nexus-deploy of goal org.sonatype.plugins:nexus-staging-maven-plugin:1.6.8:deploy

2020-12-24 12:43:07 2091

原创 MySQL主从复制配置说明,一文教你搞懂数据库主从复制

一,MySQL主从配置原理1. mysql支持的复制格式基于语句复制(STATEMENT) (优点)基于statement复制的优点很明显,简单的记录执行语句同步到从库执行同样的语句,占用磁盘空间小,网络传输快,并且通过mysqlbinlog工具容易读懂其中的内容 。 (缺点)并不是所有语句都能复制的比如:insert into table1(create_time) values(now()),取的是数据当前时间,不同的数据可能时间不一致,另外像存储过程和触发器也可能存在问题。

2020-12-17 11:25:23 1333 3

全国初中高中小学学校名单2020.xlsx

包含省/直辖市编码名称、地市编码及名称、区县编码及名称、学校编码及名称,24万条最全数据,数据来源学生体质健康网

2020-07-22

全国初中高中小学学校名单2021版.xlsx

包含全国大学、高中、初中、技校、小学全部名称数据,含省/直辖市编码名称、地市编码及名称、区县编码及名称、学校编码及名称,23万条最全数据,数据来源学生体质健康网。若需要定制数据,可私信我

2021-03-29

全国初中高中小学学校名单2021版-详细信息版.xlsx

包含全国大学、高中、初中、技校、小学全部名称数据,含省/直辖市编码名称、地市编码及名称、区县编码及名称、学校标识码及名称、学校详细地址,位置坐标、联系电话(联系电话不是每个学校都有)等信息,23万条最全数据,数据来源学生体质健康网。 有什么问题可以私信联系我

2021-05-11

A++浏览器V6.2安装文件 ApplusClientSetup.exe

用友财务软件需要的,A++浏览器V6.2安装文件 ApplusClientSetup.exe,绝对可用

2020-07-16

国内邮政编码2021版-MySQL数据库脚本(postcode_detail.sql)

本资源包包含国内邮编及邮编分管范围,包含字段:邮政编码、省/直辖市、地市、区县和乡镇区域,数据量全共计28万条

2021-06-30

国内邮政编码2021版.xlsx

本资源包包含国内邮编及邮编分管范围,包含字段:邮政编码、省/直辖市、地市、区县和乡镇区域。

2021-06-08

ipv4-ipv6 IP地址数据库

包含最新的30万条ipv4地址数据和13万条ipv6地址数据,提供ip地址,国家、省市县及行政区域代码,若有问题可私信咨询

2021-04-21

使用Linux之安装MySQLCluster集群.docx

MySQL Cluster是一个基于NDB Cluster存储引擎的完整的分布式数据库系统。不仅仅具有高可用性,而且可以自动切分数据,冗余数据等高级功能。和Oracle Real Cluster Application不太一样的是,MySQL Cluster 是一个Share Nothing的架构,各个MySQL Server之间并不共享任何数据,高度可扩展以及高度可用方面的突出表现是其最大的特色。

2020-07-17

Transact-SQL用户指南Sybase

Sybase Transact-SQ 用户指南

2013-05-14

何使用sql语句计算工作日(除去周六周日以及法定节假日)

发表于 2013-07-27 最后回复 2013-08-12

拷贝数据库文件问题(急)

发表于 2013-06-14 最后回复 2013-07-27

求一个能够单步调试存储过程的工具

发表于 2013-05-10 最后回复 2013-05-15

sql 承办人变更情况统计问题求助

发表于 2013-04-28 最后回复 2013-04-29

空空如也

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

TA关注的人 TA的粉丝

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