自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(146)
  • 收藏
  • 关注

原创 MySql基础知识总结(SQL优化篇一)

除非你专门从表中索取或检查所有行,如果Extra值不为Using where并且表联接类型为ALL或index,查询可能会有一些错误。当使用=、、>、>=、

2022-10-13 17:10:11 606 1

原创 SQL性能优化的小技巧四

Innodb「支持事务,支持行级锁,更好的恢复性」,高并发下性能更好,所以呢,没有特殊要求(即Innodb无法满足的功能如:列存储,存储空间数据等)的情况下,所有表必须使用Innodb存储引擎。当使用=、、>、>=、

2022-10-11 17:05:41 689

原创 SQL性能优化的小技巧三

默认新增SQL有事务控制,导致每条都需要事务开启和事务提交,而批量处理是一次事务开启和提交,效率提升明显,达到一定量级,效果显著,平时看不出来。insert或update时有可能会重建索引,如果数据量巨大,重建将进行记录的重新排序,所以建索引需要慎重考虑,视具体情况来定;INSERT INTO user (id,username) VALUES(1,'哪吒编程'),(2,'妲己');排序时应按照组合索引中各列的顺序进行排序,即使索引中只有一个列是要排序的,否则排序性能会比较差。

2022-10-10 17:15:14 706

原创 SQL性能优化的小技巧二

truncate table通过释放存储表数据所用的数据页来删除数据,并且只在事务日志中记录页的释放。delete执行时,如果age加了索引,MySQL会将所有相关的行加写锁和间隙锁,所有执行相关行会被锁住,如果删除数量大,会直接影响相关业务无法使用。这个SQL在运行时先取出两个表的结果,再用排序空间进行排序删除重复的记录,最后返回结果集,如果表数据量大的话可能会导致用磁盘进行排序。UNION在进行表链接后会筛选掉重复的记录,所以在表链接后会对所产生的结果集进行排序运算,删除重复的记录再返回结果。

2022-10-09 17:18:30 453

原创 SQL性能优化的小技巧

varchar2虽然比char节省空间,但是假如一个varchar2列经常被修改,而且每次被修改的数据的长度不同,这会引起“行迁移”现象,而这造成多余的I/O,是数据库设计中要尽力避免的,这种情况下用char代替varchar2会更好一些。比如,存储字符串“101”,对于char(10),表示你存储的字符将占10个字节(包括7个空字符),在数据库中它是以空格占位的,而同样的varchar2(10)则只占用3个字节的长度,10只是最大值,当你存储的字符小于10时,按实际长度存储。

2022-10-08 17:09:30 472

原创 【Linux操作系统】——Linux概述

因为Minix只是教学使用,因此功能并不强,因此Torvalds利用GNU的bash当做开发环境,gcc当做编译工具,编写了Linux内核-v0.02,但是一开始Linux并不能兼容Unix,即Unix上跑的应用程序不能在Linux上跑,即应用程序与内核之间的接口不一致,因为Unix是遵循POSIX规范的,因此Torvalds修改了Linux,并遵循POSIX(Portable Operating System Interface,他规范了应用程序与内核的接口规范);1973年初,C语言的主体完成。

2022-09-30 17:27:21 117

原创 Java面试题总结

HashSet中add方法调用的是底层HashMap中的put方法,put方法要判断插入值是否存在,而HashSet的add方法,首先判断元素是否存在,如果存在则插入,如果不存在则不插入,这样就保证了HashSet中不存在重复值。HashMap采取Entry数组来存储key-value,每一个键值对组成了一个Entry实体,Entry类时机上是一个单向的链表结构,它具有next指针,指向下一个Entry实体,以此来解决Hash冲突的问题。通过对象的hashCode和equals方法保证对象的唯一性。

2022-09-29 17:32:00 326

原创 JAVA面试题进阶二

JVM内存管理,JVM的常见的垃圾收集器,G1垃圾收集器。定位 Full GC 发生的原因,有哪些方式?JVM中类加载机制,类加载过程,什么是双亲委派模型?kafka 分布式(不是单机)的情况下,如何保证消息的顺序消费?Spring Cloud如何实现?什么是Spring Cloud Bus?什么是Netflix Feign?讲一讲 kafka 的 ack 的三种机制?什么是Hystrix断路器?使用Spring Cloud有什么优势?什么是Hystrix?什么是Spring Cloud?

