自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

五道口

闲暇定终身

  • 博客(145)
  • 资源 (34)
  • 收藏
  • 关注

原创 LocalDateTime最常用方法和时间转换

Java 8 版本以后,新增了了LocalDateTime和了LocalDate类,转换方便不亚于jodaTIme。LocalDateTime方法有很多,本文将开发中最常用的一些时间转换列举出来,并给出转换后的示例,希望大家可以转换时参考使用。

2024-03-27 10:00:00 251

原创 Java CPU或内存使用率过高问题定位教程

Spring cloud微服务广泛应用后,服务的监控和运维压力也与日俱增,经常有服务出现CPU或者内存使用率过高的告警,那么遇到这样的问题我们该如何排查呢?本文介绍了通过系统日志、java JDK工具、JVM参数、linux系统命令、Arthas诊断工具等方法,定位和解决线上CPU使用率过高、内存使用率过高的方法,大家可以根据自己的环境灵活搭配使用上述方法,解决性能问题。

2024-01-04 14:17:26 1660

原创 Spring Cloud Gateway集成Swagger实现微服务接口文档统一管理及登录访问

本文将介绍如何在微服务中使用Swagger网关来统一管理所有微服务的接口文档,并通过实现登录后才能访问Swagger文档,以确保接口数据的安全访问。在开始之前,需要假设你已经完成了的相关配置,并且已经了解了基本的网关配置知识。本文将不再赘述Gateway的配置,只介绍在此基础上如何配置Swagger来管理所有微服务,并通过账号密码来管理Swagger的访问。

2023-10-18 08:00:00 4878 3

原创 SpringCloud使用log4j日志框架教程

Log4j2是一款流行的Java日志框架,它提供了高度可配置的日志记录功能,支持多种不同的输出格式和目标,比如文件、控制台、数据库等等。Log4j2的设计目标是提供高性能、低延迟的日志记录功能,能够满足各种不同的应用场景。本文接将讲解下log4j2在spring Cloud或spring boot中的使用方法,让你5分钟上手

2023-07-21 12:28:12 1268

原创 SpringCloud使用logback日志框架教程

本文介绍了如何使用SpringCloud使用Logback日志框架,文章总结提供了使用Logback框架的实现步骤,以及可能出现的一些问题,以及一些常用的配置项,包括根据不同的环境配置不同日志输出,控制日志文件大小等保留策略,以便读者了解如何构建可靠的微服务应用程序。

2023-04-28 09:00:00 3090

原创 Eureka集群搭建教程

为了提升注册中心稳定性,防止注册中心宕机后,服务不可用的情况,我们可以通过将Eureka注册中心搭建成集群模式,当一台注册中心微服务宕机后,另一台依然可以支持服务的注册与发现。本文将讲解下如何搭建Eureka集群,以及相关的注意事项。本文介绍了两台服务器搭建Eureka集群的方法,以及注意事项,为了保证生产环境的稳定性,建议注册中心以集群方式搭建运行。

2023-02-14 10:00:00 984 1

原创 Linux系统InfluxDB数据和日志目录迁移教程

本文介绍了InfluxDB v1.8.x版本,数据目录和日志目录的迁移,数据迁移可以使InfluxDB磁盘扩容或者磁盘更换不影响正常使用,也不会丢失数据,日志迁移可以方便我们找到和查看InfluxDB运行日志,日志文件会逐渐增大,也不会撑爆系统盘导致InfluxDB宕机。

2022-12-02 08:00:00 3408

原创 Mysql用户权限教程与实用案例

本文介绍下Mysql如何控制用户的访问权限,包括创建用户、给用户授权、生产环境限制网段写权限控制、生产环境只读账号创建等实用操作。本文用通俗易懂的表述,帮你从0开始掌握Mysql用户授权。操作环境:Mysql v5.7版本本文讲解了Mysql用户创建和用户授权,并增加了很多实用案例,包括授权管理员用户、授权只读账户、授权摸个IP网段、授权某个IP、授权单个数据库等实用案例,只需将案例中的用户名、密码、数据库替换为你的信息,就可以使用,授权SQL写法都经过验证,放心使用吧。

2022-10-08 23:50:34 607

