自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(46)
  • 资源 (1)
  • 收藏
  • 关注

原创 文件下载之MIME及content-disposition

1、MIME:Multipurpose Internet Mail Extensions。MIME协议指示 MIME 用户代理如何处理文件。以前,电子邮件只能处理文本格式的邮件,现在已经扩展到各类静态图像、声音、动画等形式的数据。2、Content-Type:在HTTP请求中,在请求报文或者响应报文中,会增加资源类型(MIME),用Content-Type字段来指定,用于帮助我们处理所请求的资源,对于能直接显示的资源会直接显示,否则会通过指定的方式进行处理。在HTML的form提交生成的post请求

2022-03-29 09:15:19 958

原创 Docker之MySql

在日常的工作中,经常会需要将数据存在服务器。经常用到的数据库是mysql,如果将数据库安装在服务器中,会使得环境搭建比较麻烦,而且如果遇到切换服务器的场景,就需要再一次进行安装,非常不便。基于此,使用docker进行mysql环境的搭建成为了日常的必选。具体步骤如下:(docker基本知识可自行查找)1、搜集镜像源,在本地下载mysql的docker镜像;2、需要在本地创建一些目录,进行数据的保存,避免docker重启的时候数据丢失;本次示例创建的目录为:/home/data_space/mysql

2022-03-29 09:10:09 1022

原创 网络服务与安全之openSSL制作CA证书

