自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(96)
  • 资源 (9)
  • 收藏
  • 关注

原创 MySQL日期时间类型 常用的查询、转换、计算

【代码】MySQL日期时间常用查询、转换、计算。

2022-12-01 17:02:53 186

原创 IDEA - 常用Live Templates

idea常用Live Templates:注释、定义变量等

2022-11-29 16:57:20 28

原创 MySQL学习笔记4:排序规则的修改

如果没有设置字段级别的字符集和排序规则,那么默认就取表的,如果表上也没有设置那就默认取schema上的字符集和排序规则,一般来说schema上肯定是配置了的(必须要配置,否则会取默认的字符集和排序规则),实例级别的字符集和排序规则一般用不到。如果要修改排序规则,那么至少要把一个表的所有字段和表的排序规则一起修改,否则就是在。一个表的字段用不一样的字符集和排序规则会导致混乱。然后再修改表的排序规则。

2022-11-02 10:27:00 785

原创 MySQL学习笔记3:排序规则和排序规则的影响

在mysql数据库中,排序规则是依赖字符集编码的,他们在mysql中经常是捆绑的存在。排序规则一般指对字符集中字符串之间的比较、排序制定的规则。一种字符集可以对应多种排序规则,但是一种排序规则只能对应指定的一种字符集,两个不同的字符集不能有相同的排序规则上图中utf8mb4字符集对应多个排序规则。每种字符集都有一个默认的排序规则。比如上图中utf8mb4默认的排序规则就是utf8mb4_general_ci。也就是说,

2022-11-01 15:45:40 263

原创 MySQL学习笔记2:如何避免数据库乱码

客户端发送的sql语句编码字符集。它的作用就是告诉mysql服务器,本地客户端采用了什么编码环境。insert into t values(‘吴’);服务器知道这条sql是以character_set_client指定的字符集所编码的,'吴’将被转化为指定的编码格式,比如它的utf8编码为E590B4,最终以0101…发送到server。:服务器将接收到的character_set_client指定编码的sql语句翻译成character_set_connection指定编码的sql。

2022-10-27 10:18:56 686

原创 MySQL学习笔记1:MySQL字符集和字符集编码

可以理解为某些字符组成的一个集合,集合中由哪些字符组成是由制定这个字符集的协会来决定。如大名鼎鼎的ASCII字符集,含有128个字符,就是一个典型的字符集。:将字符集中的字符映射为特定的字节或者字节序列,它表示的是一种规则。通常特定的字符集采用特定的编码方式。即一种字符集对应一种字符编码,如: ASCII、ISO-8859-1、GB2312、GBK都是表示了字符集又表示了对应的字符编码,但是特例,它对应的字符编码有:UTF-8、UTF-16、UTF-32等,mysql中常用的是UTF-8,其他两种不常用。

2022-10-27 10:13:19 425

原创 Excel生成指定范围内随机数

使用函数:例如:生成1-10范围内整数=RANDBETWEEN(1,10)例如:生成1-10范围内整数,保留2位小数=RANDBETWEEN(100,1000)/100

2022-06-17 11:08:15 1409

原创 PicGo+Gitee(码云)搭建图床

目录安装PicGo安装gitee插件新建gitee(码云)图床库生成token配置PicGo安装PicGo安装包下载地址:https://hub.fastgit.org/Molunerfinn/picgo/releases安装完成后主界面:安装gitee插件在插件设置中搜索:gitee选择gitee-uploader 1.1.2进行安装ps:必须要先安装node.js才能安装插件,没装的自行安装:https://nodejs.org/en/,安装完后重启应用就行新建gitee(码云)图床库

2022-01-13 11:25:55 2684

原创 git撤销已提交的commit

使用命令:git reset --soft HEAD^如果需要连add的文件也一并撤销,使用命令:git reset --hard HEAD^命令解释:HEAD^ 表示上一个版本,即上一次的commit,也可以写成HEAD~1 如果进行两次的commit,想要都撤回,可以使用HEAD~2–soft 不删除工作空间的改动代码 ,撤销commit,不撤销git add file–hard 删除工作空间的改动代码,撤销commit且撤销add修改commit的message:git

2022-01-11 19:08:49 14053

原创 MySQL查询以逗号隔开的字符串