2022-09-28 17:06:14 94

原创 JAVA面试题进阶

如今互联网行业用的最多就是 MySQL,然而对于高级 Web 面试者,尤其对于寻找 30k 下工作的求职者,很多 MySQL 相关知识点基本都会涉及,如果面试中,你的相关知识答的模糊和不切要点,基本大多稍好公司的面试官,基本也不会对你有兴趣,毕竟稍微量大的项目,最终都会让你去深入数据库,而且最终的大多瓶颈首先也会出现在数据库。elasticsearch 了解多少,说说你们公司 es 的集群架构,索引数据大小,分片有多少,以及一些调优手段。7、当实体类中的属性名和表中的字段名不一样 ,怎么办?

2022-09-27 16:55:48 124

原创 Java句柄与指针

在Java中的任何东西都可以看做对象,存在一种标识符实际指向一个对象的句柄.在Java的其他地方或者数据中也有称为 "引用"或者 "指针". 只是一个引用地址,我们不能认为Java中没有指针,其实这就是一个指针,我们每次操作对象就是根据句柄去找到对象操作对象的. 即使没有对象,我们也可以让句柄单独存在。总结,在对象分配的时候,句柄使用较多.在对象访问的时候,其实是可以权衡的,如果使用直接指针的方式进行对象访问,那么更多的就是关注堆中已分配对象的快速访问;可以将句柄简单的理解为对象的引用.

2022-09-26 17:10:21 160

原创 java类加载与初始化

将class文件字节码内容加载到内存中,并将这些静态数据转换成方法区的运行时数据结构,然后在堆中生成一个代表这个类的java.lang.Class对象,作为方法区中类数据的访问入口。类构造器()方法是由编译期自动收集类中所有类变量的赋值动作和静态代码块中的语句合并产生的。将class文件字节码内容加载到内存中,并将这些静态数据转换成方法区的运行时数据结构,然后生成一个代表这个类的java.lang.class对象。当初始化一个类的时候,如果发现其父类还没有进行初始化,则需要先触发其父类的初始化。

2022-09-25 17:32:04 382

原创 Vue基础知识总结 8:Node.js简介

