自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Java技术栈,分享最主流的Java技术

分享Java,多线程,JVM,Spring,微服务,分布式,面试题等。

  • 博客(132)
  • 资源 (35)
  • 收藏
  • 关注

原创 注意:字符串substring方法在jkd6,7,8中的差异。

标题中的substring方法指的是字符串的substring(int beginIndex, int endIndex)方法,这个方法在jdk6,7是有差异的。substring有什么用?substring返回的是字符串索引位置beginIndex开始,endIndex-1结束的字符串。来看这个例子:String x = "abcdef";x = x.substring

2018-01-31 18:39:19 1521

原创 消息中间件ActiveMQ、RabbitMQ、RocketMQ、ZeroMQ、Kafka如何选型?

最近要为公司的消息队列中间件进行选型,市面上相关的开源技术又非常多,如ActiveMQ、RabbitMQ、ZeroMQ、Kafka,还有阿里巴巴的RocketMQ等。这么多技术,如何进行选型呢?首先对于阿里的RocketMQ,因为是阿里开源的,对于国内开源的保持谨慎的态度,暂时不采取该中间件。所以只能在ActiveMQ、RabbitMQ、ZeroMQ、Kafka中间选一款作为消息队列中

2018-01-29 16:04:29 486

原创 终于,Spring 5.0正式发布了!

Spring 5.0都有什么新功能?1、最低要求支持JDK8+, J2EE 7+。2、移除了一些包、类及方法。3、核心功能加强:全面应用jdk8并兼容jdk9等。4、SpringMVC:支持servlet4.0、Reactor 3.1等。5、支持响应式堆栈web框架Spring WebFlux。6、支持kotlin。7、加强了测试:完美支持Junit5等。Spr

2018-01-29 16:04:18 3094

原创 活动:月末送Java技术书福利|抽奖

本公众号运营了快一年了原创干货超过200+收获了也快1W粉丝这么多粉丝……送书活动怎能少?虽然这次我们是有备而来但是……所有书籍为作者自掏腰包所以本次送书数量有限不能满足到所有人重在参与大家开心就好后续还会有更好书籍相送敬请大家期待感谢所有的程序猿(媛)精选3本好书:赠送+包邮

2018-01-26 13:45:09 551

原创 Spring Boot读取配置的几种方式

读取application文件在application.yml或者properties文件中添加:info.address=USA\ info.company=Spring\ info.degree=high @Value注解读取方式import org.springframework.beans.factory.annotation.Value;import or

2018-01-25 09:38:05 1419

原创 JSON Web Token (JWT)生成Token及解密实战。

昨天讲解了JWT的介绍、应用场景、优点及注意事项等,今天来个JWT具体的使用实践吧。从JWT官网支持的类库来看,jjwt是Java支持的算法中最全的,推荐使用,网址如下。 https://github.com/jwtk/jjwt下面来看看如何使用jjwt来实现JWT token的生成与解密,主要用到sha512算法来演示。1、导入jjwt的maven包。depende

2018-01-25 09:37:55 10093

原创 Spring Boot Server容器配置

参数配置容器server.xx开头的是所有servlet容器通用的配置,server.tomcat.xx开头的是tomcat特有的参数,其它类似。所有参数绑定配置类:org.springframework.boot.autoconfigure.web.ServerProperties代码配置容器除了利用上面的参数来自动配置servlet容器,还可以通过代码的方式。可以直接实现E

2018-01-25 09:37:43 535

原创 Spring Boot Debug调试

在使用maven插件执行spring-boot:run进行启动的时候,如果设置的断点进不去,要进行以下的设置。1、添加jvm参数配置在spring-boot的maven插件加上jvmArguments配置。 ... ... ... org.springframework.boot spring

2018-01-25 09:37:23 2484

原创 Spring Boot集成Shiro实战

Spring Boot集成Shiro权限验证框架,可参考: https://shiro.apache.org/spring-boot.html引入依赖dependency> groupId>org.apache.shirogroupId> artifactId>shiro-spring-boot-web-starterartifactId> ver

2018-01-25 09:37:06 1778 1

原创 Maven精选系列--classifier元素妙用