场景举例参数为课程(多个),查询选了这些课程的学生数据库没有分表,只有一个学生表,里面有个字段记录了学生选的所有课程数据如下:现在需要查询,选择了美术、语文、体育这三门课程的学生sql使用正则,多个值模糊匹配select *from studentwhere course regexp '美术|语文|体育';查询结果:这里相当于是逐个like:course like '%美术%' or course like '%语文%' or course like '%体育%'参数中是美术

2021-12-22 16:06:10 3276

原创 CentOS安装MySQL8.0

目录配置yum源wget下载源安装包安装源安装MySQL启动相关启动服务查看启动状态设置开机自启重启服务配置修改密码卸载卸载MySQL删除文件配置yum源wget下载源安装包如果没有安装wget,先安装yum -y install wget进入mysql官网下载:https://dev.mysql.com/downloads/repo/yum/复制下载链接:https://dev.mysql.com/get/mysql80-community-release-el7-4.noarch.rp

2021-11-13 17:34:52 1805 1

原创 IOC(一) - 初识

一、IOC理论推导之前的传统做法,对象都是通过new出来的,如果需求变更,增加代码的同时需要去改动原有的代码,程序适应不了需求的变更。如果代码量大,修改的代价非常高。举个简单的例子:一个获取用户信息的接口,有如下几个类UserDaoUserDaoImplUserServiceDaoUserServiceDaoImpl获取用户代码:service中调用dao的方法后面有需求变更,需要从MySQL和Oracle中获取用户,加了两个接口实现类那么在调用的时候就得修改代码为了解决这个

2021-10-21 09:47:29 2436

原创 Jenkins持续集成- Jenkins插件管理

Jenkins本身不提供很多功能,我们可以通过使用插件来满足我们的使用。例如从Git拉取代码,使用Maven构建项目等功能需要依靠插件完成。修改插件下载地址改为国内地址Jenkins > Manage Jenkins > Manage Plugins > Availablejenkins插件默认保存目录是/var/lib/jenkins/,里面有个updates的目录,这个目录下有个default.json的文件,这个文件里面存的就是官方网站下载插件的地址所有我们需要替换为

2021-09-28 17:09:00 191

原创 Jenkins持续集成 - Jenkins安装

安装jdkJenkins需要依赖Java环境,所以先安装jdk1.8yum install java-1.8.0-openjdk* -y安装完输入java -version验证一下默认安装目录是/usr/lib/jvm,安装了一些jdk的相关包我们用的是jdk-1.8.0-openjdk,进去可以看到,是一个完整的jdk目录安装Jenkins通过镜像下载地址安装,要快很多:http://mirrors.jenkins-ci.org/添加Jenkins库到yum库,Jenkins将从这里

2021-09-28 16:38:09 201

原创 Java多线程 - 线程池

经常创建和销毁、使用量特别大的资源,比如并发情况下的线程,对性能影响很大。提前创建好多个线程,放入线程池中,使用时直接获取,使用完放回池中,可以避免频繁创建销毁、实现重复利用。类似生活中的公共交通工具。好处提高响应速度(减少了创建新线程的时间)降低资源消耗(重复利用线程池中线程,不需要每次都创建)便于线程管理core Poolsize:核心池的大小maximum Poo|size:最大线程数keepAliveTime:线程没有任务时最多保持多长时间后会终止JDK5.0起提供

2021-09-26 09:50:35 36

原创 Java多线程 - 线程通信(线程协作)

生产者消费者模式举个例子,我作为消费者去肯德基买鸡块吃,正常情况下,如果还有鸡块的话就直接卖给我了,如果没有的话,前台就会通知后面的大厨进行制作,那么大厨就相当于是生产者。大厨做好之后会给到前台,然后前台通知我(消费者)来取餐。在线程中,生产者是一条线程,消费者是一条线程,中间有个产品,如果有产品的话就进行通知,没有的话就进行等待。这样一来,两条线程之间就有了依赖及协作。应用场景:假设仓库中只能存放一件产品,生产者将生产出来的产品放入仓库,消费者将仓库中产品取走消费如果仓库中没有产品,则生产者将

2021-09-26 09:48:30 267

原创 Java多线程 - 锁(死锁、Lock)