/axios.提交方式("请求接口路径").then(箭头函数).catch(箭头函数).then(response =>{//请求成功执行then方法。//response就是请求之后返回数据。}) //请求失败执行catch方法。//使用axios发送ajax请求。{"name":"素小暖","age":20},{"name":"小耗子","age":30},{"name":"凯美瑞","age":40}data: { //在data定义变量和初始值。methods:{//编写具体的方法。

2022-09-23 17:29:44 536

原创 java接口的作用和意义

Java接口是一系列方法的声明,是一些方法特征的集合,一个接口只有方法的特征没有方法的实现,因此这些方法可以在不同的地方被不同的类实现,而这些实现可以具有不同的行为(功能)。接口中的每个方法都是隐式抽象的,接口中的方法会被隐式的指定为public abstract。抽象类中的方法可以有方法体,就是能实现方法的具体功能,但是接口中的方法不能有方法体。接口中不能含有静态代码块以及静态方法,而抽象类中可以有静态代码块和静态方法。接口中的方法是不能在接口中实现的,只能由实现接口的类来实现接口中的方法。

2022-09-22 17:32:38 496

原创 Java句柄与指针

在Java中的任何东西都可以看做对象,存在一种标识符实际指向一个对象的句柄.在Java的其他地方或者数据中也有称为 "引用"或者 "指针". 只是一个引用地址,我们不能认为Java中没有指针,其实这就是一个指针,我们每次操作对象就是根据句柄去找到对象操作对象的. 即使没有对象,我们也可以让句柄单独存在。总结,在对象分配的时候,句柄使用较多.在对象访问的时候,其实是可以权衡的,如果使用直接指针的方式进行对象访问,那么更多的就是关注堆中已分配对象的快速访问;可以将句柄简单的理解为对象的引用.

2022-09-21 17:34:25 126

原创 Java概述

抽象---抽取接近的事物,将具有一致的数据结构(属性)和行为(操作)的内容抽取形成新的事物。JDK的组成 (1)java开发工具集 和 常用的java类库(用于开发java程序)JDK中的JRE之所以可以运行Java程序,是因为JDK包含了JVM,而JVM是运行Java的核心。JVM--java虚拟机,运行java程序的核心,还需要其他的类加载器,字节码校验器,以及大量的基础类库。(2)JRE--用来运行java程序的。继承---通过现有的东西产生新东西的机制,与我们现实中所说的继承意思基本一致。

2022-09-20 17:47:11 269

原创 java数据类型简介

在main中使用了两个修饰符public和static,public修饰符使它可以从应用程序的任何地方访问被访问,静态修饰符使它成为一个类方法,可以直接用类名进行调用。可以使用类名.方法名的形式访问static方法,但是不能访问非静态方法。它的名字是main,参数是String[] args。3、如何运行class文件中的main方法。三、用static修饰的方法就是静态方法。1、通过javac编译java文件。编译后的文件Test.class。2、执行编译后的java文件。四、编译java文件。

2022-09-19 17:10:14 93

原创 Java基础知识面试题

int compareTo(String str) 会对照ASCII 码表 从第一个字母进行减法运算 返回的就是这个减法的结果,如果前面几个字母一样会根据两个字符串的长度进行减法运算返回的就是这个减法的结果,如果连个字符串一摸一样 返回的就是0。String str="i"会将起分配到常量池中,常量池中没有重复的元素,如果常量池中存中i,就将i的地址赋给变量,如果没有就创建一个再赋给变量。

2022-09-18 17:29:31 97

原创 java运算符简介

System.out.println("x 和y 与的结果是:"+(x&y));System.out.println("x 和y 或的结果是:"+(x|y));"很强":"很弱"));根据与运算符的运算规律,只有两个位都是1,结果才是1,可以知道结果就是10000000,即128。String name = "哪吒";两个位只要有一个为1,那么结果就是1,否则就为0。两个操作数的位中,相同则结果为0,不同则结果为1。前缀形式会先完成+1,后缀形式会后完成+1。如果位为0,结果是1,如果位为1,结果是0。

2022-09-17 17:00:22 93

原创 java数据类型-简介

在main中使用了两个修饰符public和static,public修饰符使它可以从应用程序的任何地方访问被访问,静态修饰符使它成为一个类方法,可以直接用类名进行调用。Java是一种强类型的语言,有8种基本类型,其中4种整型,2种浮点型,1种用于表示Unicode编码的字符单元的字符类型char、1种boolean型。通常情况下int最常用,byte和short类型用于特定的应用场合,例如底层的文件处理或需要控制占用存储空间量的大数组。它与"A"不同,"A"表示一个字符串A。

2022-09-16 17:18:06 299

原创 Java字符串简介

字符串连接是通过 StringBuilder(或 StringBuffer)类及其append 方法实现的,对象转换为字符串是通过 toString 方法实现的,该方法由 Object 类定义,并可被 Java 中的所有类继承。使用“+”连接符时,JVM会隐式的创建StringBuilder对象,这种方式在大部分情况下不会造成效率的损失,但是,在循环中进行字符串拼接时就不一样了。还有一种特殊情况,如果“+”拼接的是字符串常量中的字符串时,编译器会进行优化,直接将两个字符串常量拼接好。

2022-09-15 17:18:06 200

原创 JDK 和 JRE 、final 与 static 、堆和栈(二)

实体创建在堆里,在堆里首先通过new关键字开辟一个空间,内存在存储数据的时候都是通过地址来实现的,地址是一块连续的二进制,然后给这个实体分配一个内存地址。堆内存:存储的是数组和对象(其实数组就是对象),凡是new建立的都是在堆中,堆中存放的都是实体(对象),实体用于封存数据,而且是封存多个(实体的多个属性),如果一个数据消失,这个实体也没有消失,还可以用,所以堆是不会随时释放的,但是栈不一样,栈里存放的都是单个变量,变量被释放了,也就没有了。栈内存的更新速度很快,因为局部变量的声明周期都很短。

2022-09-14 17:41:06 60

原创 JDK 和 JRE 、final 与 static 、堆和栈

