目录

工欲善其事

实践出真知

活跃标签: linux java mysql 待分类 js springboot win10 电路 vue macOS nginx esp32 git docker windows idea maven esp8266 python Arduino

存档:

[ 脚本 ] ssh 实现自动登录

#!/bin/expect echo "Hello World !" set timeout 30 spawn ssh 112.126.100.212 expect "password:" send "Yingfeng!@#azq%&" spawn sleep 10 interact exit

[ Java ] 早年收藏的图片

springboot的一些例子.zip

[ Vert.x ] 一个非常先进的脚手架可惜没火起来

该文章已经加密。

[ Spring ] 早年收藏的图解

1:首先方法进入:doDispatch 2:checkMultipart() 判断当前请求是否有文件 3:getHandler() :通过HandleMapping去找一个Controller对象 3.1:扩展点1:HandleMapping 3.2: Spring boot 扩展Spring mvc 其中就扩展了 HandleMapping 去解析静态资源 4: getHandlerAdapter(): 根据你controller的类型去找一个适配器 4.1: 因为Controller有很多种不同的注册方式 所以需要不同的适配器 4.2:扩展点2:HandlerAdapter 5:handle() : 执行Controller逻辑并且进行视图裁决(判断是要重定向还是转发还是响应页面) 5.1invokeForRequest():执行方法的全部逻辑 5.2:首先给参数赋值 5.2.1:参数赋值的扩展点:HandlerMethodArgumentResolver 5.3:调用invoke()指定方法 6:setResponseStatus()设置ResponseStatus响应状态码 对....

[ Linux ] 最经典的一幅Linux内核说明

Linux驱动实践带你一步一步编译内核驱动程序.pdf

[ Mysql ] 保存的私活图片

该文章已经加密。

[ Nginx ] 配置相关说明

