自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(32)
  • 收藏
  • 关注

原创 Java_IO流

按读写:Reader 和 Writer按输入输出:InputStream 和 OutputStream按类别:节点流 和 处理流(比如缓冲流)其实IO流的学习让我头疼的是对编码集的不了解,通过不断测试算是有了些结论,以下是一些个人理解:Java的io流很有意思,首先我们要知道java.exe会自动识别Java文件的编码格式,Java文件被编译后会以Unicode格式编码为class文件 Javac.exe执行,JVM 对 class 文件做解密,并通过执行引擎执行该代码 很多人可能会纳闷

2020-07-31 14:21:34 159

原创 Docker安装MySQL8

确认本机docker可用后,执行以下流程1、docker search mysql如下图,这里使用第一行的mysql镜像2、docker pull mysql3、docker images 来确保成功加载到本地仓库4、docker run --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root-d mysql如图,会生成一串hash码,这就是本次镜像实例出的mysql执行程序的id,以后可用根据这个实例 id或者name对...

2020-07-27 23:39:14 704

原创 HTTPS

一、啥时HTTPS  其实就是http协议,只不过http没有对传输报文加密,不安全,因此为了安全对报文做了加密,实现的方式就是在应用层再加上SSL协议来加密,这就是https二、实现原理  那么双方的加密如何实现呢,目前的主流加密方式是对称加密和非对称加密,这两个有啥区别嘞?1、对称加密:加密和解密都是用同一个秘钥 速度快 管理和分配秘钥的时候不安全。2、非对称加密:公钥和私钥是成对的,它们互相解密。 公钥加密,私钥解密,或者公钥解密,私钥加密。 私钥数字签名,公钥验证。

2020-07-25 17:10:47 707

原创 请求行——Referrer-Policy

本文将介绍一个涉及安全和隐私的http请求头中的字段—referrer,以及如何通过Referrer Policy去修改referrer的值或者是显示与否。什么是referrer当一个用户点击当前页面中的一个链接,然后跳转到目标页面时,目标页面会收到一个信息,即用户是从哪个源链接跳转过来的。如下图所示:也就是说,当你发起一个http请求,请求头中的referrer字段就说明了你是从哪个页面发起该请求的。使用场景有时候我们需要控制这个referrer字段的值,即是否让其显示在请求头中,

2020-07-25 15:22:24 1047

原创 HTTP

一、啥是HTTP?为毛会有它http 全称 hypertext transfer protocol (超文本传输协议,强烈建议以后把相关词汇的英语记熟),是基于tcp协议的面向连接的安全可靠的应用层网络传输协议。创建的初衷是为了接收和发布html格式信息,其请求方式是客户端通过url来发送请求和获取响应,也就是说http是一种只能实现客户端发送,服务端响应的tcp/ip协议(这就和websocket等协议不同,因为这些协议是可以由服务端来主动发送报文的)。二、特点1.基于请求/响应模型的协议。.

2020-07-25 15:21:13 234

原创 RPC、HTTP和WebSocket协议

1、RPC和Http的区别性能:rpc通过thrity进行二进制传输,http json序列化耗费性能传输协议:rpc 基于 tcp 也可基于http,http 只能是http负载均衡:rpc自己支持,http需要自己搭建,比如nginx传输效率:rpc可以自定义tcp协议 报文相对小,http有很多无用的东西(比如头部信息,keepalivetime reffer,)通知:rpc自动通知,http事先通知,自行修改nginx配置或者其它负载均衡的配置2、HTTP 和 WebSock

2020-07-25 14:39:59 1344

转载 分布式系统唯一id生成的几种方式

转载地址:https://www.cnblogs.com/haoxinyue/p/5208136.html分布式系统唯一ID生成方案汇总系统唯一ID是我们在设计一个系统的时候常常会遇见的问题,也常常为这个问题而纠结。生成ID的方法有很多,适应不同的场景、需求以及性能要求。所以有些比较复杂的系统会有多个ID生成的策略。下面就介绍一些常见的ID生成策略。1. 数据库自增长序列或字段最常见的方式。利用数据库,全数据库唯一。优点:1)简单,代码方便,性能可以接受。2)数字ID天然排序,对