Java的程序也就是我们编译的代码都会编译为class文件,class文件就是在jvm上运行的文件,只有JVM还不能完全支持class的执行,因为在解释class的时候JVM需要调用解释所需要的类库lib,而jre包含lib类库。如下图:jdk中包含的jre,在jre的bin目录里有个jvm.dll,既然JRE是运行时环境,那么运行在哪?其实有时候面试官问JDK和JRE的区别的目的不是想让你解释什么名词的,而是想看看你的基础和研究Java的深浅,还有另一方面就是你是不是经常喜欢问为什么。

2022-09-13 17:52:24 1610

原创 java面向对象简介二

Java语言之中最大的特点在于其可移植性的支持,所谓的可移植性指的是同一个程序可以在不同的操作系统之间任意的进行部署,这样就减少了开发的难度,在Java里面如果要想实现可移植性的控制,那么主要依靠的是JVM(Java 虚拟机)。Java虚拟机是一个由软件和硬件模拟出来的计算机,所有的程序只要有Java虚拟机的支持,那么就可以实现程序的执行,并且不同的操作系统上会有不同版本的JVM存在,这样就可以实现移植性。因为java代码编译后不能直接运行,它是解释运行在JVM上的,所以它是解释型的。

2022-09-09 17:17:34 183

原创 java面向对象简介

Java通过为您管理内存的分配和释放,可以从根本上消除这些问题(事实上,释放内存完全是自动的,因为Java为不再使用的对象提供了垃圾回收功能)。因此,尽管人们发现C++不太适用,但在设计Java的时候还是尽可能地接近C++,以便系统更易于理解,Java剔除了C++中许多很少使用、难以理解、易混淆的特性。简单的另一个方面是小。分布式系统对于用户而言,他们面对的就是一个服务器,提供用户需要的服务而已,而实际上这些服务是通过背后的众多服务器组成的一个分布式系统,因此分布式系统看起来像是一个超级计算机一样。

2022-09-09 17:16:34 78

原创 Java知识点(知识点)

Calendar 的 getTime()方法,getTime()返回一个表示 Calendar 时间值的 Date 对象,同时 Calendar 有一个 setTime(Date date)方法,setTime()方法接收一个 Date 对象,将 Date 对象表示的时间值设置给Calendar 对象,通过这两个方法就可以完成 Date 和 Calendar 对象之间的转换。在继承关系中,子类的方法与父类的某一方法具有相同的方法名、返回类型和参数列表,则称子类的该方法重写(覆盖)父类的方法。

2022-09-08 17:29:01 174

原创 Java基础知识(知识点)二

5、父类对象可以指向子类对象,但是子类对象不能指向父类对象,但是子类对象可以通过强制类型转换可以进行转换为父类对象,但是强转是有条件的,只有当父类的对象就是指向的子类的对象的时候才能够发生强制转换。1、接口中除了抽象方法外,还可以有默认方法和静态方法(类方法),默认方法使用default修饰,静态方法使用static修饰,并且这两种方法都允许有方法体。8、方法的重载:前提是在同一个类中有多个同名的方法,其参数的个数与参数的类型不同,这与返回的类型(方法)无关。类是对某一类事物的抽象描述的集合。

2022-09-06 17:35:19 1425 2

原创 Java基础知识(知识点)

5、bin目录:该目录用于存放一些可执行程序,如javac.exe(Java编译器)、java.exe(Java运行工具)、jar.exe(打包工具)和 javadoc.exe(文档生成工具)8、jre目录:此目录时Java运行时环境的根目录,它包含Java虚拟机、运行时的类包、Java应用启动器以及一个bin目录,但不包含开发环境中的开发工具。java.exe是Java运行工具,它会启动一个Java虚拟机(JVM)进程,专门负责运行由Java编译器生成的字节码文件(.class文件)

2022-09-05 17:34:06 362

原创 java继承和多态

在设计类的时候,应该将通用的方法放在超类中, 而将具有特殊用途的方法放在子类中。Java 中其实没有虚函数的概念,它的普通函数就相当于 C++ 的虚函数,动态绑定是Java的默认行为。子类集合是无限制的,任何一个人都能由其他基类派生出一个子类,并编写代码以直接访protected的实例域,从而破坏了封装线。当子类对象调用重写的方法时,调用的是子类的方法,而不是父类中被重写的方法。System.out.println("动物叫...");System.out.println("喵喵喵...");