原创 RedisUtils工具类

Java版的Redis工具类,提供了增删改查Hash等工具方法。方法都经过验证,直接使用。并拓展了批量写入等方法,高效、简洁、优雅。

2022-07-10 15:16:22 9172 7

原创 kafka数据和日志目录迁移教程

简介Kafka在运行的过程中,存储在磁盘上的数据会逐渐扩大,甚至会撑爆系统盘,在线上环境我们通常会把kafka的数据存储目录和日志存储目录迁移到磁盘中,或者扩容kafka的存储磁盘。本文将一站式解决kafka的磁盘存储或扩容问题。

2022-04-17 13:09:05 9886 6

原创 Redis5.0.x集群搭建

本文将介绍Redis5.0三主三从集群搭建以及集群配置。

2022-02-03 09:34:01 2312

原创 Linux通过UUID挂载和卸载硬盘

前言本文介绍下Linux系统如何通过UUID的方式挂载硬盘,以及相关的注意事项。注意事项:挂载前一定想好挂载位置,不能是系统盘挂载路径如果已经有文件或者文件夹,挂载新硬盘后将全部清空基于上述两点,推荐硬盘挂载在一个新建的目录下,然后再将日志等占用硬盘的内容,写入到此文件夹下。一.找到需要挂载的磁盘执行命令:lsblk -l发现vdc 就是需要挂载的盘。接下来将讲解如何通过UUID挂载硬盘。二.格式化磁盘执行命令:mkfs.ext4 /dev/vdc磁盘的目录在/dev下,

2021-11-14 22:17:48 13081 2

原创 新版kafka Manager(CMAK)安装部署教程