2020-07-23 21:51:51 192

原创 TCP/IP协议

1、RPC和Http的区别性能:rpc通过thrity进行二进制传输,http json序列化耗费性能传输协议:rpc 基于 tcp 也可基于http,http 只能是http负载均衡:rpc自己支持,http需要自己搭建,比如nginx传输效率:rpc可以自定义tcp协议 报文相对小,http有很多无用的东西(比如头部信息,keepalivetime reffer,)通知:rpc自动通知,http事先通知,自行修改nginx配置或者其它负载均衡的配置2、HTTP 和 WebSock

2020-07-20 18:46:42 118

转载 JDK1.7中的LinkedList

14原文12原文https://juejin.im/post/5bb3026b5188255c393f7cf2https://cloud.tencent.com/developer/article/1336307最近在看jdk1.7的时候,发现LinkedList 和1.6中的变化。首先,简单介绍一下LinkedList:LinkedList是List接口的双向链表实现。由于是链表结构,所以长度没有限制;而且添加/删除元素的时候,只需要改变指针的指向(把链表断开,插入/删除元素,再把链表连起来)即

2020-07-19 20:36:12 241

原创 集合(泛型、主要实现对实例的 增、删、改、查、插、长度、遍历)

在项目中主要使用 List 和 Map 集合1.1、Collection接口常用方法: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 add(Object obj), addAll(Collection coll), size(), isEmpty(), clear();

2020-07-18 18:42:49 423

转载 原型模式