在网络中,数据在服务器端与客户端之间传递,为了保证数据安全,需要将数据进行加密后再传输,这样即使数据被窃取,窃听者也无法知道数据的真实内容。当前的网络服务中,使用TLS来加密。应用层在TLS之上,使得在数据传到应用层之前就已经完成了加密和解密的过程。相关概念:SSL(securesockets layer):安全套接字TLS(transport layer security):安全传输层协议CA(certificate authority):认证中心:CSR(certificate .

2021-12-01 12:16:17 2176

原创 typescript高级语法——拒绝anyScript

typescript高级语法介绍-拒绝anyScript:1、泛型:泛型允许程序员在强类型程序设计语言中编写代码时,使用一些以后才指定的类型,在实例化时作为参数指明这些类型。泛型通过一对尖括号来表示( <> ),尖括号内的字符被称为 类型变量 ,这个变量用来表示类型。2、高级类型:交叉类型(&):多个类型合并成一个类型联合类型(&):定义的类型为多个类型中的任意一个类别别名(type):自定义的类型(可以是交叉或者联合类型)使用过多时,给这种类型声明一个别名。类型别名与

2021-11-22 15:47:10 794

原创 nodemon监控文件变化重启

nodemon1、作用:在开发nojs相关项目的时候,监控修改的文件,重新启动相关项目。可以更好的帮助开发,使得修改可以在项目中及时得到反应。2、使用方式:命令行 nodemon [options] [script] [args],可以使用nodemon -h查看具体项如果省略了script,则会执行package.json的’main‘属性下的文件如果省略了配置文件,则默认的监控文件为:.js,.mjs,.json等3、配置与使用,默认使用nodemon.json文件一个配置实例如下:no

2021-09-06 17:20:28 638

原创 防抖与节流

1、防抖:目的:对于短时间内连续触发的事件,防抖的含义就是让某个时间期限(如上面的1000毫秒)内,事件处理函数只执行一次【执行最后一次】。流程:(1)事件触发—>设定计时器,计时结束后执行操作;(2)在计时周期内,如果再次触发,清除已经开始的计时,重新计时;注意:需要设定时间段,避免一直重新触发,动作一直没法执行。核心点:在计时周期内,再次触发后,需要重置计时器;实现要点:使用闭包的方式,保存计时状态,避免全局污染;2、节流:目的:对于短时间内连续触发的事件,节流

2021-08-04 09:48:55 81

原创 数据库更新或者插入报错:Column count doesn‘t match value count

可以参考链接:https://www.cnblogs.com/juanxincai/p/12302457.html顺便补充一条:是否有更新或者插入“触发器”,如果有了,那么就会出现大问题。

2021-04-15 16:27:47 398

原创 redis安装为服务,设置开机自启动的问题

问题:执行命令update-rc.d 后出现以下报错:insserv: Script redis_init is broken: incomplete LSB comment.insserv: missing `Required-Start:' entry: please add even if empty.insserv: missing `Required-Stop:' entry: please add even if empty.解决方案:在### BEGIN INI...

2021-04-01 09:17:54 458

原创 linux进程管理

1、根据端口,查看进程pid。lsof -i:端口号2、根据pid,查看进程启动信息ps -ef | grep pid3、根据进程号,查看端口netstat -tunlp | grep pid

2021-03-22 16:05:23 54

原创 nginx入门基础

Nginx (engine x): 一款自由的、开源的、高性能的HTTP服务器和反向代理服务器;同时也是一个IMAP、POP3、SMTP代理服务器;三个核心功能:反向代理、负载均衡和静态服务器1、基本命令:nginx -s reload # 重新载入配置文件nginx -s reopen # 重启 Nginxnginx -s stop # 强制停止 Nginx,如果有未处理的数据,丢弃nginx -s quit ...

2021-03-18 11:12:32 70

原创 Redis入门必备知识

redis:1、介绍:开源的使用 ANSI C 语言编写、遵守 BSD 协议、支持网络、可基于内存、分布式、可选持久性的键值对(Key-Value)存储数据库,并提供多种语言的 API。Redis 通常被称为数据结构服务器,因为值(value)可以是字符串(String)、哈希(Hash)、列表(list)、集合(sets)和有序集合(sorted sets)等类型。2、特点:Redis支持数据的持久化,可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使用。Redis不仅仅支持简单的ke

2021-03-18 10:05:21 90 1

原创 webpack插件原理

loader:一个转换器,将A文件进行编译成B文件插件:专注于处理webpack在编译过程中的某个特定的任务的功能模块,丰富了webpack本身。基于事件机制工作,监听webpack打包过程中的某些节点。特点:(1)一个独立的模块;(2)对外暴露一个js函数(3)函数的原型上定义了一个注入compiler对象的apply方法。(4)apply函数中需要有通过compiler对象挂载的webpack事件钩子,钩子的回调中能拿到当前编译的compilation对象,如果是异步编译...

2021-01-05 11:15:28 140

原创 自我成长学习

必须要面对的三大问题:第一:能否承担起家庭与责任?职业到底该如何发展,才能确保让你支撑整个家庭的负担? 如果职场上的成长无法实现倍增,甚至还在以某种形式倒退,那么,以后的职业发展就会面临更多的压力。而这种压力,更多的时候,会使你没有余力去谋求更好的发展。要想行动,就趁早。千万不要在这个时候享受安逸。否则,你的后半生都将永远在碌碌无为中“被安逸”下去。第二:你的能力与年龄是否匹配?不匹配的影响因素:1、频繁跳槽;2、在一个方向上,只有第一年在成长,以后都在做重复劳动,原地踏步。如果能力与年龄不

2020-10-28 09:30:32 229

原创 vue中,element-ui的table实现拖拽,同时踩一个深坑:拖拽的时候,数据和页面显示的不一样。

拖拽的实现:1、设置table的ref属性,用于找到该组件;同时请设置key属性,负责会出现很复杂的问题。<el-table ref="practice" :key="keys" :data="myArray"> <el-table-column label="name" prop="name" /></el-table>2、下载sortablejs包,并导入,import Sortable from 'sortablejs'3、编写拖拽初始化函数(需要在.

2020-10-17 11:45:44 971

原创 代码架构的学习

一、为什么要有代码架构?1、提高代码的可阅读性和可维护性;2、降低代码的腐化速度;【不同背景不同能力的开发人员的进场和离场,代码的可读性和可维护性都会渐渐的变差,导致代码被腐化】一般可通过一系列的,比如代码质量扫描,代码review等手段降低代码的腐化速度,还会在在需求的开发过程中安排一定资源的代码重构的任务,去不断重构腐化的代码。一个好的代码架构,也会在一定程度上制约开发人员“生产”腐化代码的可能,从而降低了代码的腐化速度。二、一份好的代码: 首先,要有很好的可读性; 其次,能...

2020-10-15 16:34:25 184

原创 数据库同时更新多个数据出现主键冲突

在有序的数据库列表中,经常会使用到主键作为排序的某列。有时候,在删除或者插入数据的时候,需要将所有相关的数据进行更新。如果是简单的使用update函数,会出现冲突,如在某个数据库Info中,存储的数据为: Id Value 1 10 3 20 5 30 2 40 4 5

2020-08-17 19:16:29 1420

原创 docker命令全集

容器生命周期:docker run :创建一个新的容器并运行一个命令语法:docker run [OPTIONS] IMAGE [COMMAND] [ARG...]OPTIONS说明:-a stdin:指定标准输入输出内容类型,可选 STDIN/STDOUT/STDERR 三项;-d:后台运行容器,并返回容器ID;-i:以交互模式运行容器,通常与 -t 同时使用;-P:随机端口映射,容器内部端口随机映射到主机的端口-p:指定端口映射,格式为:主机(宿主)端口:容...

2020-07-17 14:19:43 109

原创 Linux设定定期执行任务的方法

一、cron服务相关命令:service cron start //启动服务service cron stop //关闭服务service cron restart//重启服务service cron reload //重新载入配置service cron status //查看服务状态二、定时任务的设定:crontab命令用于安装、删除或者列出用于驱动cron后台进程的表格。用户把需要执行的命令序列放到crontab文件中以获得执行...

2020-07-15 15:46:36 215

原创 Django

Django新建项目:django-admin.py startproject project_name新建apppythonmanage.pystartappapp_name或django-admin.pystartappapp_name使用开发服务器pythonmanage.pyrunserver#当提示端口被占用的时候,可以用其它端口:pythonmanage.pyrunserver8001当然也可以kill掉占用端口的进程,具体后面有讲...

2020-05-25 09:18:32 152

原创 JSON.parse解析字符串中含有引号报错的解决方案

问题说明:一个普通的对象,如果含有引号,使用JSON.parse将其转换为字符串,然后保存在数据库中,可以顺利保存;但是下次取出来解析的时候,使用JSON.stringify解析会报错。问题分析:在保存的时候,确实可以成功保存,这是因为JSON.stringify会将其中的双引号进行转义处理,所以保存到数据库中看到的是正确的!但是在进行字符串解析的时候,因为字符串中没有转义字符,所以就...

2019-12-26 20:14:53 5602

原创 IE支持提醒

在声明中<head></head>之间加上下边的内容:<!--[ifIE]><style>.isIE{height:100%;width:100%;text-align:center;padding-top:200...

2019-10-23 09:09:03 130

原创 linux系统(Ubuntu)修改mysql数据存储路径

背景:mysql安装后默认的数据存储路径在/var/lib/mysql下,因为/var/lib划分的空间有限,当mysql中的数据太多时无法满足需求,所以需要将存储路径修改到大分区,具体修改操作如下:  这里以将存储路径改到/home/mysql目录下为例。(1)关停mysql服务:service mysql stop(2)复制原有数据到新目录下:cp -a /var/lib/mysq...

2019-10-17 14:30:37 708

原创 Vue项目中引入tinymce富文本编辑器

主要是参考:https://www.cnblogs.com/wisewrong/p/8985471.html其中,会遇到一些问题:(1)文中说的把node_modules 中的 tinymce/skins 目录拷贝到static目录下,如果实践过,会发现没法出来文本编辑框,主要是是由于找不到该static。正确的做法是将其拷贝到public目录下,这样是可以发现的。(2)初始化中,...

2019-09-26 16:10:21 544 1

原创 名将之路

1、理论;学习经典的军事理论,熟读兵书;2、实战;理论是经验总结,要在实战中根据情况和现状锻炼;实战也能够让人见识战场的惨烈,知道所谓打仗就是以性命相博,这样才会明白什么是战场,什么是实战;(没有实战只有理论的就是纸上谈兵);3、冷酷无情,要心如铁石、冷酷无情、军令如山(对敌人冷酷,对百姓要仁)【仁不带兵,义不行贾】;在战场上学会冷酷,亲眼目睹战争的残酷,在残酷的环境中毕业;4、理智;...

2019-09-10 11:18:47 178

原创 forever输出显示配置(主要是在使用forever list 的时候,来显示当前启动的程序相关信息)

forever columns add/rm <options>其中,options包括:id,uid,logfile,dir,pid,uptime,script,forever

2019-07-25 09:41:54 663

原创 合理的进行目标设定

目标最大的价值,并不在于目标本身,而在于目标给你提供了一个将技能、知识、资源综合运用的“靶心”。无论目标是否“正确”,是否被实现了,挑战目标后你的综合能力都会大大提升!高质量目标的四个特征:1、自主设定目标设置理论的前提假设是要对目标作出承诺,也就是说,目标被制定后,你不会给自己留下降低目标,甚至放弃目标的空间。自我决定理论最新的成果自我一致性(self-concor...

2019-04-19 13:04:14 453

原创 jquery获取input类型的输入值之属性选择(与或非)

1、使用属性筛选使用属性筛选后得到的是一个数组,所以想找到相对应的值,需要再次获取,使用get(index)或者[index]都可以,最后就刻获得想要的值了。例如获取CheckBox$("input[name='test']").get(0).checked获取text.的值方法为:$("input[name='test']").get(0).value,2、用id筛选,如获取...

2019-04-18 23:20:54 787

原创 淘宝镜像网址

https://npm.taobao.org/mirrors

2019-04-06 11:49:18 3157

原创 Linux安装forever后无法识别

问题:由于nodejs是下载包后解压然后软链接到环境变量的,所以全局安装了forever包后一直没有反应,linux中按tab键也不能补齐;提示的错误一直都是 forever:未找到命令解决方法:首先,去node解压包后的/bin下查看是否有forever,if so,使用./forever 看是否可以识别forever。记得一定要加上相对路劲(./),否则真的无法识别。然后建立...

2019-04-03 09:49:44 1588

原创 在Linux服务器上成功安装nodejs

1、官网下载后linux安装包后直接解压;2、解压命令 tar xf 压缩文件名称3、建立软链接到环境变量(查看环境变量指令:echo $PATH)命令:ln -s 源文件地址 目标文件地址(一般是:/usr/bin 或者/usr/local/bin)...

2019-04-03 09:42:54 132

原创 ubuntu安装mysql及解决远程无法访问

1、使用命令sudoapt-get install mysql;(如果无法安装,试试sudo apt-get install mysql-server安装mysql服务(mysql-client安装客户服务))卸载命令:sudo apt-get remove mysql-serversudo apt-get autoremove mysql-server2、安装过程中会有提示...

2019-04-01 20:24:07 1565

原创 mysql 出错的问题

使用命令service mysql start 来启动服务的时候,一直发现报错,如下ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock网上也找了好多办法,都不行,最后查看了下配置文件,然后灵机一动执行了:mysqld,然后就可以了,好神...

2019-03-16 13:20:08 90

原创 Electron之入门

一、首先应该明白两个概念,主进程和渲染进程,         主进程相当于是一个框架,而渲染进程则是往这个框架里填充的东西;在electron的应用中,主进程用于构建应用程序的框架,包括形成的桌面应用程序的边框、菜单、图标等等;而渲染进程则是各个网页,这些网页填充在主进程构建的框架中,组成了我们的实际应用程序;二、然后使用npm安装electron下一个比较简单的代码跑跑看一下,其中官...

2019-02-19 21:14:20 124

原创 几句话看懂CommonJs和AMD标准

ECMAScript 规范是为了统一Javascript;一、CommonJS(1)加载方式为同步加载;(2)CommonJS统一了Javascript在浏览器之外的实现;(3)CommonJS 规范包括了模块(modules)、包(packages)、系统(system)、控制台(console)、二进制(binary)、编码(encodings)、文件系统(filesystem...

2019-02-18 14:07:11 273

转载 git fetch 和 git pull 的区别

Git中从远程的分支获取最新的版本到本地有这样2个命令:1. git fetch:相当于是从远程获取最新版本到本地,不会自动mergegit fetch origin mastergit log -p master..origin/mastergit merge origin/master以上命令的含义:首先从远程的origin的master主分支下载最新的版本到origi...

2018-11-10 11:54:20 90

原创 使用nodejs作为服务端,实现文件上传

由于笔者要实现一个图片上传功能,在百度的帮助下还这折腾了2天,在这里写下自己的经验,供有需要的看看:1、首先,需要安装multiparty包,网上还有别的,尝试了不少,最后建议还是使用这个好点。前端,在表单form下加上:&lt;input type="file" class="file"&gt;注意要给form赋action属性,enctype要改为:multipart/form...

2018-11-05 19:58:05 944

原创 django在debug设为false的时候,使用admin功能时, 一部分 css和js文件无法加载

第一,要明白,在开发django的时候,如果设置了 DEBUG = True,django便会自动帮我们对静态文件进行路由;但是当我们设置DEBUG = False后,这一功能便没有了,因此静态文件就会出现加载失败的情况,想要让静态文件正常显示,就需要手动配置静态文件服务了。第二,配置:在settings文件中配置:STATIC_URL = '/static/'STATICFIL...

2018-11-01 11:34:56 907

原创 git log 查找某天之后的提交

在使用git log显示某天之后的提交时,一定要把时间写全,如:--after="2018-10-18 00:00:00"只有写成这样,才可以准确输出当前所有提交的;如果写成:--after="2018-10-18"后边的 时、分、秒 就会默认为本地当前的时间,在该时间之前的都不会显示。虽然是同一天,但是时间比本地时间小。...

2018-10-22 17:01:57 3323 1

转载 mysql8 :客户端连接caching-sha2-password问题

处理:    ALTER USER 'root'@'localhost' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER; #修改加密规则    ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password'; #更新一下用户的密码    FL...

2018-08-01 15:55:53 189

转载 C语言文件

C语言文件打开模式总结    在C语言的文件操作语法中,打开文件文件有以下12种模式,如下图:打开模式 只可以读  只可以写 读写兼备文本模式rwar+w+a+二进制模式rbw

2017-12-14 11:10:29 171

logseq工具最新发布版本

logseq工具最新发布版本

2023-04-03

空空如也

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

TA关注的人

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