简介截止至2021年9月1日,新版kafka manager(CMAK)最新版本为v3.0.0.5(2020年6月21日发布),支持kafka v0.8.1.1~ v2.4.0之间的多个版本,但实测是可以支持kafka v2.7.1版本的。旧版kafka manager安装请参考我的文章《Kafka Manager部署和使用》本教程所讲述的环境版本如下:环境版本操作系统centos 7JDK11.0.12kafka2.7.1kafka manager(CMA

2021-08-30 15:48:53 7130 16

原创 Centors下搭建Kafka集群教程(v2.7.1)

本文讲解了`kafka v2.7.1`版本集群搭建,讲述了详细的配置以及避免了会出现的坑,在文章中,教大家如何搭建和测试每一个步骤和环节,确保能够及时发现问题,节省大家Debug时间,文章中的内容本人都亲测,确保大家一把通过。

2021-08-30 11:45:25 686 2

原创 Centors下搭建Zookeeper v3.5.9集群(支持kafka2.7.1集群)教程

前言:本文将介绍搭建Zookeeper集群,用以支持kafka最后一个需要Zookeeper做注册中心的版本。当然,你也可以用此集群作为Dubbo的注册中心。提示: kafka v2.6版~v2.7.1版需要zookeeper v3.5.8+以上版本支持。kafka v2.8及以上版本将不需要Zookeeper作为注册中心了。点击查看kafka官方介绍一.下载Zookeeper1.如何选择zookeeper安装包线上服务器使用,选择stable版本中的最新版。原因:最新版经常有bug,不建

2021-08-26 15:40:28 700

原创 涛思数据 TDengine 征稿—工业物联网下的应用

前言本文正在参与“拥抱开源|涛思数据TDengine 有奖征稿”,活动链接。跟涛思数据曾在boss直聘上有过一面之缘,因为都是做物联网方向的,所以了解了一下。本文将讲讲TDEngine吸引开发者的地方以及TDengine在工业物联网上的应用前景。一.为什么要用时序型数据库物联网不同于互联网, 互联网是人与人之间的互联,能够产生的数据量确实也很大,但物联网就更有甚之了,万物之间相联,产生的数据量肯定要比人与人之间的联系产生的数据的数据量大出几个数量级。物与物相联产生的数据如何存储,才能更方便的管理呢

2021-07-05 09:20:47 519

原创 MySQL数据库优化图文教程

本文将全面讲解Mysql的性能优化,包括数据查询优化、数据库结构优化、插入数据优化、服务器优化等,一文学会MySQL全部常用的优化策略。一篇新手直接拿来即用的MySQL优化教程。

2021-05-14 17:34:44 518 4

原创 Windows下批量克隆Git项目脚本

简介本文分享一个批量下载Github或Gitlab上的脚本,当有几十个项目时,可以一次性批量下载所有仓库代码。一.完整脚本chcp 65001@echo off:克隆到本地目录,目录下不能存在与项目名相同的文件夹SET folder=C:\xWorkspace\:Git分组,没有分组可设为空,将`yourGroup`替换成你自己的组名SET group=yourGroup:同目录下,存放GIt项目名列表的txt文件,文件中的不同项目要换行SET projectNames=%grou

2021-04-18 22:47:40 2729 7

原创 Mysql磁盘碎片整理教程

本文来讲解下Mysql磁盘碎片的整理,为什么数据库会产生碎片,以及如何清理磁盘碎片,还有一些清理磁盘碎片的注意事项。本文介绍了Mysql的磁盘优化及注意事项、磁盘碎片形成的原因、不同的数据库引擎采用不同的优化方案

2021-02-04 17:17:49 2681 1

原创 Java中死锁之代码演示和检测

本文将通过Java代码演示一个死锁程序,并用JDK自带的工具`jstack`工具,来验证下是否真正的有死锁发生。明白了死锁发生的机制,我们可以想办法避免死锁发生,第一种方法是注意加锁顺序。第二种避免死锁的方式是,设置超时时间,如果超过一定时间,自动释放锁。在程序运行时,我们可以通过`jstack`工具,查看程序运行状态,是否有死锁。

2020-12-14 16:39:43 891

原创 Java线程属性详解

本节来介绍下Java中线程的属性,即线程的编号(ID)、名称(Name)、守护线程(Daemon)、优先级(Priority),讲解下这些属性各自的作用,以及开发中需要注意的事项。其实除了线程名称属性,其他属性在编码过程中,是无需人为指定的。线程的ID、优先级和守护线程更多的是用作只读属性使用,并不需要手动修改默认配置。

2020-11-14 11:54:16 553

原创 Java中yield()方法作用讲解

①.`yield()`方法只是提出申请释放CPU资源,至于能否成功释放由JVM决定。由于这个特性,一般编程中用不到此方法,但在很多并发工具包中,`yield()`方法被使用,如`AQS`、`ConcurrentHashMap`、`FutureTask`等。②.调用了`yield()`方法后,线程依然处于`RUNNABLE`状态,线程不会进入堵塞状态。

2020-11-08 15:41:25 12232 4

原创 Java中join()方法原理及使用教程

本节介绍了`join()`方法的使用方法,分析了`join()`方法的源码,并且找到了两种`join()`方法的等效替换方法,然后我们讲解了使用`join()`方法时,讲解了为什么要响应主线程的中断,维护好多线程的数据一致性,并给出了代码示例。希望通过本文,可以彻底吃透`join()`方法。

2020-11-07 16:51:57 35749 4

原创 Java中sleep()方法和wait()方法的异同点

①.`wait()`、`notify()`方法必须写在同步方法中,是为了防止死锁和永久等待,使线程更安全,而`sleep()`方法不需要有这个限制。②.`wait()`方法调用后会释放锁`sleep()`方法调用后不会释放锁。③.`sleep()`方法必须要指定时间参数;`wait()`方法可以指定时间参数。④.两个方法所属类不同,`sleep()`方法属于`Thread`类;`wait()`属于`Object`类中,放在`Object`类中是因为`Java`中每个类都可以是一把锁。

2020-11-07 12:00:49 5319

原创 Java如何正确停止线程(三种场景)

本文将讲解Java中三种场景下如何正确的停止线程,分别是普通情况、堵塞状态、循环中堵塞状态,三种情况下如何正确的停止线程。线程在三种场景下的停止方式,都是通过`interrupt()`方法来停止的,但特殊的是停止循环中的阻塞线程时,需要在循环外部增加`try-catch`代码块,捕获到中止堵塞状态异常时停止线程。

2020-11-01 15:53:35 2497

原创 Java线程状态完全解析教程

Java线程有6种状态,分别是`NEW`、`RUNNABLE`、`BLOCKED`、`WAITING`、`TIMED_WAITING`、`TERMINATED`。本文讲解线程状态变化的流程以及用代码演示通过调用哪些方法可以使线程改变状态。本文详细讲解了线程的6种状态各自的定义,以及从代码层面演示并分析了各种状态的含义,讲解了线程执行的流程以及注意事项。

2020-11-01 14:14:41 958 1

原创 设计模式之生产者消费者模式

本文通过`wait()`和`notify()`方法,实现和分析消费者和生产者模式,此模式优雅的实现了生产者和消费者的解耦,并且支持并发。通过手写一份生产者消费者模式的代码,进行讲解。学习领悟了这种设计模式,才可以真正理解`消息中间件`实现的底层思想,比如Kafka、RocketMQ、RabbitMQ等。

2020-10-31 17:06:45 2013 1

原创 Java两个线程交替打印奇偶数(两种方法对比)

我们将通过“两个线程交替打印100内的奇偶数”,来展示下`wait()`方法和`notify()`方法的用法和优点,当然要体现出优点,自然要通过对比不使用这两个方法实现同一功能的代码,通过这几篇文章的讲解,帮你彻底搞懂`wait()`方法和`notify()`方法的用法。

2020-10-31 15:11:20 14332 21

原创 Java多线程中notifyAll()方法使用教程

1.`notifyAll()`中`All`的含义是所有的线程,而不是所有的锁,只能唤醒等待(调用wait()方法等待)同一个锁的所有线程,这一点一定要注意。2.`notifyAll()`必须在当前线程拥有监视器锁的情况下执行,否则将抛出异常`IllegalMonitorStateException`。意思是说必须在同步代码块中,调用此方法,否则可能出现在没有得到锁的情况下,执行了此方法,导致程序异常。`wait()`和`notify()`系列方法这样设计的目的是防止死锁或永久等待发生。

2020-10-27 22:33:11 16927 12

原创 Java多线程wait()和notify()系列方法使用教程(内涵故事)

本文讲解Java中`wait()`、`notify()`,通过一个标准的使用实例,来讨论下这两个方法的作用和使用时注意点,这两个方法被提取到顶级父类`Object`对象中,地位等同于`toString()`方法,所以本文带你从零开始搞懂它们的用法,在文章最后,准备了一个《捡肥皂》的故事,就算你没写过代码,读了此故事也能明白`wait()`、`notify()`系列方法在程序中的作用了,也算是在1024程序员节送给大家的彩蛋了。

2020-10-24 14:17:47 5792 15

原创 Java中BigDecimal工具类(支持空值运算版)

前言需要计算的场景绕不过去会使用BigDecimal类,可频繁的判空让代码可读性下降也使代码冗余度增高,不判空又容易报空指针异常,而且有些场景下的计算,结果为空时需要返回null,所以也不可以将将BigDecimal类型的值都初始化为0,会让运算结果产生歧义。为解决上述痛点,于是整理了一个工具类供所有项目一起使用。一.工具类支持功能加减乘除、累加、倍数运算。Integer、Long、Float、Double、String、Object转为BigDecimal。除法四舍五入小数点,并禁止用科学计数

2020-10-11 17:37:55 9146 5

原创 HBase是如何实现存储和读取优化的

本文将介绍下HBase的存储优化和检索优化。重点介绍下什么是布隆过滤器,以及如何选型和使用。

2020-09-07 11:39:52 530

原创 HBase存储和读取流程详解

本文详细的讲解了HBase存储数据和读取数据的全过程,以及HBase中各个存储结构是怎样协作工作,完成存取流程的。全面解析HBase中数据的存储过程,以及数据的查询解析过程,帮你从底层了解HBase内部的工作原理和工作流程。

2020-09-06 18:00:44 1735

原创 HBase合并详解

本文介绍了HBase的合并原因、合并原理、合并分类、何时触发合并,以及对大合并的性能优化等内容,这也是HBase不同于其他关系型数据库的一种新特性,也是HBase能存储大量数据的写入不会慢,而且随着数据量的增加,HBase读取速度也不会越来越慢的原因。

2020-09-05 21:02:38 3301

原创 Hbase的日志系统

本文介绍了HBase中的日志系统,搞清楚了HBase高可用性、备份、背后的实现原理,以及HBase是如何刷写日志的,通过哪几个存储模块的配合来完成日志的刷写的。

2020-09-04 10:52:35 1972

原创 HBase存储结构及存储模块讲解

本文介绍HBase中的数据存储模块,先从微观层面拆分出每个存储模块讲解,然后再从宏观层面介绍这些模块之间是怎样协同工作的,以及为什么需要这些存储模块,它们帮HBase实现了那些功能和性能上的提升。

2020-09-04 09:25:46 2116

原创 HBase是如何应用LSM树存储思想的

LSM树存储思想其实很简单,在HBase中体现在:将数据先存储到内存,达到一定量后,将其写入硬盘日志中,然后伺机将多个日志文件合并在一起。这就是日志结构合并(LSM)的存储思想了。

2020-08-30 16:54:47 367

原创 为什么Java编程语言用一种咖啡名做名字

在整个团队的集思广益下,有一个成员偶然发现:Java中的类被编译成`.class`文件中,打开任意的`.class`文件,发现此16进制的文件中,开头的4个字母碰巧是`cafe`(咖啡)。所以开发团队,就想选一个咖啡的名字来做这门语言的名字。于是问题变成了选哪种咖啡做为名字呢?爪哇(英文:Java)这个名字在西方,几乎就是印尼咖啡的代名词!于是选择了当时火遍全球咖啡市场的印尼爪哇咖啡名,作为此编程语言的名字,所以就被命名为`Java`。

2020-08-26 17:02:52 1407

原创 Mybatis日志中的SQL解析工具(网页版)

本文将介绍一个将Mybatis日志中的SQL转为可执行的SQL的网页工具,不需要安装,用浏览器打开即可,非常方便。可以在看服务器日志时,直接拷贝出SQL日志,然后解析为正常SQL执行。

2020-07-17 15:56:03 3251 13

原创 Java中Synchronized的可重入性和不可中断性的分析和代码验证

简介本文介绍synchronized关键字的两个重要的性质可重入性和不可中断性,我们将用代码来实现和验证这两个性质。明白这种理论性质有什么用?明白了特性你才能懂得Synchronized的作用范围,使用的时候才不容易犯错。一.可重入性可重入性:同一个线程的外层函数获得锁后,内存函数可以直接获取该锁。举个生活中的可重入性的例子:当我们排队的时候,经常遇到有个别不文明的人,他们会让自己的好友直接插队在他的位置,而且有时还一次插队好几个。这就是一个人获得了优先权后,会让投靠他的所有人都获得该权利,

2020-05-28 09:54:51 1053 1

freemarker-excel.zip

Freemarker导出带图片Excel,文章教程讲解:https://blog.csdn.net/x541211190/article/details/105675771 可以边看教程边使用,代码真实可用。我最近优化了一下,支持了xlsx格式导出。将原来的下线了。这个是最新版。

2020-08-20

freemarker-excel.zip

使用`Freemarker`导出Excel后,在整合`poi`插入图片到Excel,从而实现`Freemarker`导出带有图片的Excel工具。

2020-04-22

设计模式之建造者模式代码示例

设计模式之建造者模式代码示例,

2017-08-20

MPandroidChart jar包

MPandroidChart2-1-6.jar包,亲测稳定好用,没有莫名其妙的Bug出现,没有丢类出现。

2017-08-18

JAVA设计模式之装饰模式代码

JAVA设计模式之装饰模式代码

2017-07-10

JAVA设计模式之抽象工厂模式案例

抽象工厂模式 JAVA设计模式

2017-07-09

设计模式之简单工厂模式案例

设计模式之简单工厂模式案例

2017-07-09

JAVA设计模式之代理模式实例

JAVA设计模式之代理模式实例

2017-07-09

GreenDaoDemo

Eclipse开发Android项目集成GreenDao ORM的教程和代码示例,讲述GreenDao在项目中的部署以及使用GreenDao生成Dao类的示例,最后讲解GreenDao的增删改查的使用,

2017-06-03

GreenDao所需Jar包3.22版全套(亲测可行)

GreenDao全套Jar包,添加入Eclipse项目的libs中即可使用。包含Freemarker和注解API等依赖库。增删改查和注解都测试通过,免去你调试版本依赖的麻烦。

2017-05-28

Android 数据库浏览工具(免安装)

可以查看Android设备中GreenDao生成的表数据,不是.db结尾的数据也可以查看。用file Explorer将数据问价复制到Windows桌面,然后拖进此工具图标上,即可查看。不用配置和安装。

2017-05-28

Android版本更新项目源码

自动更细代码,拷过去直接用

2017-03-30

android像素px转dip计算工具

2017-03-28

Eclipse查看jar包源码插件

Eclipse查看jar包源码插件 可直接ctrl+左键查看jar包中的源码

2017-03-20

百度地图API+PHP+Mysql在地图打点

百度地图API+PHP+Mysql在地图打点示例: 通过Ajax 获取MySQL数据坐标,在地图上打点显示

2017-03-17

JavaBean自动生成工具(32位版)

支持mysql,Oracle,SqlServer, 支持java c# 。 若需要64位:http://download.csdn.net/detail/x541211190/9784630

2017-03-17

javabean 自动生成工具(64位版)

支持mysql,Oracle,SqlServer, 支持java c# 。

2017-03-17

jquery-1.6.2+结合百度地图使用.rar

jquery-1.6.2.js,为方便读者使用统一版本上传至此。代码中太长,超出文章字数限制,所以只能以文件形式上传。

2020-05-16

PHP+MYSQL+HTML百度地图打点示例.rar

PHP+MYSQL+HTML百度地图打点示例。读取数据库用PHP脚本,显示在html中,可以在mysql中配置点坐标,启动apache tomcat后,自动读取数据库点,显示在页面上。

2020-05-15

freemarker-excel.rar

使用Freemarker导出复杂Excel示例,比如合并行等,导出图片等。 参考文档见博客。

2020-04-20

Java设计模式之享元模式

设计模式之享元模式 设计模式之享元模式 设计模式之享元模式

2018-03-26

设计模式之中介者模式

设计模式之中介者模式java代码实现 设计模式之中介者模式

2018-02-06

设计模式之责任链模式源码

设计模式之责任链模式源码 设计模式之责任链模式源码 设计模式之责任链模式源码

2018-01-16

设计模式之命令模式源码示例

设计模式之命令模式 设计模式之命令模式代码 设计模式之命令模式代码

2018-01-15

设计模式之桥接模式

设计模式之桥接模式 设计模式之桥接模式 设计模式之桥接模式

2017-12-07

设计模式之单例模式

设计模式之单例模式 设计模式之单例模式 设计模式之单例模式

2017-12-01

设计模式之迭代器模式(新)

设计模式之迭代器模式(新) 设计模式之迭代器模式(新)

2017-11-04

设计模式之迭代器模式

设计模式之迭代器模式 设计模式之迭代器模式 设计模式之迭代器模式

2017-10-29

设计模式之组合模式

设计模式之组合模式 设计模式之组合模式 设计模式之组合模式

2017-10-21

设计模式之备忘录模式

设计模式之备忘录模式 设计模式之备忘录模式 设计模式之备忘录模式 设计模式之备忘录模式 设计模式之备忘录模式

2017-09-20

设计模式之适配器模式

设计模式之适配器模式Java版 设计模式之适配器模式Java版 设计模式之适配器模式Java版 设计模式之适配器模式Java版

2017-09-12

设计模式之状态模式实例

设计模式之状态模式实例,用Java实现,副讲解 设计模式之状态模式实例,用Java实现,副讲解 设计模式之状态模式实例,用Java实现,副讲解

2017-09-07

Servlet中对获取网页表单数据自动给JavaBean赋值的BeanUtil工具类

Servlet中对获取网页表单数据自动给JavaBean赋值的BeanUtil工具类 Servlet中对获取网页表单数据自动给JavaBean赋值的BeanUtil工具类

2017-09-03

设计模式之观察者模式

设计模式之观察者模式,java语言实现 设计模式之观察者模式,java语言实现 设计模式之观察者模式,java语言实现 设计模式之观察者模式,java语言实现

2017-09-02

空空如也

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

TA关注的人

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