Nginx 配置其实很简单,只要掌握些规律和记住配置就行。我也是在犀利胡同中摸到了门路。 看过上面的图大体可以知道结构,自己的配置需要放入 server 中,我们也可以将它单独抽出一个文件来。 在nginx.conf 的 http 下面有这样一句话 include /etc/nginx/conf.d/*.conf; 导入所有conf.d下的文件,可以通过复制 配置文件修改端口或资源的监听路径来实现快速配置。 配置文件 主配置文件 nginx.conf 网站文件 snapdrop.conf 下面详细说明 2、编译与安装 安装环境准备: (1)linux 内核2.6及以上版本: 只有2.6之后才支持epool ,在此之前使用select或pool多路复用的IO模型,无法解决高并发压力的问题。通过命令uname -a 即可查看。 #查看 linux 内核 uname -a (2)GCC编译器 GCC(GNU Compiler Collection)可用来编译C语言程序。Nginx不会直接提供二进制可执行程序,只能下载源码进行编译。 (3)PCRE库 PCRE(Perl Compatible.....

[ SSH ] 实现自动登录

在没什么好用的终端时SSH免密登陆就非常重要了 进入控制台,生成RSA密钥 ssh-keygen -t rsa 将生成的公钥上传到服务器 scp id_rsa.pub root@8.8.8.8:/root/id_rsa.pub 安装openssh-server yum install openssh-server 或 apt install openssh-server 导入生成的公钥到授权文件 需要进入.ssh 文件夹下 cat /root/id_rsa.pub >> authorized_keys 完成 退出进一下试试

[ 服务 ] Linux环境关闭开机自启动服务

查看哪些是开机自启动服务 可以通过chkconfig 命令查看 [root@linux30 ~]# chkconfig 注:该输出结果只显示 SysV 服务,并不包含 原生 systemd 服务。SysV 配置数据 可能被原生 systemd 配置覆盖。 要列出 systemd 服务,请执行 'systemctl list-unit-files'。 查看在具体 target 启用的服务请执行 'systemctl list-dependencies [target]'。 netconsole 0:关 1:关 2:关 3:关 4:关 5:关 6:关 network 0:关 1:关 2:开 3:开 4:开 5:开 6:关 [root@linux30 ~]# 如果是原生 systemd 服务,则可以使用** **systemctl list-unit-files命令查看 [root@linux30 tidb]# systemctl list-unit-files UNIT FILE STATE proc-sys-fs-binfmt_misc.automount static dev-hug.....

[ 进程 ] 理解Linux进程

进程 程序是指储存在外部存储(如硬盘)的一个可执行文件, 而进程是指处于执行期间的程序, 进程包括 代码段(text section) 和 数据段(data section), 除了代码段和数据段外, 进程一般还包含打开的文件, 要处理的信号和CPU上下文等等. 进程描述符 Linux进程使用 struct task_struct 来描述(include/linux/sched.h), 如下: struct task_struct { /* * offsets of these are hardcoded elsewhere - touch with care / volatile long state; / -1 unrunnable, 0 runnable, >0 stopped / unsigned long flags; / per process flags, defined below / int sigpending; mm_segment_t addr_limit; / thread address space: 0-0xBFFFFFFF for us....

webpack 打包

(18条消息) webpack打包某个文件夹下的所有js文件方法_webpack 打包一个文件下所有文件_zesii的博客-CSDN博客

[ ESP ] 聊一聊万恶的esp家族中ESP-12F的管脚定义

平常DIY中,很多人都在使用ESP kits,常见的是开发板 ESP-8266,ESP32,NODEMCU等。 如果大家用的都很多,估计不会翻车。但我在画板子的时候,还是出了问题。经过多次验证,终于明白了官方所谓的管脚定义。所以,这篇文章就当个笔记,记录下一些心得体会。 0x01:首先,管脚定义: 来,一个一个说: 这里先说一个概念:pin,pin指的是芯片管脚号,不是名字,是芯片管脚脚序。在ESP-12F官方定义中,如下图。芯片右侧最上面那个脚是pin 1,然后往下依次到PIN8,然后最下面一排不算!!!不算!!!跳过!!从最左侧的最下面开始算,这个是PIN9!!依次往上累加,左侧最上为PIN16。 好了。了解了Pin,我们再来看这一张图: 这张图里面的英文标识及其GPIO标识是芯片管脚的功能名。其与管脚序号的对应关系及管脚功能是: 好的,接下来,我们讨论下在Arduino IDE中如何使用这些对应的IO口。 因为大家都用成熟的开发板,很少用最小电路来DIY,写程序。所以大家应该对这张图特别熟悉: 大家更多的是在Arduino IDE中用D0,D1,D2等管脚名字来使用它,比如:pi....

[ 前端打包 ] vite和webpack的区别

Webpack 的第一次发布是在 2013 年发布,长久以来是主流的前端打包工具。Vite 的第一次发布是在 2021 年,是近两年来前端打包工具中的后起之秀,重点解决 Webpack 在开发阶段的开发痛点。截止 2022.6,Webpack 的 Github Star 数 61.2k,Vite 的 Github Star 数是 42.7k。虽然 Vite 刚刚发布 2 年,但是热度可见一斑。 vite和webpack的区别 Webpack Webpack 是一个基于打包器的构建工具,同一个入口文件的代码会打包成一个 Bundle 文件。Webpack 长期来的一个痛点是对于大规模应用的应用启动和热更新速度很慢。 当文件发生变动时,整个 JavaScript Bundle 文件会被 Webpack 重新构建,这也是为什么使用 Webpack 的大规模应用在应用启动和热更新时速度很慢的原因。这给进行大规模 JavaScript 应用的开发者造成了很差的开发体验。 Webpack 如何工作? Webpack 打包过程: 从一个入口文件开始,基于代码文件中的所有 import,export,....

[ Git ] 迁移后报权限错误的解决方法

从别地考项目把git记录也拷回来了,不过爆出权限问题↓ 解决方法1 删掉项目重新down一份(可能解决不了这个问题) 解决方法2(临时) 临时的解决方法就是按照提示, 在 git bash 中输入git config --global --add safe.directory D:/git/rt-thread/rt-thread_pm2,但是这只能解决当前的 git 仓库,其他的git 仓库,都要这么做,并且 git config -l,会发现一大串的这些操作,如果你是使用idea的话它会直接给你显示出需要执行的命令(推荐👍) 解决方法3 其实这个是git 仓库 用户名问题,如之前是 Administrator,现在改为了 admin,之前的目录所有者需要改为现在的用户,所以解决这种问题的根本方法就是【更改git 仓库文件夹的所有者】,改为当前的windows 登录的用户,(啰嗦费劲) 修改方法略! 总结 如果你的代码都提了最方便最稳妥最快捷的方法肯定是方法1,删掉重新down一份。可以解决99.99%的问题(剩下的0.01就是运气太差喽) 手动推送Git命令 git init gi....

[ 英语 ] 编程英语

convert 转换 field 字段 account 账号 rule 规则 mechanism 机构 content 内容 announcement 公告 activity 活动 statistics 数据统计 proposal 提案 company 公司 person 人 expert 专家 group 集团 remark 备注 label 标签 advisory 咨询 avatar 头像 profile picture 头像 project 立项 not_approved 未立项 agreement 协议 Field 领域 serializable 序列化 suffix 后缀名 force checkout 强制检出 choose 选择 ellipsis 省略

[ JDK 11] 关于 Java 模块系统

继 2014 年 3 月 Java 8 发布之后,时隔 4 年,2018 年 9 月,Java 11 如期发布,其间间隔了 Java 9 和 Java 10 两个非LTS(Long Term Support)版本。作为最新的LTS版本,相比 Java 8,Java 11 包含了模块系统、改用 G1 作为默认 GC 算法、反应式流 Flow、新版 HttpClient 等诸多特性。作为 JDK 11 升级系列的第一篇,本文将介绍此次升级最重要的特性——模块系统。 1 模块系统简介 如果把 Java 8 比作单体应用,那么引入模块系统之后,从 Java 9 开始,Java 就华丽的转身为微服务。模块系统,项目代号 Jigsaw,最早于 2008 年 8 月提出(比 Martin Fowler 提出微服务还早 6 年),2014 年跟随 Java 9 正式进入开发阶段,最终跟随 Java 9 发布于 2017 年 9 月。 那么什么是模块系统?官方的定义是A uniquely named, reusable group of related packages, as well as reso....

[ 继电器 ] 归档分类

继电器的通常上来说就是使用小电流线圈吸合内部贴片实现开关的效果,如果这样一直吸着继电器和单片机都很累吧。本篇介绍常用的几种继电器。 普通继电器 型号 SRD 如下图:磁铁通电后吸合实现触点短路 自锁继电器 型号 SRE 自锁继电器在通电后将内部铁棒吸合到一处,实现自锁。当对面磁铁吸合过去时实现释放,如图: 固态继电器 型号 SSR 固态继电器(Solid State Relay,缩写SSR),是由***微电子电路,分立电子器件,电力电子功率器件***组成的无触点开关。用隔离器件实现了控制端与负载端的隔离。固态继电器的输入端用微小的控制信号,达到直接驱动大电流负载。 固态继电器按负载类型可分为交流型(AC-SSR)和直流型(DC-SSR)两类,两者不能混用。 ▲ 固态继电器负载类型 常用的交流固态继电器外形及原理如下图所示,从图可看出它是一种四端有源器件,有两个输入控制端和两个输出受控端。它既有放大驱动的作用,又有隔离作用。它采用光电隔离器对输入/输出之间进行电气隔离。在输入端加上直流或脉冲信号,输出端就能从关断状态转变成导通状态(无信号时呈阻断状态),从而控制较大负载。 ▲ 常用固态继....

[ Linux ]终端的.bashrc不自动生效

新装的一个ubuntu 系统每次登陆后都得 手动加载home下的配置文件,时间久了就很烦!.bashrc的加载时靠.profile文件加载的,检查是否确实该文件 在 /etc/profile文件内容如下: # ~/.profile: executed by the command interpreter for login shells. # This file is not read by bash(1), if ~/.bash_profile or ~/.bash_login # exists. # see /usr/share/doc/bash/examples/startup-files for examples. # the files are located in the bash-doc package. # the default umask is set in /etc/profile; for setting the umask # for ssh logins, install and configure the libpam-umask package. #um....

[ macOS ] 给你挖的坑

在使用mac系统时总会遇到一些奇奇怪怪的问题,本篇列举一下并附上解决方法 文件夹混淆成文件 这个比较坑 通过Java不小心将一个mp4文件变成了文件夹,结果文件还在文件夹下面。 解决方法把文件复制出来,再改名 生成一些多余的配置 复制到Windows下时这些缓存文件就显现出来了,如果手都删的话得累死 当你从MAC拷贝一些文件到WINDOWS时,拷贝完成后,在WINDOWS文件夹里你经常会看到很多与文件名同名,但以"._"开头的伴随文件,比如: document1.doc (主文件) .document1.doc (伴随文件) 具体这些”.“开头的伴随文件是怎么回事,请参考What are the weird files that start with … - Apple Community,如果这些主文件后续只在WINDOWS里使用而不会再复制到MAC里使用,你可以将他们的伴随文件删除,否则请保留伴随文件,并在复制到MAC时一并复制过去。这些伴随文件里有MAC系统需要的主文件的描述信息和一些其他信息。 下面是一个我使用的通过WINDOWS命令行批量删除这些文件的比较简单的办法: #......

[ ESP8266 ] ESP-12F的管脚定义

当你在使用一个工具的时候真的了解它吗? 原文 原文1 (16条消息) 安信可ESP-12F(ESP8266)介绍与使用_【ql君】qlexcel的博客-CSDN博客 原文2 聊一聊万恶的esp家族中ESP-12F的管脚定义 - 趣小组 (quwj.com)