2022-09-04 17:44:02 83

原创 一文搞懂static二

将class文件字节码内容加载到内存中,并将这些静态数据转换成方法区的运行时数据结构,然后在堆中生成一个代表这个类的java.lang.Class对象,作为方法区中类数据的访问入口。类构造器()方法是由编译期自动收集类中所有类变量的赋值动作和静态代码块中的语句合并产生的。将class文件字节码内容加载到内存中,并将这些静态数据转换成方法区的运行时数据结构,然后生成一个代表这个类的java.lang.class对象。当初始化一个类的时候,如果发现其父类还没有进行初始化,则需要先触发其父类的初始化。

2022-09-02 17:08:58 67

原创 一文搞懂static(一)

因为如果不是static方法,每次创建对象都会在内存中为类中的每一个部分分配空间,很浪费内存空间,在当下的计算机时代,内存还是很宝贵的,程序员很大的困扰就是内存不足,因此,引入static就巧妙的解决了内存的问题,但是,刚才不是说了,static修饰的方法会一直存在在内存中,直到程序的结束。在 JVM 加载一个类的时候,若该类存在 static 修饰的成员变量和成员方法,则会为这些成员变量和成员方法在固定的位置开辟一个固定大小的内存区域,有了这些“固定”的特性,那么 JVM 就可以非常方便地访问他们。...

2022-09-01 17:35:37 185

原创 RabbitMQ基本使用

从使用角度看,JMS和JDBC担任差不多的角色,用户都是根据相应的接口可以和实现了MS的服务进行通信,进行相关的操作。AMQP( Advanced Message Queuing Protocol),是一个提供统一消息服务的应用层标准高级消息队列协议,是应用层协议的开放标准为面向消息的中间件设计。基于此协议的客户端与消息中间件可传递消息,并不受客户端中间件不同产品,不同的开发语言等条件的限制。因为消息的生产和消费都是异步的,而且只关心消息的发送和接收,没有业务逻辑的侵入,这样就实现了生产者和消费者的解耦。.

2022-08-31 17:13:27 59

原创 Java框架总结三

springboot是一个全新的框架,简化Spring的初始搭建和开发过程,使用了特定的方式来进行配置,让开发人员不再需要定义样板化的配置。(4)代码少了、配置文件少了、不需要对第三方框架烦恼了、项目精简了,对整个团队的开发和维护来说,更大的节约了成本。(2)内嵌了如tomcat,Jetty和Undertow这样的容器,也就是说可以直接跑起来,用不着再做部署工作。(2)springboot的基于spring的条件注册的一套快速开发整合包。(2)避免了编写大量的样板代码,注释和XML配置。...

2022-08-30 17:19:47 142

原创 java个框架总结二

SSM架构,是三层结合所成的框架,分别是Spring、SpringMVC、MyBatis所组成。mybatis灵活,不会对应用程序或者数据库的限售设计强加任何影响,SQL写在XML里,从程序代码中彻底分离,降低耦合度,便于统一管理和优化,可重用。mybatis是一个简化和实现了java数据持久层的开源框架,它抽象了大量的JDBC冗余代码,并提供了一个简单易用的API和数据库交互。分工明确,包括控制器、验证器、命令对象、模型对象、处理程序映射视图解析器,每一个功能实现由一个专门的对象负责完成。...

2022-08-29 17:24:49 266

原创 Java框架总结(高淇java300集+入门笔记)

使用Struts作为系统的整体基础框架,负责MVC的分离,在Struts框架的模型部分,控制业务跳转,利用hibernate框架对持久层提供支持,spring做管理,管理Struts和hibernate。struts2以webwork为核心,采用拦截器的机制来处理用户的请求,这样的设计使得业务逻辑控制器能够与servletAPI完全脱离。体现了拦截器的使用,拦截器是一个一个的小功能模块,用户可以将这些拦截器合并成一个大的拦截器,这个合成的拦截器就像单独的拦截器一样,只要将它配置到一个Action中就可以。.

2022-08-28 17:37:44 209