死锁多个线程各自占有一些共享资源,并且互相等待其他线程占有的资源才能运行,而导致两个或者多个线程都在等待对方释放资源,都停止执行的情形.某一个同步块同时拥有“两个以上对象的锁”时,就可能会发生“死锁”的问题。死锁:多个线程互相持有对方需要的资源,然后形成僵持举个例子:两个女生化妆,需要口红和镜子(都只有一份),一个想先拿口红再拿镜子;另一个想先拿镜子,后拿口红// 死锁:多个线程互相持有对方需要的资源,然后形成僵持public class DeadLockDemo { public sta

2021-09-26 09:40:57 136

原创 Java多线程 - 线程同步

线程同步,主要是应用在多个线程操作同一个资源。并发:同一个对象被多个线程同时操作。例子:上万人同时抢100张票一个账号在两个银行同时取钱现实生活中,并发情况很常见。比如,食堂排队打饭,每个人都想吃饭,最天然的解决办法就是排队,一个个来。处理多线程问题时,多个线程访问同一个对象,并且某些线程还想修改这个对象这时候我们就需要线程同步。线程同步其实就是一种等待机制,多个需要同时访问,此对象的线程进入这个对象的等待池形成队列,等待前面线程使用完毕,下一个线程再使用。排队的形成条件:队列 + 锁由

2021-09-22 10:31:00 121

原创 Java多线程 - 线程状态

