- 博客(25)
- 资源 (1)
- 收藏
- 关注
原创 awk 通俗易懂教程
awk 教程简介语法分割符变量内置变量自定义变量printf 格式化输出模式Pattern动作 action数组内置函数随机函数字符串函数其他函数参考文章简介awk 是一个报告生成器,它拥有强大的文本格式化的能力。它允许您创建简短的程序,这些程序读取输入文件、为数据排序、处理数据、对输入执行计算以及生成报表,还有无数其他的功能。语法awk [options] ‘pattern{action...
2019-02-21 21:27:54
1008
原创 深入理解 Redis 数据结构
一、数据结构1.1 简单动态字符串(simple dynamic string , SDS)redis 没有使用C自带的字符串(以空字符结尾的字符串数组)实现,而是自己定义SDS结构来存储字符串,SDS结构如下:修改SDS时涉及到以下两点:1. 空间预分配:用于优化字符串增长操作:当SDS需要进行空间扩展时,程序不仅会为SDS分配修改所必须要的空间,还会为SDS分配额外的空...
2019-02-15 17:47:39
708
原创 深入理解Redis主从复制
一、主从拓扑架构分析1.1 一主一从1.2 一主多从1.3 树状主从二、主从配置2.1 建立主从关系:从节点只能有一个主节点,当再次指定主节点时,从节点会删除旧主节点的数据。# 1. 在redis.conf 中加入以下配置:slaveof 192.168.153.133 6379# 2.启动的时候带上 slaveof 参数./redis-serve...
2019-02-03 11:51:11
2908
原创 深入理解Redis持久化
一、快照 RDB1.1 bgsave触发情景:使用save相关配置,如“save m n”。表示m秒内数据集存在n次修改时,自动触发bgsave 全量复制 执行shutdown 时,如果没有开启AOF持久化功能则自动执行bgsave。 执行flushall 清空所有缓存时 debug reload 重新加载配置文件时1.2 bgsave原理:二、AOF2.1 开启方...
2019-02-01 18:46:40
468
原创 解决 v3.13.1/win32-x64-64_binding.node 下载失败
问题:项目中依赖了gulp-sass:~2.1.1这个比较旧的版本,以致在npm install 的时候一直报一下错误:Downloading binary from https://github.com/sass/node-sass/releases/download/v3.13.1/win32-x64-64_binding.nodeCannot download "https://...
2019-01-18 10:38:49
11582
2
原创 npm connect ETIMEDOUT
问题:npm install 任何第三方库的时候都出现以下错误:原因:在安装gulp-sass的时候一直失败,然后根据网上一些文章设置代理和镜像之类的,最后可能因为设置到一个错的代理才导致的。解决方法: 删除已有代理:npm config delete proxynpm config delete https-proxy ...
2019-01-18 10:11:01
77981
9
原创 Java 8 时间日期详细用法
一、概述java8 重新定义了一套语义非常清晰的日期、时间Api,位于java.time包中。该包中的所有类都是不可变且线程安全的。其实,以上所有类都是基于java8 Clock类实现的,只是由于场景不同而显示方式不一样而已。而Clock又是基于System.currentTimeMillis() 实现的,所以以上时间api都是跟本主机时间关联的。二、时间操作以上虽然有很多个时...
2019-01-08 23:16:10
1351
1
原创 Java 8 Optional 详细用法
一、简介Optional 是一个对象容器,具有以下两个特点: 提示用户要注意该对象有可能为null 简化if else代码二、使用介绍1. 创建: Optional.empty(): 创建一个空的 Optional 实例 Optional.of(T t):创建一个 Optional 实例,当 t为null时抛出异常 Optio...
2019-01-08 23:14:19
47636
21
原创 Java 8 stream的详细用法
一、概述Stream 是 Java8 中处理集合的关键抽象概念,它可以指定你希望对集合进行的操作,可以执行非常复杂的查找、过滤和映射数据等操作。使用Stream API 对集合数据进行操作,就类似于使用 SQL 执行的数据库查询。也可以使用 Stream API 来并行执行操作。简而言之,Stream API 提供了一种高效且易于使用的处理数据的方式。特点: 1 . 不是...
2019-01-08 23:12:43
300451
54
原创 Java 8 方法引用
一、是什么?方法引用是用来直接访问类或者实例已经存在的方法或者构造方法。二、哪里能用?当Lambda表达式中只是执行一个方法调用时。三、怎么理解?这里以Arrays的sort方法进行讲解:public static <T> void sort(T[] a, Comparator<? super T> c)public void introduce(...
2019-01-08 23:10:04
5010
2
原创 Java 8 函数式接口
定义:只能有一个抽象方法 可以有静态方法和默认方法,因为这两种方法都是已经实现的了 可以包含Object里所有能重写的方法,因为即使接口包含像String toString()这样的抽象方法,它的实现类也会因继承了Object类,而再次对接口中的toString()方法进行实现。 作用:方便直接用Lambda表达式构造出实例,让代码更加简洁。注解 : @FunctionalI...
2019-01-08 23:06:50
10678
2
原创 Java 8 接口增强
java8中对接口功能进行了增强,添加了以下两个需要自己实现的方法:默认方法使用default关键字修饰,需要注意以下几点:1.不能重写基类Object中的public方法2.类优先原则:如果父类中有跟接口默认方法相同签名的方法,则使用父类中的方法。3.需手动解决接口冲突:当接口A个接口B有相同签名的默认方法时,则实现类需要自己重写该方法。静态方法使用方式跟...
2019-01-08 23:00:17
653
原创 tinyint(4)插入数据时出现 Data truncation: Out of range value for column
问题:tinyint 的长度明明设置为4了,但插入500这么小的值时,却出现 “Data truncation: Out of range value for column“原因:tinyint(size) 中的size并不表示字节数大小。对于tinyint来说,占用的字节数固定为1。带符号的范围是-128到127,无符号的范围是0到255。同理对于smallint,int,big...
2018-11-10 16:48:26
9649
原创 count(column条件)统计出所有,无法进行数据筛选
需求:从成绩表中找出所有科目都不及格的学生。原始sql:SELECT student_name FROM `grade_record` GROUP BY student_name HAVING count(score>=60)=0;-- 结果为空,找不出小明这条数据 原因:对于 count(expr) 来说,无论expr的结果是 true 或者 false ,都会进...
2018-11-10 15:02:28
1348
原创 flask ip 端口设置无效,外网无法访问
今天在虚拟机Ubuntu的pycharm中写了一个falsk demo,其中ip设置为0.0.0.0,但是程序启动后,主机就是无法访问到该项目,但在虚拟机却能访问到。if __name__ == '__main__': app.run(host='0.0.0.0', port=5000, debug=True)起初一直以为是防火墙的问题,但是我从ufw status中可以看到我的...
2018-10-14 00:15:49
10925
5
原创 pip3 -V 出现 ImportError: cannot import name 'main'
使用pip3 install pipenv后,再次执行pip3 -V时,出现以下异常:Traceback (most recent call last): File "/usr/bin/pip3", line 9, in <module> from pip import mainImportError: cannot import name 'main'我使用...
2018-10-10 18:17:44
684
2
原创 VMware 实现主机与虚拟机间文件的复制与拖放
一、安装VMwareTools1. 指定linux.iso安装好虚拟机后,我们的CD/DVD选项一般都是指向系统镜像,此时需要修改为VMware自带的linux.iso,该文件存放在VMware的安装目录中,如,我的为:C:\Program Files (x86)\VMware\VMware Workstation2. 加载VMware tools先启动虚拟机,然后点击VMwa...
2018-09-27 11:15:34
39884
11
原创 图片工具类
1. 将字节数组保存为图片public static void byte2Image(byte[] data, String path) { try (FileImageOutputStream imageOutput = new FileImageOutputStream(new File(path))) { imageOutput.write(da...
2018-09-25 15:32:45
237
原创 Ubuntu-Serve 18安装pip3
系统本身自带python3查看是否安装了pip发现并没有装pip,由于是使用python3,所以这里就还是装pip3好了 然而却出现了 E: Unable to locate package python3-pip 错误,原因很简单,就是自带的源没有找到python3-pip这个包,所以我们要先添加下面的源:# 打开源配置文件sudo vim /etc/apt/so...
2018-09-21 14:01:40
1988
1
原创 python 基础
文件名:python 的文件名后缀可以是任意的,但最好还是.py ,因为在导入模块的时候,如果文件不是 .py的话会导入错误。运行:所有系统:python hello.py 在Linux中可以使用 ./hello.py 来执行python文件,但需要在 文件首行加入 #!/usr/bin/bin/env python 来指明python解析器的位置。编码:python 3 无需...
2018-09-19 17:47:00
416
原创 浅谈 python WSGI
一、简介:WSGI(Web Server Gateway Interface)python web开发的标准,它定义了Web服务器和Web应用程序之间通信的接口规范。流程: 1. 应用程序接收environ、start_response这两个参数,返回一个可迭代的对象 environ:一个包含所有HTTP请求信息的dict对象 start_response:一...
2018-09-19 17:40:51
1412
原创 Centos7 安装最新RabbitMQ及配置
前言最近在学习SpringCloud,发现其中的消息总线是依靠消息中间件实现的,加之公司也有在使用RabbitMQ,所以就想从零开始,从官网逐步学习一下RabbitMQ。下面的安装教程是我从官网一步一步翻译、实践过来的,如有表达不到位,还请多多指教!RabbitMQ官方安装教程1. rpm包安装 1.1. 用户权限使用rpm包安装,要求我们拥有sudo权限,如果没有sudo权...
2018-08-05 02:21:42
29945
4
原创 Intellij IDEA 快速找到某个maven依赖所在的pom.xml
前言:在企业开发中,公司项目各模块的依赖是比较复杂,往往是A模块中依赖了B、C、D…等模块,此时我们若想在A模块中查找某个jar依赖就会很麻烦,因为无法在A的pom.xml中直接搜索到。最笨的方法就是对A模块依赖的其他模块进行逐一搜索,但我想你并不想这么做。下面我通过一个实际的案例,来简单地谈谈 IDEA 如何快捷地找到相应的pom.xml。场景:在项目中,我引入了org.json.J...
2018-07-26 13:53:24
52802
12
原创 java 执行python脚本,提示语法错误
脚本test.py:print "Hello, World!";java调用代码:Process pr=Runtime.getRuntime().exec("python test.py");问题:通过pr.getErrorStream()打印出的错误信息一直是语法错误,但我将此python文件在cmd窗口中又没有问题。解决方法:后来想到python3.+和2.+的...
2017-06-21 16:52:08
644
转载 远程连接不上Oracle
问题描述:装完Oracle client后,用SqlDeveloper连接时,主机名填localhost能连接成功,但在另一台电脑上使用IP连接却一直失败。解决方法:打开C:\software\Oracle\product\11.2.0\dbhome_1\NETWORK\ADMIN目录,修改listener.ora和tnsnames.ora配置文件(1)把host相关配置修改成机器名或者1
2017-06-15 20:25:18
665
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人