java深克隆和浅克隆基本概念浅复制(浅克隆)被复制对象的所有变量都含有与原来的对象相同的值,而所有的对其他对象的引用仍然指向原来的对象。换言之,浅复制仅仅复制所拷贝的对象,而不复制它所引用的对象。其实说白了就是对象 A复制了对象 B 以后,新对象的内存会为其基本数据成员分配空间重新创建,而引用类型成员则仍然是指向 A 对象的引用成员变量。这就是说如果你通过set方法修改了 A 对象的引用成员的内部属性值,那么 B 对象调用该引用成员时,会实时同步为刚才修改的内部属性值深复制(.

2020-07-18 18:37:54 129

原创 RabbitMQ

一、MQ(消息队列)有啥用?举例:老师晚自习要和学生讲题,学生一个一个问,一晚上三节课也问不完,那么这种形式的缺点有什么呢:老师必须要和学生当场讲解 如果老师有事走了,那学生们就挂了 学生要排队,浪费个人时间那么如果现在更改下策略呢:比如我们现在在老师旁边放一张表,学生在表上按序写上问题,附上名字,老师只要在表上看见问题,然后解决问题,最后把你叫上来告诉你,如此一来,老师和学生便通过异步通信实现了解耦虽然例子有点不贴切,但是解耦的思想还是可以表现出来的,其实MQ就是那张表,在项目部署中,如

2020-07-17 18:53:34 82

转载 React 使用import时如何使用花括号‘{ }‘,以及export default,export

在 ES6 之前,社区制定了一些模块加载方案,最主要的有 CommonJS 和 AMD 两种。前者用于服务器,后者用于浏览器。ES6 在语言标准的层面上,实现了模块功能,而且实现得相当简单,完全可以取代 CommonJS 和 AMD 规范,成为浏览器和服务器通用的模块解决方案。上文引用自:阮一峰老师的ECMAScript 6 入门。而我们这里要说的是在使用import语法引用模块时,如何正确使用{}。假如有一个B.js,想要通过import语法引用模块A.js,那么可以这么写: .

2020-07-17 17:02:33 1236

转载 常见的状态码信息

100 Continue 继续。客户端应继续其请求101 Switching Protocols 切换协议。服务器根据客户端的请求切换协议。只能切换到更高级的协议,例如,切换到HTTP的新版本协议200 OK 请求成功。一般用于GET与POST请求201 Created 已创建。成功请求并创建了新的资源202 Accepted 已接受。已经接受请求,但未处理完成203 Non-Authoritative Information...

2020-07-17 08:28:40 313

原创 Docker安装RabbitMQ

1、进入docker hub镜像仓库地址:https://hub.docker.com/2、搜索rabbitMq,进入官方的镜像,可以看到以下几种类型的镜像;我们选择带有“mangement”的版本(包含web管理页面);当然也可以直接命令行:docker search rabbitmq3、拉取镜像docker pull rabbitmq:3.7.7-management然后命令:docker images //查看本地docker的所有镜像4、根据下载的镜像创建和启..

2020-07-16 22:30:24 294

原创 Redux_4_React-redux_代码实操

待定

2020-07-16 17:02:58 99

原创 Redux_4_React-redux

一、React-redux是什么react-redux是Redux官方出的 用来配合 React 的绑定库 react-redux能够使你的React组件从Redux store中很方便的读取数据,并且向store中分发actions以此来更新数据 react-redux的两个重要部分: Provider : 能够让整个app都能获取到store中的数据 Provider 包裹 在根组件最外层,使所有的子组件都可以拿到State Provider 接收 store 作为 props,然后

2020-07-16 17:00:43 186

原创 Redux_3

一、准备构建react项目:npx create-react-app redux-demo 删除多余文件 在pages目录下创建Home组件 编写一个结构样式:<button>发送要给action</button> 在App.js引入自定义的组件 安装redux: yarn add redux二、构建Action在根目录下创建一个文件夹 action 在该目录下创建一个 index.js 文件,用来构建 Action 在 index.js 中创建函数里面 利用

2020-07-16 16:30:07 128

原创 Redux_2

一、 Redux组成1.State即传递的数据,在React开发中,大致把State分为三类:DomainDate: 可以理解为服务器的数据,比如: 获取用户的信息,商品的列表等 UI State: 决定当前UI要展示的状态,比如: 弹框的显示隐藏,受控组件等 App State: App级别状态,比如:当前是否请求loading,当前路由信息可能会被多个组件去使用的状态2.ActionAction 是把数据从应用传到store的载体 ( 其本质就是JS对象 ) ,他是store数据.

2020-07-16 14:31:10 115

原创 Redux_1

一、Redux是啥Redux是一个用于JS状态容器(或者管理器,叫啥随便),提供可以预测化的状态管理Redux可以构建一致性的应用,运行于不同环境(客户端、服务器、原生应用),并且容易测试Redux除了和React合用外,还支持其它界面库,而且体积小(2kb)不用担心资源占用二、设计初衷:JS发展日益复杂,JS需要管理更多state,这些state可能包括服务器响应、缓存数据、本地生成未持久化到服务器的数据,UI状态等管理不断变化的state很麻烦,如果一个model的变化会引.

2020-07-16 13:58:24 125

转载 Springboot中启动类报红

springboot 中启动类SpringApplication.run报错(红线)方案一:1.在项目的根目录下执行:mvn dependency:purge-local-repository2.执行:mvnclean或mvnclean package -U -X -e方案二:如果是idea,重新引入项目,估计是把他搞坏了,引入项目的时候一定要选择项目根目录下的pom.xml,而且弹框的时候一定要选择一个新的项目(大致翻译的意思是重新建一个新的项目)———————————————...

2020-07-16 12:46:25 5185

原创 Docker安装和简单介绍

一,安装Docker我是虚拟机装的Centos7,linux 3.10 内核,docker官方说至少3.8以上,建议3.10以上(ubuntu下要linux内核3.8以上,RHEL/Centos的内核修补过,centos6.5的版本就可以——这个可以试试)1,root账户登录,查看内核版本如下[root@localhost ~]# uname -aLinux localhost.localdomain 3.10.0-957.el7.x86_64 #1 SMP Thu Nov 8 23:3...

2020-07-15 21:47:53 201

转载 Hadoop介绍

1、Hadoop的整体框架Hadoop由HDFS、MapReduce、HBase、Hive和ZooKeeper等成员组成,其中最基础最重要元素为底层用于存储集群中所有存储节点文件的文件系统HDFS(Hadoop Distributed File System)来执行MapReduce程序的MapReduce引擎。(1)Pig是一个基于Hadoop的大规模数据分析平台,Pig为复杂的海量数据并行计算提供了一个简单的操作和编程接口;(2)Hive是基于Hadoop的一个工具,提供完整的SQL查询..

2020-07-14 08:58:02 203

原创 一、设计模式原则

一、单一职责原则降低类的复杂度,一个类只负责一项职责 提高类的可读性,可维护性 降低变更引起的风险 通常情况下,要遵守单一责任原则,当然如果逻辑足够简单,可以不遵守 如果类中方法足够少,可以考虑在方法级别保持单一职责原则...

2020-07-13 08:38:34 61

转载 字符引用

Java类从加载到虚拟机内存中开始,到卸载出内存为止,它的整个生命周期包括,加载,验证,准备,解析,初始化,卸载,总共七个阶段。其中验证,准备,解析统称为连接。而在解析阶段会有一个步将常量池当中二进制数据当中的符号引用转化为直接引用的过程。符号引用:符号引用以一组符号来描述所引用的目标。符号引用可以是任何形式的字面量,只要使用时能无歧义地定位到目标即可,符号引用和虚拟机的布局无关。个人理解为:在编译的时候一个每个java类都会被编译成一个class文件,但在编译...

2020-07-11 12:47:25 510

原创 类加载机制

类加载器: 如下图,类加载器分为三种,

2020-07-11 10:59:17 104

原创 Mock_拦截axios

请各位细品下面代码//ajaxaxios.request({method: 'get',url:'https://cdn.liyanhui.com/data.json'}).then(res => {console.log(res.data);});//mock拦截Mock.mock('https://cdn.liyanhui.com/data.json',{'list|5-10':[{'id|+1':1,'username': '@cname'.

2020-07-08 17:09:07 420 1

原创 AXIOS_安装和入门

一、技术说明axios.js 是一个基于promise 的 http 库,支持浏览器和Node环境; 传统的 ajax 技术无法满足前后端分离时代的新需求,而 axios 则在实现 ajax 功能的基础上得到了技术增强 一般使用 axios 来发送get/post请求,然后返回 json 格式数据二、安装测试安装方式:一种是node下运行,另一种是在浏览器下运行 node下运行,需要安装node环境,安装完毕,在项目下命令安装:npm install axios 如果在浏览器使用,可以先.

2020-07-08 16:11:28 778

原创 Mock_简单使用.js

一、技术说明为什么要使用这种技术? 对于前后端分离项目,后端工程师的API上线速度不匹配 前端工程师需要模拟数据接口,代替后端未上线的API Mock.js是一款模拟json数据的前端技术 官网:mockjs.com二、安装测试两种安装方式,一种是node下运行,另一种是浏览器中运行 如在node下运行,干燥node.js,官网:nodejs.org/zh-cn/; 安装知乎,在webstorm或者vscode测试node环境:node -v 创建Mock目录,先安装node下的mo

2020-07-08 09:41:35 421

原创 讲下yum、wget和apt-get的区别

一般来说著名的linux系统基本上分两大类:RedHat系列:Redhat、Centos、Fedora等Debian系列:Debian、Ubuntu等RedHat 系列常见的安装包格式 rpm包,安装rpm包的命令是“rpm -参数”包管理工具 yum支持tar包Debian系列常见的安装包格式 deb包,安装deb包的命令是“dpkg -参数”包管理工具 apt-get支持tar包yum可以用于运作rpm包,能够从指定资源服务器下载rpm安装包并自动安装,可以自动处理依赖关..

2020-07-07 20:13:16 512

原创 Linux下安装RabbitMQ

首先寄上安装包(有时间去官网溜溜https://www.rabbitmq.com/download.html,此处仅提供linux下的安装包):erlang环境(首先安装erlang运行环境)——https://www.rabbitmq.com/releases/erlang/erlang-18.3-1.el7.centos.x86_64.rpm socat密钥(rabbitmq依赖包)——http://repo.iotti.biz/CentOS/7/x86_64/socat-1.7.3.2-5.el

2020-07-07 19:56:38 103

原创 记录下遇到的各种状态码

405:如下图,一般是指无法解析request method 导致

2020-07-01 17:08:35 123

空空如也

空空如也

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

TA关注的人

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