原创 基于JSP动漫论坛的设计与实现(源码+数据库+截图+文档)

摘 要作为文化产业的一部分,动漫影响了我国一代又一代青少年,据钱江晚报调查显示,有超过七成的95后愿意从事与动漫相关的行业,可见其对青少年影响力之大。动漫论坛作为最先开始热爱动漫人士进行交流的方式之一,是爱好者们共享信息,寻找同伴的重要渠道之一。在这次毕业设计中,使用MVC模式,采用MySQL5.0数据库和JSP技术,开发了界面友好、操作简单易懂的动漫论坛。在设计过程中,...

2022-08-27 17:40:46 1112 1

原创 基于Java的机场航班起降与协调管理系统的设计与实现(源码资料等)

项目背景。在各种编程语言发展的今天,其仍然牢牢占据着计算机语言的核心地位,并衍生出Jsp、JavaEE和Struts2等多种先进的计算机技术,为计算机和软件科学的发展做出了巨大的贡献,也为人类的生产和现代社会的发展做出了非常卓越的贡献,各种基于Java的电脑软件和手机app面向市场开放。Java语言在现代计算机编程上是核心的且运用范围最广的语言,Java是面向对象的开元的一种计算机语言,运用广泛且灵活,且Java系统稳定,用Java语言进行编程是一种很好的选择。...

2022-08-26 17:55:01 874

原创 网上手机销售系统

模块的输出是操作信息成功的提示信息。本系统网站的主界面设计结构采用了三层布局结构,第一层部分为本网上手机销售系统的导航栏部分,其用途为展示本网上手机销售系统的前台基本功能,第二层从左到右依次是用户登录界面,还可通过注册按钮达到新用户注册功能,中间是一个轮播界面,用来展示近期系统内部的一些优惠活动,右边是排行榜,通过客户购物情况进行统计反馈,展示出近期热卖的商品。该模块是针对用户订单信息和订单明细信息的管理功能进行的详细设计,主要是对用户订单信息和订单明细信息的查看、删除和受理订单的操作。...

2022-08-25 17:39:19 547

原创 基于Java的银行排号系统的设计与实现(附源码+课件+截图+论文+数据库)

系统设计阶段的主要目的是,将系统分析阶段所提出的、充分反映用户信息需求的系统逻辑方案转换成可以实施的、基于计算机和网络技术的物理方案。这一阶段的主要任务是从信息系统的总体目标出发,根据系统分析阶段对系统的逻辑功能的需要,并考虑到经济、技术和运行环境等方面的条件,确定系统的整体结构和系统各组成部分的技术方案,合理选择计算机和通信的软件、硬件设备,提出系统的实施计划。系统的总体概述。

2022-08-24 17:16:47 2019

原创 网上花店销售系统(附源码+课件+讲解+资料+数据库)

该页面对应代码中的register.jsp,该页面对输入的每一个数据都有格式上的要求,用户名不能为空且必须是数字,字母或者下划线,密码不能为空且至少6位,确认密码要和密码一致,姓名,收货地址以及手机号都不能为空,手机号码还要符合正确的格式。除此之外,当用户输入正确的格式的数据之后,点击了注册按钮,系统会在数据库进行比对,若用户名已经被注册,系统也会弹出相应的提示,若用户名还未注册则将数据插入数据库,提示注册成功并跳转到首页。主菜单包括,分类管理,鲜花管理,公告管理,订单管理,用户管理。

2022-08-22 17:32:08 9586 22

原创 博网即时通讯软件的设计与实现(附源码+课件+数据库+资料)

应用从这两部分分别进行了详细的功能设计,服务器端功能主要为启动对于客户端的监听与关闭监听,还有对于已注册用户的实时监控与管理,客户端功能主要为使用者该软件账号的申请与进入操作界面,还有自己资料的修改以及对于其他账号好友的添加与管理等等。图3是控制端操作页面,通过运行相应的文件,即可打开该服务器端界面,在这个界面可以对已经注册过的用户进行管理与监控,也可以对服务器进行的基本管控,在对话框中查看一些基本日志。移除该用户如图19所示,是用户将以添加账户进行移除的页面,用户有权限进行该操作。

2022-08-21 16:57:03 1579

空空如也

空空如也

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

TA关注的人

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