线程状态五个状态:新生、就绪、运行、死亡、阻塞停止线程不推荐使用JDK提供的stop()、destroy()方法【已弃用】推荐线程自己停止建议用一个标志位进行终止变量,到flag=false,则终止线程运行public class StopDemo implements Runnable { // 设置一个标志位 boolean flag = true; @Override public void run() { // 线程体使用该标志

2021-09-21 23:18:43 3291 1

原创 全国行政区划数据 - JSON

[ { "name": "北京市", "code": "110000", "city": [ { "name": "市辖区", "code": "110100", "area": [ {"name": "东城区","code": "110101"}, {"name": "西城区","code": "110102"}, {"name": "朝阳区","code":

2021-07-13 11:22:40 1956

原创 百度地图 - js获取行政区边界范围

效果图代码<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head> <meta http-equiv="Content-Type" content="text/html;

2021-06-29 18:18:16 834

原创 设计模式 - 单例模式

1. 什么是单例模式单例模式,某类在整个程序有且仅有一个实例。该类负责创建自己的对象,同时确保只有一个对象被创建。在Java,一般常用在工具类的实现或创建对象需要消耗资源。单例模式的特点某个类只能有一个实例(构造器私有化)它必须自行创建这个实例(含有一个改类的静态变量来保存这个唯一的实例)自行向整个系统提供这个实例(直接暴露或者用静态变量的get方法)2. 单例模式的应用场景3. 单例模式的优缺点优点在内存中只有一个对象,节省内存空间避免频繁的创建销毁对象,可以提高性能避免对共享

2021-05-26 22:16:26 3012

原创 Git commit记录规范

程序员应该写出简洁明了的commit log,否则对别人和自己来说就是一种困扰,永远无法从中得知提交人的意图。 IDEA插件推荐在plugins中搜索Git Commit Template安装即可安装之后我们正常提交代码时,会多出一个按钮...

2021-05-06 18:30:35 4354

原创 js日期时间常用方法工具类

这里引用了moment 模块/** * 时间日期工具类 */import moment from 'moment'export default { /** * 获取本周周一和周日日期 */ getCurrentWeekStartAndEnd() { const start = moment().weekday(1).format('YYYY-MM-DD') // 本周一 const end = moment().weekday(7).format('YYYY-

2021-04-20 01:00:44 447

原创 常用正则表达式

一、校验数字的表达式数字:^[0-9]*$n位的数字:^\d{n}$至少n位的数字:^\d{n,}$m-n位的数字:^\d{m,n}$零和非零开头的数字:^(0|[1-9][0-9]*)$非零开头的最多带两位小数的数字:^([1-9][0-9]*)+(.[0-9]{1,2})?$带1-2位小数的正数或负数:^(\-)?\d+(\.\d{1,2})?$正数、负数、和小数:^(\-|\+)?\d+(\.\d+)?$有两位小数的正实数:^[0-9]+(.[0-9]{2})?$

2021-04-19 15:00:06 119

原创 Linux安装Redis

下载官网:https://redis.io/download右键复制链接,进入安装的目录路径(我这里是在opt目录下),使用wget下载:wget https://download.redis.io/releases/redis-6.2.1.tar.gz编译及安装解压tar -zxf redis-6.2.1.tar.gz解压完成redis的运行需要C环境,所以需要先安装gccyum install gcc-c++使用命令gcc -v,查看是否安装完成进入redis目录,进

2021-04-14 11:16:23 268

原创 IDEA - 常用插件

1. Alibaba Java Coding Guidelines阿里巴巴代码检查工具2. CodeGlance代码缩放图插件3. CamelCase大小写,下划线,驼峰,首字母大写等转化工具,选中需要改变的变量,按快捷键shift + alt + u,变量就会改变,直到找到需要的格式。4.Chinese ​(Simplified)​ Language Pack / 中文语言包汉化插件5.Git Commit Templategit提交规范插件6.JRebel and XReb

2021-03-25 16:38:57 68

原创 nrm报错internal/validators.js:124 throw new ERR_INVALID_ARG_TYPE(name, ‘string‘, value);

报错信息internal/validators.js:124 throw new ERR_INVALID_ARG_TYPE(name, 'string', value); ^[TypeError [ERR_INVALID_ARG_TYPE]: The "path" argument must be of type string. Received undefined at validateString (internal/validators.js:124:11) at Obj

2021-02-19 11:13:24 5885 12

原创 Navicat Premium15 注册出现No all pattern found! file already patched?

Navicat Premium15 注册时出现No all pattern found! file already patched?需要删除下面两个注册表信息:HKEY_CURRENT_USER\Software\PremiumSoft\NavicatPremiumHKEY_CURRENT_USER\Software\PremiumSoft\NavicatPG删除重新走流程就行了。...

2021-01-10 13:11:46 6708

原创 Windows解除端口占用

在命令提示符中输入:netstat -aon|findstr "[端口号]",查看指定端口占用情况。比如我这边需要查看49210端口:记下最后一位数字,即PID,这里是红框中的12904继续输入taskkill /f /pid [PID]",回车,杀掉PID为12904的进程...

2020-12-30 11:05:36 337 1

原创 推荐图床网站

无需登录SM. MS:https://sm. msimgbox:https://imgbox. comPostimage:https://postimages. orgimgurl:https://imgurl. orgiqy:https://pic. iqy. inkimgbed:https://imgbed. cn路过图床:https://imgchr. com如优图床:https://img. rruu. netCoding 图床:http://p

2020-12-17 19:45:59 3482 1

原创 记一次Arrays.asList的坑

说坑之前,先举个简单的例子,大家猜猜下面的代码输出结果会是多少?如果不仔细看,或者没仔细了解过的话,大部分都会很自信的说是3吧?其实,结果是1。为什么会是1??那把Arrays.asList(i)提取出来看看就知道了:蒙了吧,为什么List的泛型会是int[]???...

2020-11-09 17:40:53 93

原创 Spring Boot - 将配置文件中的字符串数组注入到静态变量

properties配置文件:yml配置文件:注意:字符串之间都是用英文逗号隔开的开始注入两种类型的使用方式和结果都是一样的注意:1. 使用@Component将类注入IOC2. set方法一定不要为静态的结果...

2020-09-21 16:11:46 1285

原创 新版Edge检查项F12控制台改为英文

打开F12,点击右上角的三个点,进入设置把匹配浏览器语言这个勾去掉就可以了

2020-08-25 13:53:23 5075 1

原创 js根据条件删除对象数组中的元素

删除年龄20岁以上的对象:var newArr = objs.reduce((total, current) => { current.age >= 20 && total.push(current); return total;}, []);

2020-08-18 22:01:07 5872

原创 docker开放2375端口,并添加安全传输层协议(TLS)和CA认证

为了更便捷地打包和部署,服务器需要开放2375端口才能连接docker,但如果开放了端口没有做任何安全保护,会引起安全漏洞,被人入侵、挖矿、CPU飙升这些情况都有发生,任何知道你IP的人,都可以管理这台主机上的容器和镜像,真的可怕。为了解决安全问题,只要使用安全传输层协议(TLS)进行传输并使用CA认证即可。制作证书及秘钥我们需要使用OpenSSL制作CA机构证书、服务端证书和客户端证书,以下操作均在安装Docker的Linux服务器上进行。创建一个目录用于存储生成的证书和秘钥mkdir

2020-08-17 16:46:00 6695 17

原创 docker容器添加自定义host

在docker run运行容器的时候,添加参数--add-host [域名]:[IP]来添加域名和IP信息docker run -d -p 8100:8100 --add-host demo-db:192.168.1.21 --name demo demo:v0724.01

2020-08-08 14:52:18 2434 1

原创 Linux杀死端口

如果没装lsof,安装一下:yum install -y lsof查看端口情况:lsof -i:[端口号]取到pid杀掉进程:kill -9 [pid]

2020-07-23 18:12:03 882

原创 Docker - 搭建Portainer可视化界面

查询镜像:docker search portainer拉取镜像docker pull portainer/portainer启动容器docker run -d -p 9000:9000 --restart=always -v /var/run/docker.sock:/var/run/docker.sock --name prtainer portainer/portainer访问

2020-07-22 21:41:06 617

原创 Windows用netsh实现端口转发

windows 命令行下用netsh 实现端口转发(端口映射)微软Windows的netsh是一个命令行脚本实用工具。使用netsh工具 ,可以查看或更改本地计算机或远程计算机的网络配置。不仅可以在本地计算机上运行这些命令,而且可以在网络上的远程计算机上运行。可以手动运行Netsh命令,或创建批处理文件或脚本实现过程的自动化。netsh提供了脚本功能,让您在批处理模式下针对指定的计算机,运行一组命令。利用netsh ,可以将配置脚本保存为文本文件,便于存档或用于配置其他的计算机。假定需要通过12

2020-07-16 15:38:00 908

阿里Java开发手册嵩山版 v1.7.0.zip

阿里Java开发手册嵩山版 更新时间:2020.08.03 说明:1)新增前后端规约 14 条。 2)新增禁止任何歧视性用语的约定。 3)新增涉及敏感操作的情况下日志需要保存六个月的约定。 4)修正 BigDecimal 类中关于 compareTo 和 equals 的等值比较。 5)修正 HashMap 关于 1024 个元素扩容的次数。 6)修正架构分层规范与相关说明。 7)修正泰山版中部分格式错误和描述错误。

2020-08-04

阿里Java开发手册泰山版 v1.6.0

阿里Java开发手册泰山版 更新时间:2020.04.22 版本:1.6.0 说明:泰山版,发布错误码统一解决方案、新增 34 条新规约、修改描述 90 处

2020-04-24

全国省市区.json

最新的全国省市区json文件,包括省市区对应的代码,格式如下: [ { "name": "湖南省", "code": "430000", "city": [ { "name": "长沙市", "code": "430100", "area": [ { "name": "市辖区", "code": "430101" }, ... ] } ] } ]

2020-04-13

MyBatisCodeHelperPro 2.7.8-191-193.zip

MyBatisCodeHelperPro 2.7.8-191-193插件安装包,适用于IDEA2019.1~2019.3,离线安装后随便输入几个字符即可使用。

2020-02-09

阿里Java开发手册华山版 v1.5.0

阿里Java开发手册 更新时间:2019.06.19 版本:1.5.0 说明:华山版,新增21条,修改描述112处

2019-12-30

jdk帮助文档(包含jdk8、jdk10)

包含jdk8 API帮助文档、jdk10 API帮助文档jdk 10 api_google.CHM,谷歌翻译版本。

2019-11-19

Redis安装包与可视化客户端安装包.zip

包含Redis-x64-3.2.100.zip、redisclient-win32.x86.2.0.exe。参考博文:https://blog.csdn.net/hon_vin/article/details/102568046

2019-10-15

Layui选项卡切换及右键操作(新增、多种关闭)完整源码.zip

实现选项卡新增以及切换、选项卡刷新、选项卡删除(删除其他、删除右侧所有、删除所有)。如有需要可留下邮箱,我给你私发。 参考博文:https://blog.csdn.net/hon_vin/article/details/101676162

2019-09-30

js:获取汉字简拼、全拼、混拼

根据汉字,获取简拼、全拼、混拼。如有需要可留下邮箱,我给你私发。 参考博文:https://blog.csdn.net/hon_vin/article/details/101750421

2019-09-30

空空如也

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

TA关注的人

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