首先来看这么一个依赖dependency> groupId>net.sf.json-libgroupId> artifactId>json-libartifactId> version>2.4version>dependency>看似没问题吧?你觉得能下得下来吗?答案是否定的,下不下来。来看看Maven的文件索引目录: Index of /mave

2018-01-25 09:36:06 3538 1

原创 Java父类强制转换子类原则

最近,微信群友在讨论子类父类的转换问题,其实不难,给大家用实例来说明一下就很明了了。我们知道Java中子类转换成父类是没有任何问题的,那父类可以转换成子类吗?来看下面这段程序:public class TestObjectConvert { public static void main(String[] args) { test1();

2018-01-25 09:35:56 7075 1

原创 Slow HTTP POST慢速攻击

测试工具模拟测试工具:slowhttptest https://github.com/shekyan/slowhttptest安装: https://github.com/shekyan/slowhttptest/wiki使用: slowhttptest -c 5000 -u [hostname/ip]-c 表示发起5000个连接,由于是慢速DDOS

2018-01-25 09:35:32 3877 1

原创 Eclipse代替Oracle接管Java EE

Eclipse Foundation接替Oracle成为Java EE的新东家,Oracle不再管理Java EE。作为采用的一部分,Java EE可能会更换新名称,Oracle建议在其建议中使用Java EE。一个月前,Oracle表示将结束Java EE的管理角色,并将其转到开源基础上。 在与IBM和Red Hat等Java合作伙伴进行协商后,Oracle与几个基金会进行了会谈,并确

2018-01-25 09:35:19 527

原创 Git分支管理

添加分支 git branch git branch test1.0切换分支 git checkout git checkout test1.0添加分支并切换 git checkout -b git checkout -b test1.0查看所有分支 git branch$ git branch* m

2018-01-25 09:35:08 405

原创 Git提交记住用户名和密码

每次提交代码都要输入用户名密码,十分麻烦,教大家怎么让Git记住密码。Https记住密码永久记住密码git config --global credential.helper store会在用户主目录的.gitconfig文件中生成下面的配置。[credential] helper = store如果没有--global,则在当前项目下的.git/c

2018-01-23 14:03:51 60626 4

原创 Git仓库操作命令

创建仓库git init在当前目录执行,会生成.git目录文件,这个和SVN一致。提交到仓库git commit -m "first commit"-m:表示提交描述,必须要填。添加到远端仓库git remote add origin git@github.com:test/test.git推送到远端仓库git push -u ori

2018-01-23 14:03:41 423

原创 细数Intellij Idea10个蛋疼问题!

Intellij Idea以下简称IJ。昨天细数了IJ上的10大666的姿势,IJ确实很智能,在很多方便可以完爆Eclipes,可在某些方面真的被Eclipse秒杀1、乱码在Eclipse中很少遇到控制台乱码的情况,而在IJ中,不管是tomcat还是main方法经常会遇到乱码的情况,有一些可以指定编码解决问题,而有一些是Eclipse正常在IJ中却乱码真的无从解决。2、注释

2018-01-23 14:03:32 824

原创 Maven Optional & Exclusions使用区别

Optional和Exclusions都是用来排除jar包依赖使用的,两者在使用上却是相反。Optional定义后,该依赖只能在本项目中传递,不会传递到引用该项目的父项目中,父项目需要主动引用该依赖才行。Exclusions则是主动排除子项目传递过来的依赖。用法区别 Project-X -> Project-A\ Project-A -> Project-B

2018-01-23 14:03:20 1467

原创 Spring Boot日志集成

Spring Boot日志框架Spring Boot支持Java Util Logging,Log4j2,Lockback作为日志框架,如果你使用starters启动器,Spring Boot将使用Logback作为默认日志框架。无论使用哪种日志框架,Spring Boot都支持配置将日志输出到控制台或者文件中。spring-boot-starter启动器包含spring-boot-sta

2018-01-23 14:03:11 1824

原创 hashCode和identityHashCode的区别你知道吗?

hashCode关于hashCode参考之前的文章,点击参考之前文章。identityHashCodeidentityHashCode是System里面提供的本地方法,java.lang.System#identityHashCode。/** * Returns the same hash code for the given object as * would be

2018-01-23 14:02:42 977

原创 Maven如何发布jar包到Nexus私库

Nexus2可以通过管理界面来上传jar包到私库中,而最新的Nexus3却找不到了上传界面,只能通过以下方式来发布到私库。发布第三方jar包这种情况是maven远程仓库没有,本地有的第三方jar包,需要发布到私库。mvn deploy:deploy-file -DgroupId=com.example -DartifactId=test -Dversion=0.0

2018-01-23 14:02:32 2677

原创 高级Java必看的10本书

1、深入理解Java虚拟机:JVM高级特性与最佳实践本书共分为五大部分,围绕内存管理、执行子系统、程序编译与优化、高效并发等核心主题对JVM进行了全面而深入的分析,深刻揭示了JVM的工作原理。2、从Paxos到Zookeeper:分布式一致性原理与实践本书从分布式一致性的理论出发,向读者简要介绍几种典型的分布式一致性协议,以及解决分布式一致性问题的思路,其中重点讲解了Paxos和Z

2018-01-22 09:13:18 8860 1

原创 JDK8新特性之方法引用

什么是方法引用方法引用是只需要使用方法的名字,而具体调用交给函数式接口,需要和Lambda表达式配合使用。如:List list = Arrays.asList("a","b","c");list.forEach(str -> System.out.print(str));list.forEach(System.out::print);上面两种写法是等价的。方法引用

2018-01-22 09:12:56 2785

原创 JDK8之新特性扩展篇

之前分篇章讲了一些JKD8中添加的新特性,还有一些新特性这里也一并讲下。BASE64base64编码解码已经被加入到了jdk8中了。import java.nio.charset.StandardCharsets;import java.util.Base64;public class Base64Test { public static void main(St

2018-01-22 09:12:48 503

原创 Spring Boot - Profile配置

Profile是什么Profile我也找不出合适的中文来定义,简单来说,Profile就是Spring Boot可以对不同环境或者指令来读取不同的配置文件。Profile使用假如有开发、测试、生产三个不同的环境,需要定义三个不同环境下的配置。基于properties文件类型你可以另外建立3个环境下的配置文件:applcation.properties\ appli

2018-01-22 09:12:37 473

原创 Spring Boot Starters启动器

Starters是什么?Starters可以理解为启动器,它包含了一系列可以集成到应用里面的依赖包,你可以一站式集成Spring及其他技术,而不需要到处找示例代码和依赖包。如你想使用Spring JPA访问数据库,只要加入spring-boot-starter-data-jpa启动器依赖就能使用了。Starters包含了许多项目中需要用到的依赖,它们能快速持续的运行,都是一系列得到支持的管

2018-01-22 09:12:26 311

原创 Spring Boot定制启动图案

启动图案Spring Boot在启动的时候会显示一个默认的Spring的图案,对应的类为SpringBootBanner。. ____ _ __ _ _ /\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \ \\/ ___)|

2018-01-22 09:12:12 2186

原创 JDK8新特性之Optional

Optional是什么java.util.OptionalJdk8提供Optional,一个可以包含null值的容器对象,可以用来代替xx != null的判断。Optional常用方法ofpublic static Optional of(T value) { return new Optionalvalue);}为value创建一个Optiona

2018-01-19 14:19:26 3504 1

原创 Java类初始化顺序,大神3个示例带你躺坑。。

最近发现微信群里面有些群友在讨论类的初始化顺序,如类的静态变量、成员变量、静态代码块、非静态代码块、构造器,及继承父类时,它们的初始化顺序都是怎样的,下面我通过例子来说明这个情况,以免被人误导。示例1:测试单类的初始化顺序public class ClassInitOrderTest { public static String staticField = "static

2018-01-19 14:18:51 3746 3

原创 Tomcat集群session复制与Oracle的坑。。

问题描述公司某个系统使用了tomcat自带的集群session复制功能,然后后报了一个oracle驱动包里面的连接不能被序列化的异常。01-Nov-2017 16:45:26.653 SEVERE [https-jsse-nio-8443-exec-2] org.apache.catalina.ha.session.DeltaManager.requestCompleted Unabl

2018-01-19 14:18:28 618

原创 Spring Boot配置加载顺序

如果加载的配置有重复的,它们的加载顺序是这样的,数字越小的优先级越高,即优先级高的覆盖优先级低的配置。Devtools global settings properties on your home directory (~/.spring-boot-devtools.properties when devtools is active).@TestPropertySource annot

2018-01-19 14:18:04 2598

原创 字符串拼接+和concat的区别

+和concat都可以用来拼接字符串,但在使用上有什么区别呢,先来看看这个例子。public static void main(String[] args) { // example1 String str1 = "s1"; System.out.println(str1 + 100);//s1100 System.out.println(100 + str

2018-01-18 09:16:47 7358

原创 一分钟开启Tomcat https支持

1、修改配置文件打开tomcat/conf/server.xml配置文件,把下面这段配置注释取消掉,keystorePass为证书密钥需要手动添加,创建证书时指定的。Connector port="8443" protocol="org.apache.coyote.http11.Http11Protocol" maxThreads="150"

2018-01-18 09:16:14 515

原创 Java高级进阶:自定义ClassLoader

假如我们的类不在classpath下,而我们又想读取一个自定义的目录下的class,如果做呢?读取自定义目录的类示例读取c:/test/com/test.jdk/Key.class这个类。package com.test.jdk;public class Key { private String key = "111111";}自定义ClassLoader

2018-01-18 09:15:56 876

原创 JDK8新特性之重复注解

什么是重复注解下面是JDK8中的重复注解(java.lang.annotation.Repeatable)定义的源码。@Documented@Retention(RetentionPolicy.RUNTIME)@Target(ElementType.ANNOTATION_TYPE)public @interface Repeatable { Class value();

2018-01-18 09:15:41 1055

原创 Spring Boot功能实战

添加web功能启动器添加了Spring Boot基础依赖后,如要使用web mvc功能,只需要添加如下启动器即可,Spring Boot会自动装配web功能。dependencies> dependency> groupId>org.springframework.bootgroupId> artifactId>spring-boot-start

2018-01-18 09:15:26 1407

原创 年底了,该跳槽了,全套高级Java面试题及答案整理~

又到年底了,又是一轮跳槽季城外的人想进去,城里的人想出来为什么离职?马云说过,要么工资低,要么受了委屈我想大多数人离职是这个原因出来混的,跳槽也都是为了更好的生活干技术的,工资都是跳出来的跳得高低,关键看你有多少实力如何提升硬实力?我们为你准备了以下面试题史上最全阿里巴巴高级Java面试题史上最全Java多线程

2018-01-18 09:13:32 3179

原创 DevOps到底是什么鬼?DevOps介绍及工具推荐。

什么是DevOpsDevOps是Development和Operations的组合,是一组过程、方法与系统的统称,用于促进开发(应用程序/软件工程)、技术运营和质量保障(QA)部门之间的沟通、协作与整合。它的出现是由于软件行业日益清晰地认识到:为了按时交付软件产品和服务,开发和运营工作必须紧密合作。可以把DevOps看作开发(软件工程)、技术运营和质量保障(QA)三者的交集。传统的

2018-01-17 09:21:30 47556 9

原创 中山大学深圳研究院“智能金融和区块链技术”论坛(理论+实战PPT)

中山大学深圳研究院在昨天11月15号在深圳南山区虚拟大学园举办了“智能金融和区块链技术”论坛。本次论坛邀请了中山大学移动互联网与金融大数据实验室郑子彬教授团队系统地介绍智能金融及区块链技术的现状、挑战、及展望,以及在智能金融及区块链上面的相关理论研究及应用成果。此次论坛从以下四个主题讲述了智能金融理论及实战。1、智能金融与区块链随着数据量的指数增长及计算能力的增强,人工智能开始

2018-01-17 09:21:18 1088

原创 Druid-目前最好的连接池

Druid是什么Druid是阿里开源的连接池,是Java语言中最好的数据库连接池.Druid能够提供强大的监控和扩展功能,是为监控而生的数据库连接池! GitHub:https://github.com/alibaba/druid/添加依赖dependency> groupId>com.alibabagroupId> artifactId>druida

2018-01-17 09:20:55 4311

《Java开发手册(嵩山版)》.pdf

《Java 开发手册》是阿里巴巴集团技术团队的集体智慧结晶和经验总结,经历了多次大规模一 线实战的检验及不断完善,公开到业界后,众多社区开发者踊跃参与,共同打磨完善,系统化地整理 成册,当前的版本是嵩山版。现代软件行业的高速发展对开发者的综合素质要求越来越高,因为不仅 是编程知识点,其它维度的知识点也会影响到软件的最终交付质量。

2020-08-03

10道Java高级必备的Netty面试题!

10道Java高级必备的Netty面试题!分享给你! 大家面试前,必须狠刷面试题,哥给你们整理了面试过程中必问的一些面试,希望对你们有帮助,祝你们早日找到满意的工作。

2020-03-06

7道消息队列ActiveMQ面试题!

7道消息队列ActiveMQ面试题分享给你! 大家面试前,必须狠刷面试题,哥给你们整理了面试过程中必问的一些面试,希望对你们有帮助,祝你们早日找到满意的工作。

2020-03-06

史上最全 Java 多线程面试题及答案

这些多线程的问题,有些来源于各大网站、有些来源于自己的思考。可能有些问题网上有、可能有些问题对应的答案也有、也可能有些各位网友也都看过,但是本文写作的重心就是所有的问题都会按照自己的理解回答一遍,不会去看网上的答案,因此可能有些问题讲的不对,能指正的希望大家不吝指教。

2019-02-01

20 道 Spring Boot 面试题

面试了一些人,简历上都说自己熟悉 Spring Boot, 或者说正在学习 Spring Boot,一问他们时,都只停留在简单的使用阶段,很多东西都不清楚,也让我对面试者大失所望。 下面,我给大家总结下有哪些 Spring Boot 的面试题,这是我经常拿来问面试者的,希望对你有帮助。

2019-02-01

多线程拿站FTP扫描工具.rar

多线程拿站FTP扫描工具.rar 只用于学习 勿用于破坏

2010-08-06

利用明小子拿站实战教程.rar

利用明小子拿站实战教程.rar 放电脑上易丢失,还是拿出来分享下吧 仅用于学习,勿用了破坏

2010-08-06

利用啊D工具拿站实战教程

利用啊D工具拿站实战教程.rar 只用于学习。勿损人利已!!

2010-08-06

修改COOKIES工具分享

不错的一个修改cookies的工具.我推荐大家使用.真的确不错.

2010-08-06

ext3中的ext.jsb文件

解决EXT3中没有EXT.JSB文件的需要。。ext3中的ext.jsb文件分享出来了...

2010-03-18

计算机struts英文翻译

计算机struts英文翻译 3000字左右 找了好久才找到 顺便共享处理啊

2010-01-04

Hibernate3.2中文帮助文档

Hibernate3.2中文帮助文档 PDF格式清晰版

2009-12-30

JAVA使用图片验证码技术

JAVA使用图片验证码技术 本人一直在用的拿出来分享下

2009-12-30

仿GOOGLE搜索提示的源码 J2EE

仿GOOGLE搜索提示的源码 J2EE项目源码

2009-12-30

MySql 5.1.6 JDBC驱动包

MySql 5.1.6 JDBC驱动包 本人收藏

2009-12-30

很经典很强大的注册表学习器

很经典很强大的注册表学习器 自带学习资料和各个系统的配置参数学习

2009-10-12

阿里巴巴的《Java开发手册》最新版:黄山版

《Java 开发手册》是 Java 社区爱好者的集体智慧结晶和经验总结,经历了多次大规模一线 实战的检验及不断完善,整理成册后,众多社区开发者踊跃参与打磨完善,系统化地整理成册,当 前的最新版本是黄山版。

2023-10-24

史上最全 40 道 Dubbo 面试题及答案

Dubbo是国内最出名的分布式服务框架,也是 Java 程序员必备的必会的框架之一。Dubbo 更是中高级面试过程中经常会问的技术,无论你是否用过,你都必须熟悉。 下面我为大家准备了一些 Dubbo 常见的的面试题,一些是我经常问别人的,一些是我过去面试遇到的一些问题,总结给大家,希望对大家能有所帮助。

2019-02-01

史上最全阿里巴巴 JAVA 面试题总览(书签完整版)

史上最全阿里巴巴 JAVA 面试题总览(书签完整版)。 史上最全阿里巴巴 JAVA 面试题总览(书签完整版)。

2018-06-11

区块链:将如何重新定义世界

本书作为国内率先出版的原创性区块链启蒙读物,博采众长,汇集了众多专家学者对于区块链的权*观点,结合大量实例,由浅入深、通俗易懂的向读者介绍了区块链的由来与发展、区块链背后的经济思想、区块链的技术原理与特征、区块链的应用前景以及对区块链的展望与畅想,引领大家走近了解并读懂区块链的世界。

2017-09-25

区块链定义未来金融与经济新格局

从构建价值互联网的角度看,区块链的出现意味着从0到1。正因如此,本书章节结构与常见的体例不同,从第0章开始。第0章从文字与货币的起源出发,通过论述人类信息传递和价值传输手段的进步,说明区块链技术诞生的必然性。第1章用深入浅出的语言讲解区块链的本质、运行原理、颠覆性潜力以及区块链技术的现状与未来;第2章宏观讲述了区块链技术带来的新产品和新机遇,包括数字货币、互联网金融、物联网,以及新一代的基础设施;第3章则较为具体地讲述区块链技术在不同行业中可以实现的应用场景;第4章深入讲述了区块链的技术原理;后记部分,作者以对话的形式回答了读者关心的问题:区块链离我们还有多远。

2017-09-25

区块链技术深度剖析.ppt版下载

区块链技术深度剖析主要是将密码学基础:区块链与密码学、hash函数、公钥密码体制、数字签名等ppt

2017-09-25

区块链技术——通往未来的虫洞

区块链技术 —— 通往未来的虫洞 达鸿飞 小蚁 创始人/CEO 2015.8.9 上海对外经贸大学 区块链 区块链技术 区块链与未来

2017-09-25

腾讯区块链方案白皮书

腾讯公司在自主创新的基础上,打造了提供企业级服务的“腾讯区块链”解决方案。基于 “开放分享”的理念,腾讯将搭建区块链基础设施,并开放内部能力,与全国企业共享,共同 推动可信互联网的发展,打造区块链的共赢生态。 腾讯在支付与金融、社交、媒体等多个领域积累了丰富的行业与技术经验,在高并发的交 易处理方面取得了业界领先的突破;此外,腾讯还具备海量数据处理和分析、金融安全体系构 建的能力,在云生态和行业连接的探索上也积累了丰富的经验。

2017-09-25

区块链技术指南

区块链技术是金融科技(Fintech)领域的一项重要技术创新。本书适用于对区块链技术感兴趣,且具备一定信息和金融基础知识的读者;无技术背景的读 者也可以从中了解到区块链的应用现状。

2017-09-19

JavaEE开发的颠覆者 Spring Boot实战(源码)

在当今Java EE 开发中,Spring 框架是当之无愧的王者。而Spring Boot 是Spring 主推的基于“习惯优于配置”的原则,让你能够快速搭建应用的框架,从而使得Java EE 开发变得异常简单。

2017-09-19

windows一键恢复应用程序图标脚本

桌面及开始菜单中的应用程序快捷方式图标经常丢失了,十分蛋疼,也不知道是什么原因引起的,在这里我专门写了个脚本一键恢复所有图标。

2017-09-07

JDK8代码实践,简单易懂

本代码详细实践了jdk8中的Lambda表达式、函数式接口、方法引用、Optional、重复注解、Stream流、各种排序汇总、BASE64、JS引擎、接口静态方法默认方法、日期时间API等。。

2017-09-07

稍微有点难度的10道java面试题,你会几道?

稍微有点难度的10道java面试题,你会几道?

2017-08-22

http文件上传 支持断点续传

使用的是apache common upload上传组件 http上传最大支持2G 支持断点续传

2012-12-06

httpwatch网站抓包工具

httpwatch网站抓包工具 经测试 非常好用

2010-08-06

网站FTP弱密码扫描工具

网站FTP弱密码扫描工具 只用于分享学习 勿于破坏

2010-08-06

空空如也

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

TA关注的人

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