- 博客(402)
- 资源 (39)
- 问答 (1)
- 收藏
- 关注
原创 全栈之路-前端(四)javascript基础知识3
1、js的字符串除了一些常用的获取位置、获取长度、截取、拼接外,还有个好用的函数padStart和padEnd,可以填充字符,例如:function test1(){ let str="string"; console.log(str.padStart(9)); console.log(str.padStart(9,"#"))}test1();上边代码输出结果如下: string###string第一个前边填充了3
2021-11-05 23:36:05 321
原创 全栈之路-前端(三)vue中按需引入Element UI及使用
有些简单操作时间长了不用可能也会忘记,尤其是一些细节,因此对vue中按需引入element-ui也做一个简单记录。安装依赖cnpm i element-ui -Scnpm i babel-plugin-import -D以上操作也可以使用npm,但相对速度可能会慢点。element-ui是基础依赖,babel-plugin-import的作用是按需引入,这些在element官网都有说明。配置安装了依赖之后,还需要一定的配置,主要是两个文件,一个是babel.config.js,另一个是main
2021-10-30 11:32:26 553
原创 全栈之路-前端(二)javascript基础知识2
1、==和!=在比较之前会进行类型转换,===和!==比较之前不进行类型转换,一般推荐使用===和!==.2、关于for循环,除了和java类似的普通for循环之外,还有for in和for of和forEach。其中for in遍历的是对象的属性而不是内容,同时不保证顺序。forEach不能break和return。for of保证顺序,可以break和return,是ES6之后的语法。例如有如下代码:function test8(){ let arr=["a11","a12","a13","a14
2021-10-27 23:02:42 211
原创 全栈之路-前端(一)javascript基础知识1
1、javascript一开始不叫javascript,之所以叫javascript,是因为当时java被炒的很火,相当于蹭热度。2、javascript主要有三大块组成,分别是ECMAScript、DOM和BOM。3、ECMAScript是由ECMAScript-262定义并提供基础核心功能,通常说的ES5、ES6实际就是ECMAScript-262第五版和第六版的简称。4、DOM即Document Object model,主要是对网页标签的操作,简单粗暴的可以理解成对HTML标签的操作,是浏览器
2021-10-26 22:43:03 200
原创 docker中安装mongo3.2
今天在虚拟机中用docker安装了mongo最近版和mongo3.2,旨在巩固docker的使用,也为了后续mongodb的一些技术验证。相对于最新版,指定3.2版本的安装会有一些细节不太一样,再考虑到实际应用中可能指定版本的需求更多一些,因此这里仅记录3.2的安装验证过程,以备忘。镜像拉取使用docker的第一步是启动docker,启动以后可以先单独拉取镜像,也可以使用run命令,run的时候如果没有找到镜像,也会自动取下载。但是这里为了巩固docker的操作,还是选择分开执行拉取和运行。镜像拉取
2021-10-10 11:52:42 469
原创 git使用进阶(三)——stash及cherry-pick的理解和实例
俗话说,条条大路通罗马,很多时候要解决一个问题的办法都不止一个,但是不同的办法效率可能就有所区别。在git使用的时候,stash和pick就是其中两个可以一定程度上提升效率的功能。stash场景需求分析假如有这样一个需求场景:我有一个master分支,基于master分支拉取了dev分支,并完成了一个用户管理的功能开发,现在已经正式发布使用。那么现在我有了一个新的工作任务,需要继续进行一个商品管理的功能开发,于是我增加了一个商品信息实体类和一个商品管理的业务接口类,分别是Goods和GoodsCo
2021-09-19 19:34:53 658
原创 git使用进阶(二)——版本穿梭reset三种模式理解
在日常工作中使用git,除了正常场景外,会有各种异常场景,比如误提交了代码需要回退就是其中一个常见的场景,这就需要用到reset。要理解reset相关的内容,首先需要理解git工作区相关概念,可以参考上一篇:https://tuzongxun.blog.csdn.net/article/details/120315735上一篇关于工作区的图也先拿过来用一下:首先,reset翻译过来是重置,常用于回退操作,但是实际上它的作用不局限于回退,而是可以进行版本之间的切换。reset操作有三种模式,分别是
2021-09-17 12:16:09 371 2
原创 git使用进阶(一)——工作区和log
前言git的基础操作比较简单,之前我也有过基础操作的记录git操作笔记,但是实际使用时会发现,如果只会最基础的使用,就会有很多需求场景都不能满足,甚至会出错了也不知道为什么,因此在基础使用的基础上,还需要更进一步的理解。关于工作区、暂存区、版本库和远程仓库的理解git的版本管理,除了branch和tag这些外,实际还有工作区、暂存区、本地版本库、远程版本库等概念(有的地方也把我这里说的本地版本库叫对象区,然后对象区加暂存区一起叫版本库,具体这种概念的理解和差异暂时还无法辨别哪种对,但不影响暂时使用上的
2021-09-15 19:55:36 417
原创 我以为我会junit,原来我还不会
junit从某种程度上来说应该是很简单的一项技术,但是正所谓会者不难,难者不会,如果没有好好地用过,总会有些你以为是对的地方,其实他是错的。对于有7年java开发经验的我来说,不完全会写junit,实在是汗颜。以前的项目基本都没怎么要求写junit,所以我一直误以为junit简单到就是在Test中调一下相关方法,只要跑出绿色结果就好了,直到这一次需要相对正式的junit时,才发现这样是不对的,以下是从错到对的一个记录。业务功能代码例如我这里有一个很简单的Service,代码如下:/** * @A
2021-09-07 23:01:27 433
原创 jenkins pipeline部署实践及重点问题分析
前言根据网上的说法,以及暂时使用过程中的感受,使用自由风格或者maven风格来创建jenkins item,虽然也能实现自动化部署,但是面对相对复杂的构建需求时可能就不太好实现。一般正式的项目,除了基本的拉取代码、编译代码、运行junit、打包、启动或者重启外,可能还会涉及到sonar代码检查、集成测试、关联例如jira或者conflunce等系统。因此,我目前所知道的很多正式项目在使用jenkins时可能都会使用pipeline流水线,如果要使用pipeline,需要先安装pipeline插件。p
2021-09-04 23:47:56 1386 2
原创 jenkins初步理解及参数化构建
jenkins构建和插件的初步理解就我目前了解到的,一个jenkins自动化部署,至少包含拉代码、编译和打包及运行单元测试、部署这几个步骤。拉代码指的是从代码托管服务器下载代码,编译和打包及运行单元测试,实际上是项目构建工具的功能,例如maven、gradle。根据个人理解,jenkins不安装插件,也能够完成基本的自动化部署,因为它本身就支持运行shell脚本,支持参数化构建,支持多种触发器等。只要能运行shell脚本,那么不论是拉代码,还是构建和部署,都是可以通过linux的命令完成的。(这一段没
2021-09-04 11:44:56 395
原创 centos7中jenkins安装和验证
前言以前了解过jenkins,也大概知道做什么的,但是由于有专门的运维,因此并没有太多实际使用。但是作为DevOps中比较重要的一个工具,还是有必要加强这方面的能力,因此就在本地虚拟机安装了一个进行相关的学习。安装环境虚拟机系统是centos7.5,安装的jdk是java1.8.0_261,虚拟机ip是192.168.19.199。安装包下载jenkins安装包有很多种,这里选中比较简单的war包。wget https://get.jenkins.io/war-stable/2.303.1/
2021-09-01 21:07:40 562
原创 idea常用功能笔记
工欲善其事,必先利其器,在idea中有很多功能都可以提高做事的效率。这些功能太多,很难全部都记住,以下是自己使用过程中的一些记录,方便换电脑时进行参考。一、常用设置1、进入设置界面File-》Settings或者在显示工具栏的情况下点击工具栏的小扳手或者Ctrl+Alt+s快捷键调出。2、调出工具栏可以通过View-》Appearance-》ToolBar显示和关闭工具栏。3、鼠标滚轮调整编辑区字体大小在Settings界面通过Editor-》General中勾选Change font si
2021-08-28 22:27:30 575
原创 java stream api熟悉和理解
前言stream api和lambda表达式都是java8出来的,都可以简化代码,也经常会配合着使用。对于上边的说法,网上是这么说的,但是我自己写的时候,总觉得好像有的时候确实简洁很多,但也有时候似乎反而更麻烦。所以,根据我目前的理解,我觉得可能它有它的适用场景,但并不能说用它就一定好,但是以后会不会改变这种看法也很难说。就我目前的了解,stream api主要用在对list集合及数组的操作,最大的优势在于各种中间操作。stream api是把集合等数据转化成stream,然后提供了一系列的api
2021-08-26 22:15:29 252 2
原创 lambda表达式基础
前言早在JAVA8出来的时候,我实际就已经了解过一点点lambda表达式和stream流,但是由于写惯了原来的那种风格,再加上当时的项目中也没有什么人使用,所以只是一扫而过,没有深入了解,也没有进行任何的练习,甚至还有那么一点抵触,觉得lambda读起来太不好懂。但是现在过去好几年了,这份新工作的项目中也已经是大量的lambda和stream,因此是时候该好好的了解一番,以和项目组整体风格尽量一致。示例经过了解,lambda表达式的应用场景是,任何有函数式接口的地方。什么是函数式接口呢,其实就是只
2021-08-25 21:47:23 164
原创 使用spring-cloud-zuul-rate-limit在zuul中为服务限流
前言几个月前做过一个springCloud服务限流的任务,当时选定的技术是spring-cloud-zuul-rate-limit。之所以选这个而不是别的,是因为项目本身使用了zuul,而且业务需求上spring-cloud-zuul-rate-limit的功能刚好都可以满足,在这种情况下就可以在符合要求的同时尽可能快的完成。这个任务实际上只相当于一个技术调研,只要在现有技术框架的基础上能够集成和实现需求,并且成功测试就可以了。和当时在公司略有不同的是,公司是直接使用内部maven仓库,spring
2021-08-23 22:57:57 1105 2
原创 时隔九月再起航
时间过得真快,不知不觉间来广州已经四个多月了,已经超过了上一份工作的时间,算是初步稳定了下来。回头望去,从去年十一月份离开上上一份工作到现在,九个多月的时间,换了两份工作,很多的经历惶惶然还像是在做梦一样。这种种的经历,也一步步验证着那些耳熟能详的道理,比如心急吃不了热豆腐,比如塞翁失马焉知非福。从事软件以来,这是第五份工作,辗转从深圳到武汉,又从武汉来到了广州。第一份工作外包到中国移动,做了2.5年;第二份工作还是外包到中国移动,做了1.5年;然后就从深圳回到了武汉,我以为从此后如果再来广东,应该
2021-08-22 01:00:47 186
原创 使用python和java一键替换word文件内容
需求一键替换word文档内容,是个比较常见的需求,office和wps也都有全部替换功能。但是这个功能只能针对当前打开的文档,如果有多个文档,就需要一个一个的来。同时,如果要替换的内容也是多个,同样需要一个一个的来。在文件少的情况下可能也没什么,但是如果文件有几十个,那么可能就很需要耐心了,因此一键替换所有符合要求的文档中内容的需求就有了。技术选型poijava中操作word,比较熟知或者说比较官方的api是poi,对于word普通的操作其实也可以了。但是对于文档内容替换,实际使用时却发现有很
2020-11-30 13:25:07 906
原创 若依管理系统RuoYi-Cloud版搭建记录
现在快速构建web应用程序的系统有很多,若依RuoYi是其中一个,根据官网说明,使用最流行的技术SpringBoot、Shiro、Thymeleaf、Vue、Bootstrap,这个系统分为一体化版本和前后端分离版本。不管是学习某些技术,学习整体架构设计思想,还是拿来进一步二次开发,都是不错的选择。最近抽空搭了下这个环境,基本按照官网说明,但也有一些细节略有差异,以下为踩坑记录:RuoYi-Cloud代码下载若依系统官网是http://ruoyi.vip/,springcloud微服务版本的代码下载地
2020-10-30 13:13:04 6219 6
原创 近期生产问题和解决方案记录
前几天生产环境上线,过程不算顺利,总结下原因大概有这么几点:前期准备工作不足,依赖的中间件软件安装后未经过充分验证,例如mongodb;临时改配置,sit和预生产的中间件单机,生产使用集群,集群环境的使用未得到充分验证;不可抗因素,踩到了springboot版本的bug。以下是部分可记录供后续参考的问题和解决方案:mysql-sqlmode问题这个问题实际不是生产的问题,是之前预生产出现的,之前没有记录,这里一并记了。部署预生产后,数据库分页操作报错,这个问题遇到很多次了,只是运维同事搭建
2020-10-23 11:43:52 3195 7
原创 flink on yarn集群搭建及验证要点记录
standalone模式的弊端前面搭建了flink简单集群,并在此基础上又搭建了HA集群,记录地址如下:flink初识及集群搭建和简单验证flink-HA集群搭建和问题记录虽然上述两种都能使用,在学习flink-api阶段应该是够用了,但是如果真要上生产使用,就还是有一定的弊端。根据之前的学习可知,flink集群主要分为jobManager和taskManager,而jobManger的任务主要有两个,一个是资源管理,另一个是任务调度。这样一来,jobManager的任务其实就显得有点多,而又由
2020-10-16 11:41:59 2315
原创 flink-HA集群搭建和问题记录
上一篇中,搭建了一个简单的flink集群,在这个集群中,我使用了一个jobManager节点,三个taskManager节点,之后根据官网和其他资料写了一个简单的java验证程序验证集群的可用:flink初识及集群搭建和简单验证虽然这个集群搭建是成功的,但是这种方式的集群却存在问题。flink集群中jobManager和taskManager这种,是典型的master/slave主从模式的设计,jobManager具有资源管理和任务调度的功能,管理taskManager的资源和调度,也就是启动以及外部
2020-10-14 20:00:44 1885 5
转载 深入理解linux系统的目录结构(总结的非常详细)
转自:佚名 的《深入理解linux系统的目录结构(总结的非常详细)》 原址:https://www.jb51.net/LINUXjishu/151820.html 对于每一个Linux学习者来说,了解Linux文件系统的目录结构,是学好Linux的至关重要的一步.,深入了解linux文件目录结构的标准和每个目录的详细功能,对于我们用好linux系统只管重要,下面我们就开始了解一下linux目录结构的相关知识 当在使用Linux的时候,如果您通过ls –l / 就会发现,在/下包涵很多的目录,比
2020-10-13 15:58:30 410
转载 ssh: connect to host github.com port 22: Connection timed out
转载自:https://blog.csdn.net/weixin_39800144/article/details/104118750问题换了个wifi,git clone拉取代码就会报错,切回原来的wifi,又是可以的,反复尝试,最终确认,这个特定的wifi下,网页和命令行都不能访问github,甚是神奇。G:\mylearn\source-code>git pullssh: connect to host github.com port 22: Connection timed outf
2020-10-13 14:19:42 1929
原创 flink初识及集群搭建和简单验证
批计算和批计算在软件系统中,尤其是企业级软件,基本离不开数据统计和分析等数据计算。最初,多数常见的统计分析都是基于数据库的数据进行处理,例如某一段时间的活跃用户数统计,这种计算方式称作离线计算,也称作批量计算(个人理解)。而现实世界中的数据产生方式有很多都是持续不断的,也就是说实际很多场景的数据是就是数据流,这些数据随着时间的流逝,价值会不断的降低,因此就需要尽可能实时的进行处理。而批计算是一批数据一起处理,尤其是最初数据先入数据库,再拿出来处理,这种方式在数据量日渐爆发的场景下,对于实时分析的业务就
2020-10-12 23:41:28 1303 8
原创 hbase-ha模式搭建要点和问题记录
之前搭建了单机的hbase,使用伪分布式的hdfs作为数据存储,具体搭建要点和问题有所记录:https://blog.csdn.net/tuzongxun/article/details/107915720后来,伪分布式的hdfs升级为ha模式,hbase自然也是要同步升级成ha的,本以为应该会很顺利,但实际上花的时间还是比预想中的多,因此还是做一个简单的记录,尤其是其中卡住的问题。机器规划本次hbase-ha模式搭建规划使用三台机,主机名分别是node001、node002、node003,其中n
2020-09-23 18:38:04 896 2
原创 centos7中redis、mongodb、kafka安装记录
一个完整的java后台系统,通常会涉及到非常多的技术,例如数据库、缓存、消息中间件等,除此之外,从部署层面讲,可能还离不开nginx、docker这些,要更加熟练的使用这些技术,加深理解,必不可少的需要有自己的环境。随着上次centos6.5的系统升级到centos7.8,打算把hadoop、redis、mongodb、kafka等这些软件都迁移到新的虚拟机系统中,docker和hadoop的安装部署最近都有相关记录,这次先补充redis、mongodb和kafka。redis安装redis的安装,实
2020-09-08 12:29:05 822
转载 Linux安装Redis 6.0.5 ./install_server.sh报错
转载自:https://www.cnblogs.com/strive-for-life/p/13194306.htmllinux 安装Redis6.0.5时,进行到./install_server.sh时报错:This systems seems to use systemd.Please take a look at the provided example service unit files in this directory, and adapt and install them. Sorr
2020-09-08 09:21:08 4702 2
转载 server.c:5166:39: error: ‘struct redisServer’ has no member named ‘maxmemory’
转载自:https://blog.csdn.net/xixiyuguang/article/details/106612841错误示例server.c:5151:94: error: ‘struct redisServer’ has no member named ‘unixsocket’ serverLog(LL_NOTICE,"The server is now ready to accept connections at %s", server.unixsocket);
2020-09-08 09:13:10 4841
原创 使用docker部署springboot服务
上一篇,在centos7中搭建好了docker,并尝试了基础的image镜像和container容器的命令操作。这一篇就尝试自己在docker容器中启动并使用springboot服务,基本步骤就是准备jar、配置Docker、构建image、启动container、测试服务功能。准备springboot的jar为了简单演示,我创建了一个新的springboot项目,只写了一个controller接口以供查看效果,controller接口代码如下:@RestController@RequestMap
2020-09-04 11:39:13 1001
原创 centos7安装docker及docker基础操作
之前使用腾讯TSF时,接触了一点docker相关的内容,但只是用了一点点,由于各种原因而没有好好了解,但是这件事始终都在心里搁着,现在总算可以正式来了解一下了。centos7网络配置根据docker官网安装文档的说明,使用centos系统安装需要版本是centos7以上,而之前学习redis和hadoop时,我为了方便就使用了很久以前保存的一个centos6.5系统,所以不得不再安装一个centos7的系统。centos系统安装可以选择在线升级,据说6.5的只能先升到7.2,不过应该也够用了。但是出于
2020-09-03 18:17:11 863
原创 HDFS-HA模式搭建(基于完全分布式模式升级)
说明本次HDFS-HA模式搭建基于之前的完全分布式,完全分布式搭建可参考之前的内容:hadoop安装环境准备和关联知识解析hadoop分布式安装及配置初步解析(坑坑不息)概括性来说,大概分为如下几个部分:JDK安装和JAVA_HOME配置HOSTS映射SSH免密登陆设置HADOOP配置文件修改配置HADOOP_HOME初始化(格式化)启动验证hadoop项目常被提到的自身模块有yarn、hdfs、mapreduce,hdfs和yarn都可以搭建为高可用(HA),本篇先只
2020-09-01 18:06:17 1177 1
原创 寻道,思考人生的价值(观小米十周年演讲有感)
这几天,各种朋友圈被小米十周年的演讲刷屏,我感触颇多,有些内容像是一语惊醒梦中人,使得一直思考人生价值的我,有种像是茅塞顿开的感觉。成功是否等于价值?很多人喜欢说成功两个字,而现在大多数人所谓的成功似乎都是以暂时看得到的权力、财富和地位来评判。然而,现有的权力、财富和地位,是否就能证明成功呢?或许是吧。但是,这种所谓的成功是否就能等价于他的价值呢?我认为一定不是的!个人价值价值是什么,可以分为个人价值和社会价值,上面以现有财富地位等评判的成功,或许就是一种个人价值,我理解的个人价值,就是对自己的
2020-08-13 11:20:47 1411 12
原创 redis、hadoop和hbase等安装相关拓展知识补充
从某种意义上来说,一项技术要学会不难,要学好就很难。会,代表的是能用起来就可以了,照葫芦画瓢而已;好,就涉及到各种细节,一些重要的、频率高的操作,可能还需要知道部分原理。就拿软件安装来说,linux中大部分软件的主要安装流程是大同小异的,仅是这种大同,也有许多的细节,以下便是我在redis、hadoop、hbase等安装过程中遇到的其中一部分,仅是一部分。防火墙首先要说的是防火墙,很多人都知道如果防火墙开着并且没有设置白名单的话,大部分端口都是不能直接从外部访问的,所以要么配置白名单,要么就是关闭防
2020-08-11 11:26:43 992
原创 hadoop和hbase的关系及hbase安装与验证
从hadoop官网首页就可以看到,hadoop项目本身自带的模块现在有五个,即:hadoop commonhdfsyarnmapReducehadoop Ozone第一项从名称就可以看出来是基础功能模块,hdfs是文件存储系统,yarn是调度和集群管理,mapReduce是数据计算处理,这几个都是学习使用hadoop一开始就必然会接触的。最后一个hadoop Ozone是分布式对象存储系统,这个是对hdfs的一种补充,是一个相对较新的内容,在人们口中出现的频率相对较低,可能很多人一开始都不
2020-08-10 16:16:08 3487 2
原创 hdfs基础操作(命令行和java代码)
hadoop分布式模式初步搭建完成,无论是从命令行还是web界面都看起来是可用的,然后便可以进入下一步,可以说是进一步的验证,也可以说是hdfs相关的学习。hdfs是分布式文件存储系统,可以进行文件的增删改查操作,原生支持的就有基本的命令行,然后就是各种语言的客户端。这一部分,主要是记录和练习基本的操作,也当是进一步验证之前环境安装的是否可用。环境说明以下内容均基于hadoop3.1.3版本。命令行操作创建目录文件系统落到实际,自然就是目录和文件,所以首先是对文件目录的创建:hdfs dfs
2020-08-10 12:56:48 2176
原创 hadoop分布式安装及配置初步解析(坑坑不息)
linux中hadoop的安装教程,网上也有不少了,例如我自己搭建过程中参考的这几篇:https://blog.csdn.net/weixin_44198965/article/details/89603788https://blog.csdn.net/qq_25615395/article/details/89083580https://juejin.im/post/6856984821059895303/然而教程是不少,但或许是环境不一样,也或者思路不一样,所以参考实现的过程中总会发现这样那样的
2020-08-06 16:26:41 1139
原创 hadoop安装环境准备和关联知识解析
本想一口气把redis多学一点,奈何还有常见的如穿透、雪崩、击穿、分布式锁、redis并发原理、linux多路复用、redis集群等都还没梳理清楚,而项目就需要先学习一下hadoop等大数据相关技术,于是不得不暂停redis,转而进入hadoop系列的摸石头过河。据我了解,一般正式环境的hadoop使用都是需要zookeeper的,但是使用hadoop是否一定要zookeeper这个事,对于刚开始学习hadoop的我来说,还是一个未知数。尤其是网上有的教程写了zookeeper,有的又没写,也就更加的.
2020-08-05 11:43:14 1275 2
原创 springboot集成和使用redis常用功能
纯粹的redis命令行操作,可能就跟纯粹的mysql命令行操作一样,会有一种就是为了用而用的感觉。所以一般来说redis作为一个缓存中间件,都会辅以其他的客户端语言进行操作,比如java。redis是开源的,java也是开源的,这就注定了java中连接redis的客户端不止一种,常见的有jedis、redisson、lettuce。在如今一切都在高速运行的社会环境下,java软件开发也是极其追求代码产出效率,所以随处可见的都是springcloud、springboot。springboot约定优于配
2020-08-04 18:24:04 2158
转载 朱子家训
黎明即起,洒扫庭除,要内外整洁,既昏便息,关锁门户,必亲自检点。一粥一饭,当思来处不易;半丝半缕,恒念物力维艰。宜未雨而绸缪,毋临渴而掘井。自奉必须俭约,宴客切勿流连。器具质而洁,瓦缶胜金玉;饮食约而精,园蔬逾珍馐。勿营华屋,勿谋良田,三姑六婆,实淫盗之媒;婢美妾娇,非闺房之福。童仆勿用俊美,妻妾切忌艳妆。祖宗虽远,祭祀不可不诚;子孙虽愚,经书不可不读。居身务期质朴,教子要有义方。勿贪意外之财,勿饮过量之酒。与肩挑贸易,毋占便宜;见贫苦亲邻,须加温恤。刻薄成家,理无久享;伦常乖舛,立见消亡。.
2020-08-03 22:10:48 342
mysql-installer-community-5.6.35.0.msi
2020-07-31
VMware-workstation-full-11.1.0.58002.1428919414.exe
2020-07-31
robomongo-1.0.0-rc1-windows-x86_64-496f5c2.zip
2017-07-28
请问有没有人使用spring整合过mongodb3.0啊?
2015-08-07
TA创建的收藏夹 TA关注的收藏夹
TA关注的人