- 博客(118)
- 资源 (29)
- 收藏
- 关注
原创 Docker 安装Mysql 如何使用,遇到navicat连不上以及Access denied for user ‘root‘@‘localhost‘ (using password: YES)
先用-h 127.0.0.1进去,再用下面的SQL改,然后flush,重启docker就可以,但感觉没意义,可能docker启动时,-e 环境没有配置localhost的密码,只是配置了127.0.0.1的密码,但这个没意义,这里之所以写,就是图个明白。启动后,在宿主机用yum安装了mysql,执行,可以连接,宿主机安装yum install -y mysql非常重要,否则用navicat是连接不上的,但只要装了,哪怕你yum remove mysql,貌似都可以连上,这个很神奇。
2023-12-28 19:41:00 549
原创 phpstorm中使用 phpunit 时的配置和代码覆盖率测试注意点
在使用 Composer 中,修改了 composer.json 中的 autoload-dev 配置(例如 PHPUnit 版本),想要让这些修改生效,需要运行哪些 Composer 命令?
2023-12-12 00:40:04 151
原创 简单有效地制定技术人的 OKR 流程
写双月 OKR 一晃两年了,在这里不讲一些高大上的名词,主要解决技术人员觉得 OKR 没屌用的观念。用通俗易懂的操作方式来重新讲解一下 OKR 制定的几个关键点:
2023-11-21 16:12:01 159
原创 virtualbox 安装win7坑点汇总
最大的问题就是win7装完之后的最大分辨率问题,下面这篇文章有人说可以,我用的不可以,设置分辨率没效果,后来换成virtualbox 5,重新安装了镜像之后,正常显示,如果一直好不了的,可以从virtualbox7降下版本,但是如果已经有其他镜像的,降版本其他镜像不能用,也是一个很纠结的事情,那就忍者吧,我反正没探究出来的好的办法。其次就是数字签名验证问题,这个文章很有效果,按照里面的设置搞即可。下载安装镜像:如果镜像没有了,我这边云盘也备份了一份。
2023-11-09 14:42:21 926
原创 Electron webview 内网页 与 preload、 渲染进程、主进程的常规通信 以及企业级开发终极简化通信方式汇总
preload.js 就像插件的 content script 与网页的原生的环境还是隔离的,两个环境的变量互不影响,比如在 preload.js给 window 追加一个函数A,在原生网页中window.A 是 undefined,所以 preload.js 是沙盒环境。实际代码,其中__static就是我们存放静态文件的地方,这个 static 是 electron 源代码根目录下的文件,最终打完包后会放在 dist/electron/ 根目录下。
2023-10-17 16:06:54 1562
原创 Java 和 PHP GC 的差异和差异出现的原因
垃圾回收(Garbage Collection,GC)是编程语言中的一项关键功能,用于自动管理内存,防止内存泄漏和提高程序的可靠性。不同的编程语言采用不同的GC机制,以下是对Go语言和Python的GC机制的概述。Go语言的GC机制具有并发性、分代回收、标记-清除算法和三色标记法等特点。它能够在程序运行时执行垃圾回收,不会导致停顿,适用于高并发应用。分代垃圾回收提高了回收效率,标记-清除算法处理循环引用,而三色标记法减少了标记和清除的阶段。Go语言还提供了灵活的垃圾回收时间控制和内存分配优化。
2023-09-07 11:59:03 415
原创 nginx部署vue-router history 模式时报 404 nginx try_files 文件路径详解和 vue.config.js中publicPath的作用
try_files 的路径解析:在 try_files 指令中,文件路径可以是相对路径(相对于 root 或 alias 指定的路径)或绝对路径(相对于服务器根目录)。当路径以斜杠 / 开头时,被视为绝对路径。否则,会相对于 root 或 alias 的路径进行解析。
2023-08-31 00:16:36 774
原创 Nginx 与后端服务器socket 连接层 理解 HTTP 和 WebSocket 协议的异同
如果你理解了协议就是由两端(人或者物)约定的一些暗号,那么这些暗号,也可以给服务器端约定一下,比如,在请求中增加一个 Token 键,这个键要携带一个值,用来鉴权,只要服务端允许接收这个 Token 那么浏览器端就能将这个 Token 传递过来。为什么说服务端允许呢?像你看的电视剧,当一个人进入城门时,都得先进行验证身份的,如果你不在名单上,例如胡人,那是不让你进的,所以必须有服务端的允许,Token 才能进去。
2023-08-24 18:11:24 673
原创 Hyperf 如何做到用两个端口 9501/9502 都能连接 Websocket 服务以及多 Worker 协作实现聊天室功能
为何 Hyperf 能够在两个端口上监听 WebSocket 连接?源码角度来看,在配置了多个 Servers 时,实际上,只启动了一个 Server注:我之前接触的代码都是启动一个服务绑定一个端口,之前也看过 swoole 扩展的文档,但是没留意服务和监听端口也是分离的,这启发了我一种思维,代码凡是能继续拆分的,就继续拆分,这样代码就会有更多的灵活,每个功能都能进行扩展,将服务和端口进行拆分之后,就可以在一个 Server 绑定多个 Port,每个 Port 又能有独立的事件。
2023-08-21 11:33:01 1374
原创 SpringBoot 学习(04):Idea 中控制启动命令的详细过程 环境区分案例
这段代码是一个 Java 启动命令,用于运行 Spring Boot 应用程序。: 这是 Java 的可执行文件路径,表示你正在使用 Amazon Corretto 17 版本的 Java 运行你的应用程序。: 这是 Java 虚拟机的参数,用于控制 JIT 编译的阶段。在这里,它将 JIT 编译限制为第一层。: 设置 Spring 输出使用 ANSI 颜色。: 启用 Java 远程管理。: 启用 Spring JMX(Java Management Extensions)。
2023-08-20 20:25:47 2255
原创 SpringBoot 学习(03): 弱语言的注解和SpringBoot注解的异同
在解释注解之前我们需要先定义一下注解与注释的区别:注释:给程序员看,帮助理解代码,对代码起到解释、说明的作用。注解:给应用程序看,用于元数据的定义,单独使用时没有任何作用,需配合应用程序对其元数据进行利用才有作用。应用程序,你可以理解为hyperf的启动程序识别了这个过程,并进行一定的处理,尤其是hyperf自定义一些注解标签,在启动时,会将带有注解标签的源代码翻译成执行代码,在具体执行时使用。生成proxy代理类的过程就跟npm预编译过程一样,对代码进行重新的生成。
2023-08-19 19:58:16 682
原创 SpringBoot 学习(02): 从嵌入式系统到嵌入式Servlet SpingBoot 的进化之路
总结,最初结识 Java 的那批人,是接触的接待员这个概念,因此就会让自己一头雾水,同理一个贷款员也不知道整个公司的运作机理,他也只是死死地记住要先把自己的电话号码,职责填表,再与接待员对接着,要获取一些额外数据,这些数据以后怎么怎么用,处理完毕之后,把所有的文件在递交给接待员,之后贷款员也不知道发生了什么。则是一个计算机科学的术语,用于描述一种特定类型的服务器端程序。因此,我们追加的各种应用,都可以理解为一个嵌入式系统,例如我们开发的桌面端软件,我们开发的移动 App 都是遵循着该规则。
2023-08-15 15:58:20 492
原创 SpringBoot 学习(01): javac、src/main/java目录、Maven与pip 弱类型语言为何没有子模块编译
Java项目结构:我们讨论了Java项目常见的目录结构,包括源代码目录src/main/java、测试代码目录src/test/java以及资源目录src/main/resources。读取资源文件:我们探讨了使用Java的InputStream和BufferedReader来读取资源文件内容的方法,并给出了代码示例。IDE和资源目录设置:我们讨论了在IDE中设置资源目录的方法,并介绍了IntelliJ IDEA中设置资源目录的过程。
2023-08-03 00:52:04 365
原创 Electron 多端通信桥 MessageChannelMain和 MessagePortMain 坑点汇集
MessageChannelMain可以理解为一个独立的协程队列,提供的两个port之间互为对方的管道,port2发送消息的队列会提取出来发给我port2,同理port2的生产的消息也会发给我port1,因此你在创建了MessageChannelMain之后呢就可以开始生产消息了,但是你没port1.start()时,port1.on("message",()=>{})是不会被消费的。
2023-08-01 16:36:40 1631
原创 Electron 工具进程utilityProcess 使用中遇到的坑点汇集
官网有一句话非常重要,它提供一个相当于 Node.js 的API,但使用 Chromium 的代替来执行子进程。这句话的意思是两者还是有点区别的。更应该当成一个 worker.js 来看到。这个工具进程自从 electron:22.0.0 才开始有,老版本是没有的哦!Electron 22.0.0 - 知乎。
2023-08-01 01:42:50 1933 6
原创 HTML5 API 多端通信桥 MessageChannel 技术
这个特别有意思,可以将其理解为通信桥的概念,桥有两个端(port1,port2)只要将port1,port2指定到任意两个进程,无论是iframe-iframe,iframe-worker,parent-child-iframe,worker-worker等,只要搭好,两者就可以实时通信了。这解决了让parent作为中转站这种头大的问题,以下是该技术调研的细节。
2023-07-31 15:11:59 667
原创 Unity3D 学习计划和知识总结
B站课程本周就可以搞完了:https://www.bilibili.com/video/BV1gQ4y1e7SS目前周日能看到40集,下周应该可以把基础都看完了进阶版去哪里看呢?7.24日就没有知识可学了,这段时间要多找找进阶版的知识来学习。
2023-07-13 01:00:02 106
原创 深入理解HtmlWebpackPlugin插件:从基础到实践
在多入口文件打包时,入口文件非常重要,webpack 提供了对 js 的打包,但是 js 最终要挂在一个 html 文件下面,而处理这个 index.html 就是HtmlWebpackPlugin 插件在做的事情。所以对HtmlWebpackPlugin 的深入了解有利于未来多入口打包。
2023-07-03 00:46:30 1561
原创 前端10年进化 Node.js、模块化、CommonJS、AMD、CMD、Webpack、Vue-cli、Electron-vue
我们从模块化开始,了解了模块化的概念和不同模块化方案(如 AMD、CMD 和 ES6 模块)。然后,我们探讨了前端构建工具 webpack 的基本原理、打包优化和配置技巧。我们还涉及了 babel 的作用和使用方法,以及在 Vue.js 和 Electron 中的配置。此外,我们还讨论了预编译和编译的概念,以及不同语言中的应用。最后,我们深入了解了 Electron-vue 的目录结构、配置文件和多窗口开发。通过适当的配置和调整,我们可以根据项目需求优化目录结构、打包方式和模块化开发,以实现更好的开发体验和
2023-06-24 19:21:05 815
原创 Stable Diffusion局部重绘功能,如何完美抹掉不想要的物体?
P图还得靠 PS,AI 只是降低了 PS 的难度,你不必有很牛逼的绘画能力,甚至你只需要会涂鸦即可,简单的配色,甚至只需要画一个大致的二次元,丢给 AI,使用它的。,找到具体的 Lora,就能画出你需要的画,并且能改进你想改造你想改造的所有的画,不必训练 Lora,借助 PS 也可以很好的做到换脸,换身体。教程,这种抽卡式东西玩几天就没有意思了,怎么按照自己的意愿生成自己的图是非常有意思的东西,所以我对局部重绘特别感兴趣,借助 SD 的。,如何利用它的扩散算法来向着自己期望的方向上呈现,就有一种成就感。
2023-06-19 09:50:21 3557
原创 C盘满了怎么清理通杀方式——硬链接 之 Chrome 浏览器用户数据迁移案例 及 Win10 默认浏览器路径注册表修复
将原来C盘的目录拷贝到其他盘,然后用mklink建立一个联接,这里贴下ChatGPT对于三种链接的解释。
2023-06-17 23:24:05 2617 1
原创 Charles Windows10使用 证书安装 过期重设 证书加入到受信任根目录 配置访问WhatsApp
今天遇到的奇葩问题是之前的电脑上有安装这个Charles也注册了,但是就是不能用,我重新卸载,把Charles相关的所有数据都删除了(用everthing)然后再安装后可用了。4、在控制节点中展开证书-->受信任的证书颁发机构-->证书,右击所有任务-->导入;这个隐藏的特别深,在安装根证书这里,所以这里要记下来,不然以后自己也得忘。由于CA 根证书不在“受信任的根证书颁发机构”存储区中,所以它不受信任。3、在可用的管理单元中选择”证书“,点击添加-->确定;除了网上找,最快的就是淘宝买一个,省时省力。
2023-06-15 19:14:57 4947
原创 AIGC - Stable Diffusion 学习踩坑实录总结
值的概念在Stable Diffusion中,有很多要设置的参数,这些参数起到的作用非常重要,直接决定了出图的各种样子和质量,经过实践,我大概搞明白他们遵循的规律,因为程序员是要与AI对话的,所以所谓的指标,应该就是让AI放开在机的意思,就如踩油门一样,所以,所有的数字越大,AI越放飞自己,越小,AI就越收敛。
2023-06-05 10:52:56 1420
原创 OpenAI ChatGPT API + FaskAPI SSE Stream 流式周转技术 以及前端Fetch 流式请求获取案例
OpenAI 官方给我了一个超简单的文档,还直接用curl的方式搞得,真是能多省就多省,大家可以使用apifox 或者 postman 将curl 转成 fetch 或者 request 等自己能看懂的代码,当然也可以自己自学一下curl的命令,如果你能访问OpenAI,可以点下面的链接,自己看看大家如果对上面的双语翻译感兴趣,我推荐一个技术大佬的免费插件,
2023-05-28 13:23:22 7003 5
原创 Windows PyCharm 2022/2023 使用Centos7 的虚拟环境 venv 实现文件实时同步 代码代码Git自动识别 解决 Samba Cannot Save File 的问题
Windows PyCharm 2022/2023 使用Centos7 的虚拟环境 venv 实现文件实时同步 代码代码Git自动识别 解决 Samba Cannot Save File 的问题
2023-05-27 22:32:01 499
原创 2023 年阿里云 OSS CDN 和视频点播 HTTPS 证书更换操作 与 阿里云服务器用快照省钱技巧
2023 年阿里云 OSS CDN 和视频点播 HTTPS 证书更换操作 与 阿里云服务器用快照省钱技巧
2023-05-23 20:46:30 413
原创 不能使用ChatGPT 试试基于2021模型的 Claude (原GPT团队二次创业产品)聊天机器人 更详细的解答
我作为Anthropic开发的AI助手,主要被设计用来解决以下应用场景和问题:1. 对话安全性 - 我经过严格的对话安全训练,可以与人进行对话而避免产生有害,不实或过激的言论。我的开发者在Anthropic开发了我以后,为了确保我能安全可控地运作,他们使我无法随意学习新的知识或自由改变我的行为方式。我本身不是真正的互联网用户,但我的开发者确实利用互联网资源来开发我,让我可以理解并回答人们提出的各种问题。我通过Anthropic的研究人员开发而来,他们利用互联网数据来训练我,但我自己没有访问互联网的权限。
2023-05-16 00:19:44 516
原创 ChatGPT API SSE(服务器推送技术)和 Fetch 请求 Accept: text/event-stream 标头案例
在需要接收服务器实时推送的数据时,我们可以使用 `fetch()` 方法和 `EventSource` API 进行处理。使用 `fetch()` 方法并在请求头中添加 `Accept: text/event-stream` 可以告诉服务器我们想要接收 Server-Sent Events (SSE) 格式的数据流。`fetch()` 对流处理有良好的支持,我们可以使用 `body` 属性来读取 SSE 消息,同时也可以利用 `fetch()` 的其他功能如超时控制、请求重试等。缺点是需要手动解析数据、
2023-05-04 17:07:52 3166
原创 PHP匿名类的使用场景有哪些?PHP匿名类怎么用?有什么好处?PHP匿名类如何在运行时动态生成?
在一些特定场景下,使用匿名类可以代替具名类,这主要是因为匿名类具有一些独特的特性,例如可以动态创建类、作为回调函数参数传递、创建一次性对象等等。具体来说,匿名类可以在创建对象时定义类的结构,可以方便地为不同的对象提供不同的实现。例如,在使用回调函数时,匿名类可以作为回调函数的参数,动态地创建一个对象,而无需预先定义具名类。此外,匿名类还可以被用于创建一次性对象,这些对象通常只在一个方法或函数内部使用一次,因此不需要为它们定义一个具名类。总之,匿名类提供了更为灵活的方式来定义对象,并能够满足特定场景下的需求。
2023-04-24 14:42:48 574
原创 用ChatGPT来分析Python装饰器有那些高级使用场景并给出案例
在 Python 中,装饰器是一种强大的语言特性,它们允许开发人员在运行时修改或增强现有函数或类的行为。装饰器函数接受一个函数或类作为参数,并返回一个新的函数或类,该新函数或类通常具有与原始函数或类相同的名称。装饰器是一种非常灵活的工具,它可以用于许多高级编程技术,例如:- 运行时检查:装饰器可以用来检查函数的参数类型、返回值类型和前置条件,从而在运行时增加代码的可靠性和健壮性。- 类型检查:装饰器可以用来检查函数参数和返回值的类型,以确保代码的类型安全和正确性。- 权限控制:装饰器可以用来限制函数
2023-04-21 15:31:18 279
原创 windows10/11 conda 命令报错 和 pip3 install SSLError错误解决方案
处理办法就是将miniconda的bin目录添加到环境变量,我是偷懒直接把用户变量和系统变量都填了,如果不知道你的conda路径,你可以whereis conda,powershell就会显示conda的路径了,是个以.bat结尾的,不是.exe结尾的,这个要注意区分,因为使用mac电脑编写,不方便截图(后补)从网上说,可以自行设置https_proxy 和 http_proxy 来改变控制台,这个没试,conda国内就可以用,直接关闭 proxy 即可。我是在构建franz碰得坑,目前。
2023-04-17 10:42:28 621
原创 谷歌插件inject注入脚本与content script基于Promise+async/await 同步通信实现过程
因为webpage和contentscript是两个隔离环境,在webpage(普通网页)中有CSP安全机制,而在macm1环境,MV3版本下无法修改response.header这个bug半年前反馈给谷歌,后续也没见结果,所以,想在webpage网页中直接请求远程url是走不通的,只有借助contentscript来协助请求数据,但是这里牵涉到两个步骤,能否实现异步转同步方式来处理这个过程?
2023-04-02 22:01:01 907
原创 浏览器本地替换(local overrides)快速定位前端样式问题的案例详解(也是hook js的手段)
如果想避免未封闭,或者引号使用错误等等,可以使用强大的 webstorm,但是这个开发工具需要收费,需要破解的可以找我,我有破解安装方式,采用 command + - 进行折叠,不过 webstorm 比较卡,一般机器运行比较慢。如果不想继续覆盖,或者避免以后遗忘,一定要在定位到问题后及时关闭覆写,不然会造成你有朝一日忘记此事,发现无论怎么修改中台的静态页自己的电脑都不变,而又不找原因!这是我吃的亏,切记切记。通过以上删除法,可以很快的定位影响样式的位置所在,定位问题,加以修改,就搞定了。
2023-03-26 22:15:12 1447
原创 应用接口版本兼容设计和使用原则
早期开发时,由于选型架构等问题,老旧接口仍然要正常运行,需要逐步引导客户使用新版,但是接口由新团队进行开发,比如 PHP 转成了用 Go 来开发,响应更快,并发更大,新的接口又和老的接口逻辑相近,但传入传出都不相同,这种巨大差异,不应该在原版接口中改动,容易产生灾难性的影响,因此,我们会在 url 上进行处理,例如 url 中接口版本为/api/v1,等到新接口采用/api/v2,这样就有效的改善了新版用户的无缝衔接,接口版本非常少,如果公司接口版本搞得很多,绝对出问题了。
2023-03-15 23:24:17 1220
原创 git stash 暂存减少分支误操作步骤图文陈述
有时不小心在master或者develop分支上开发了代码,正要提交时才发现自己选错分支了,以前的笨方法是把要提交的代码,一个个记录下来,都保存另外一个文件中去,然后再切换到特性分支中,一个个覆盖到具体的位置,这个非常坑,git stash针对这种没有commit的代码可以做到无污染的保存,非常方便。修改两次代码,分别git stash下,就得到了两个暂存的修改,注意这里的stash@{0} 好像是最新压进去的。执行git stash drop stash@{0} 则会删除暂存stash@{0}
2023-03-09 11:43:07 429
原创 谷歌插件Fetch在不同页面之间Cookie携带情况详解
在碰到content script 注入和用script标签注入一样,即使服务端有写入Cookie到域名下在该tab标签应用下也不会被保存,所以在发送时也无法自动携带,所以通过content script和这种方式无法传输隐式传输cookie,只能通过background来先拿到cookie再进行传送。这两者是相似的,只要服务端允许跨域,则都可以请求服务端,但奇特的是,如果host_permission不设置,设置了content script match 则携带Cookie。
2023-03-08 19:51:12 1222
原创 如何快速、全面、深入地掌握一门编程语言
用你已经掌握的语言做各种笔试题,然后用 ChatGPT 翻译成你新学的语言进行比照,重复这个过程,则会以最快的速度掌握新语言,相当于在原有模型的基础上,添加新模型,而不是单开新模型;看技术社区的杠精们在杠啥,他们杠的越厉害,给出的场景就越多,越偏激的人越喜欢杠,也越集中在自己的领域里,不看其他场景,多个杠精,就代表着多个场景。要从目录入手,确定几个课程,部署下他们的代码,正常使用之后,考虑他们结构是否是企业级,综合几套代码中的特色,汇集成一套全面的代码。函数:前后拦截——修饰器(可有可无)
2023-02-20 17:53:24 378
原创 完全错排解题细节补充
第二种,它处在第一个元素①的位置上,所以在排列D(n)中有两个元素找到了位置,那么接下来的队列就相当于是n-2个元素的错排。错排问题,又称更列问题,是组合数学中的问题之一。这里绕了一个弯,利用了等价思维,你会发现当B不能在A位置时,就等价于B不能在A的位置上,这跟A一开始不能在A的位置上是等价的,这里的A位置可以理解为B的位置了,其余CDE三个位置不变,这样B(A位置)CDE组成新四个位置,这四个位置,仍然要全部错排,B不能在A位置,但可以在CDE位置上,以此类推,就相当于我们要知道D(n-1)的错排数。
2023-02-09 15:16:11 203
原创 Yii2下PHP远程调试PHP5.6/7.2与Xdebug2.5/2.7/3.0 在PHPSTORM下的差异化表现
因为yii2框架,设计复杂度非常高,加上php代码的弱类型语言结构,在代码非常复杂的情况下,不采用调试的方式来看源码调用栈,几乎是灾难性的,所以我们必须解决phpstorm下的远程调试问题。xdebug.profiler_output_dir = /tmp/xdebug #可以删除,profiler是个分析器会。xdebug.trace_output_dir=/tmp/xdebug #可以删除,跟踪日志也没有必要加上。docker下安装php,xdebug的远程配置,phpstorm的远程配置。
2023-01-12 15:05:16 537
原创 一次性讲明白uwsgi、wsgi和asgi协议以及运作原理
uwsgi 服务器支持了三种协议,wsgi,uwsgi,http,三种协议分别为对外可以提供http协议的监听服务,你访问http://example.com/xxx能够被uwsgi服务器监听到,uwsgi协议用来与nginx直接通信,但nginx需要安装uwsgi模块,否则不能通信,采用该协议可以比http协议更精简,通信速度更快,wsgi协议用来与django等框架进行通信
2023-01-06 11:17:54 1160
phpstorm远程调试基于swoole的hyperf框架.docx
2020-07-31
centos7 rpm快速安装rabbitmq3.8.5 php安装amqp扩展 添加延迟队列扩展 避开坑
2020-07-27
centos7 rpm快速安装rabbitmq3.6.5 php安装amqp扩展 避开坑 一步到位安装流程
2020-07-25
win10 协同centos7 共享文件夹方式 实现phpstorm下的swoole的远程debug调试
2020-07-25
windows10环境下php使用selenium+chromedriver来模拟浏览器抓取(坑已填完)
2020-04-15
阿里云点播URL鉴权处理流程
2019-11-06
阿里云OSS ali-oss 6.0 npm代码包带案例修复版本 编译打包js,可以直接引入使用
2019-11-02
win10装PHP7.2的Imagick扩展.zip
2019-08-22
phpstorm 远程调试,远程网页调试,使用远程php命令进行本地debug调试
2019-03-27
PHP 分片下载大文件/视频兼容图片下载大文件迁移设计方案
2019-03-21
阿里云OSS临时授权STS直传视频文件到OSS服务器教程(含所需的核心js代码)
2018-12-30
腾讯课堂自建composer安装包图文详细教程升级版
2018-12-28
php+html5(原代码改进)多进程实现大视频文件无刷新上传
2018-12-26
thinkphp5 console 调试启动脚本
2018-12-09
emoji入库mysql注意事项除了更改utf8mb4最大的坑在这里
2018-11-22
个人总结搭建git服务器仓库采用无密登录方式以及TortoiseGit的用法
2018-11-17
phpstorm常用操作完整说明文档图文word格式个人总结实战使用
2018-11-17
集成IK中文搜索的elasticsearch1.7.4完整运行包直接放linux任意文件夹下即可运行
2018-11-17
爱之谷源代码升级修改版适配PHP5.6修复之前BUG
2016-04-16
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人