自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 ECMAScript中平等比较标准,区分 == 和 ===

抽象平等比较 ==比较 x == y 的结果,x 和 y 是值,产生 true 或 false,判定规则顺序如下:如果 x 的类型与 y 的类型相同,则返回 x === y ,即进行严格平等比较如果 x 为null,y 为 undefined,则返回 true如果 x 为undefined,y 为 null,则返回 true如果 x 为数值类型,y 为字符串类型,则返回 x == ToNumber(y)如果 x 为字符串类型,y 为数值类型,则返回 ToNumber(X) == y如果 x

2020-08-28 14:59:10 276

原创 理解JavaScript基本数据类型symbol

symbol概念symbol是一个ES6标准种新增的一种基本数据类型,在JavaScript中,共有七种基本数据类型:string、number、bigint、boolean、null、undefined、symbol。并且除了null和undefined之外,每个基本类型都有其包装对象。symbol 的值是通过 Symbol() 函数生成,每一个 symbol 的值都是唯一的,并且 symbol 类型的值可以作为对象的属性标识符使用,这也是 symbol 类型设计的目的。所以现在对象属性名可以为两

2020-08-19 20:46:34 14640 2

原创 简述浏览器渲染原理

浏览器渲染原理浏览器渲染过程大致过程如下:1 浏览器获取 HTML 文件构建成文档对象模型树 DOM(Document Object Model)TreeDOM 树的构建是一个深度优先遍历的过程,当前节点的子节点全部构建才会构建下一个同级节点。DOM 的根节点为 document 对象。DOM 树的生成过程会被CSS和JS加载执行阻塞。解析过程的实际结束会触发 DOMContentLoaded 事件2 当解析到样式定义,不管是样式文件还是嵌入的 CSS 都会被解析成层叠样式表模型 CSSOM

2020-08-14 15:21:41 1407

原创 Nginx配置请求限制

Nginx配置请求限制nginx中有两个模块对请求进行限制:ngx_http_limit_conn_module 模块ngx_http_limit_req_module 模块其中:ngx_http_limit_conn_module 模块主要针对会话的并发连接数控制,例如限制每个IP的并发连接数。ngx_http_limit_req_module 模块可以限制给定会话的特殊情况下的请求数,例如配置特定时间间隔内每个IP的请求数量限制。ngx_http_limit_conn_module 模

2020-08-03 16:41:46 552

原创 聊一聊计算机网络基础

计算机网络基础概述计算机网络的核心内容即是网络协议,网络协议就是计算机网络中进行数据交换建立的规则、标准或者说是约定。OSI七层模型为了使不同的计算机厂家生产的计算机能够相互通信,国际标准组织(ISO)在1978年提出了“开放系统互联参考模型”,它将计算机体系结构的通讯协议分为七层,自下而上依次为:物理层(Physics Layer)、数据链路层(Data Link Layer)、网络层(Network Layer)、传输层(Transport Layer)、会话层(Session Layer)、表

2020-08-01 14:34:54 407

原创 简述java垃圾回收

java垃圾回收Java的垃圾回收机制作为Java的一大特性,这个机制让java程序员们不那么关心内存管理,有效的防止内存泄漏的问题什么是垃圾回收Java垃圾回收是通过一定的算法,找到jvm内存中没有被引用的对象,并将其回收释放其占用的内存空间什么样的内存可以被回收说此知识点前先简单说一下Java的内存模型:程序计数器(Program Counter Register)是一块较小的内存空间,它的作用可以看做是当前线程所执行字节码的行号指示器。是线程私有,生命周期与线程相同。

2020-07-30 20:25:43 1414

原创 简单理解JavaScript闭包

闭包(closure)MDN中的解释函数和对其周围状态(lexical environment,词法环境)的引用捆绑在一起构成闭包(closure)。也就是说,闭包可以让你从内部函数访问外部函数作用域。在 JavaScript 中,每当函数被创建,就会在函数生成时生成闭包。从技术角度讲,每个JavaScript函数都是闭包,因为他们都是对象且都关联到了作用域链。举个例子function f1(){ var n=999; function f2(){ alert(n); // 9

2020-07-28 20:35:02 161

原创 JavaScript事件循环机制

JavaScript事件循环机制JavaScript是单线程的,但JavaScript可以通过事件循环的机制来处理同步任务和异步任务概念执行栈JavaScript中函数调用会在栈中生成若干帧,帧也可以理解为一个执行上下文,包含函数的参数和函数可访问的局部变量,当完全执行完栈顶的函数,会将其弹出栈,并继续执行下面的函数。JavaScript中的任务分为两种,同步任务和异步任务,同步任务会在执行栈中按顺序执行,而异步任务进入任务队列中等待,当执行栈中的函数都执行完成后才会去队列中查找执行。执行栈中的

2020-07-28 19:26:37 264

原创 经典前端面试题

什么是prototype,什么是原型链JavaScript是动态语言,是基于原型的,并且JavaScript中只有一种结构,那就是对象,每一个实例对象(Object)都有一个__proto__的私有属性指向它的原型对象(prototype):function abc(){}var a = new abc();a.__proto__ === abc.prototype; // true在创建一个对象时,编译器会为对象赋值__proto__属性。层层向上,直到一个对象的原型对象为null,而规定nu

2020-07-25 23:12:22 167

原创 三分钟搞懂CSS定位

聊一聊CSS定位CSS定位即允许元素可以出现在相对正常位置外的其它位置,实现对元素位置控制的效果。CSS定位基本分为三种定位:普通文档流、浮动和绝对定位。普通文档流普通文档流即按照HTML的定义顺序完成排布,块级元素就从上往下排列,行内元素就从左到右依次排序。浮动浮动即给元素设置float属性,设置float的属性会脱离文档流,则该元素不会占用文档流中的空间,其它在文档流中的元素排布就会无视该元素,脱离文档流的元素也不能撑起父元素的高度。但float脱离文档流又不太完全,附近元素附件元素内的文

2020-07-16 20:53:11 538

原创 浅谈HTML几种布局方式

布局是前端比较基础但是也很重要的部分,过去传统的布局方案一般是通过基于盒子模型:然后配合display、position或float等属性进行布局。这种布局方式使用和理解起来是相对简单,但是我认为布局更复杂的布局场景和维护起来会比较困难。本文总结几种布局方式供参考:Flex 弹性布局、Grid网格布局和多列布局。没有适用所有场景的布局,只有合适的布局,在实际应用中多种布局方式灵活使用才能达到更好的效果。1. Flex弹性布局概念Flex布局指弹性布局,是一种一维的布局方式,提供了对子元素的空间分

2020-06-27 18:51:34 8820 1

原创 JavaScript中this究竟是个啥

js中的this是什么,相信有经验coder肯定都用过,但被问起来又似懂非懂的搞不清楚,实际上this在定义的时候还不能确定是什么,只有在调用之后才会被确定,可以说this指的就是他所属的对象,一般分几种情况单独的情况单独的情况下,this指的是全局对象,例如在浏览器窗口中:this === window // true函数中使用在函数中的this,指的是调用函数的对象,看几个例子:...

2020-03-29 14:31:44 211

原创 使用threejs开发微信小游戏全过程

我年前至今至今对微信小游戏尝了尝鲜,从开发到上线全流程做了一款小游戏。特做个记录分享给大家。​长文警告!全文共8527字,阅读此文会耗费不少时间。可收藏备用查看。小游戏目前只支持JavaScript一种语言,但JS的支持也并不完全,最主要的区别是小游戏BOM 和 DOM API,小游戏提供了canvas,支持2d和webgl,可操作性还是挺高的。需要注意的是小游戏可以同时创建多个...

2020-03-20 21:49:43 6246

原创 kudu集群安装配置

本次记录为在线安装kudu,需要所有机器联网。本次安装机器为三台虚拟机:master节点:192.168.20.133tserver节点192.168.20.133192.168.20.134192.168.20.135所有节点配置NTP服务NTP服务即Network Time Protocol网络时间服务,是用来同步集群中各个服务器的时间的协议。如果集群中的各个主机时间不...

2019-01-17 11:53:20 4148

原创 kudu可视化管理工具与kudu基础知识

kudu-plus kudu可视化工具Kudu是为Apache Hadoop平台开发的列式数据库。Kudu拥有Hadoop生态系统应用程序的常见技术属性:它可以商用硬件上运行,可横向扩展,并支持高可用性操作。kudu-plus是什么kudu-plus是笔者开发开源可视化管理kudu的工具,由于kudu虽然是列式数据库,但是可以表达成关系数据库类似的表和字段等信息,某种情况下通过可视化管理更加...

2019-01-10 17:11:14 5554 1

原创 yum常用命令

yum常用命令Yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及CentOS中的Shell前端软件包管理器。基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。显示已安装的软件包yum list installed查找可以安装的...

2019-01-08 13:33:17 164

原创 kafka和spark总结

kafka和spark总结本文涉及到的技术版本号:scala 2.11.8kafka1.1.0spark2.3.1kafka简介kafka是一个分布式流平台,流媒体平台有三个功能发布和订阅记录流以容错的持久化的方式存储记录流发生数据时对流进行处理kafka通常用于两大类应用构件在系统或应用程序之间可靠获取数据的实时数据管道构件转换或响应数据流的实时流应用程序k...

2019-01-08 09:46:36 3755

原创 centos安装RabbitMQ和spring cloud使用RebbitMQ发送和接收消息

centos安装rabbitmq:环境:centos7使yum包含EPEL库:rpm -Uvh https://download.fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpm下载repo:wget -O /etc/yum.repos.d/epel-erlang.repo http://repos.fedor...

2018-08-04 21:48:54 315

原创 VMware配置centos7固定IP和免费Xshell下载

VMware配置centos7固定ipVMware设置 菜单选择虚拟机(alt + M)-> 点击设置网络适配器选择NAT模式 菜单选择编辑(alt + E) -> 虚拟网络编辑器 -> 点击右下角更改设置选择VMnet8 -> 选择NAT模式(与虚拟机共享主机的IP地址)勾选“将主机虚拟适配器连接到此网络”取消勾选“使用本地DHCP服务器将IP地址分配...

2018-08-04 17:27:58 295

原创 使用java 8 Stream

使用java 8 Streamjava8中stream是对集合(Collection)对象的功能上的增强。提供对集合高效的聚合和过滤操作。支持串行和并行两种模式进行汇聚操作。stream并非集合元素,并不会保存数据,如同迭代器一样,单向的不可往复的,遍历一次即用尽。而与迭代器不同的是,stream可以进行并行操作。stream的构成:使用流的过程基本分为:数据来源(source)-&g...

2018-05-12 21:51:22 454

原创 WIN10 远程连接桌面凭据不工作解决办法

记录在使用win10远程连接桌面时遇到凭据连接不成功解决方法:进入“控制面板”->“凭据管理器”->“添加Windows凭据”->输入 要登录的服务器的IP地址、用户名、密码,点确定退出。...

2018-05-12 21:43:55 5782 1

原创 如何获取js异步请求返回值

使用定时函数模拟异步请求回调函数function doSomething(callback){ setTimeout(function(){ console.log('执行结束'); let result = 4; callback(result); },100);}function callback(result){...

2018-02-25 16:39:21 9490

原创 java8新特性实践

Lambda表达式Lambda允许把函数作为一个方法的参数(函数作为参数传递进方法中),或者把代码看成数据最简单的形式中,一个lambda可以由用逗号分隔的参数列表、–>符号与函数体三部分表示:Arrays.asList( 1, 2, 3 ).forEach( e -> System.out.println( e ) );Lambda可以引用类的成员变量与局部变量(如果...

2018-02-09 09:40:55 1228

原创 设计模式总结

设计模式什么是设计模式什么时候使用设计模式设计模式六大原则常见设计模式什么是设计模式设计模式是软件开发人员在软件开发过程中面临一般问题使用的解决方案。设计模式是在软件开发过程中反复积累经验的总结。一般在Java中使用居多,也可称为面向对象设计模式。什么时候使用设计模式笔者认为任何时候都需要先考虑设计模式,因为设计模式可以达到易扩展,易维护,可重用,易理解等优点

2018-02-07 17:12:14 223

原创 linux搭建分布式文件系统FastDFS并整合spring boot

linux搭建分布式文件系统FastDFS并整合spring boot目录FastDFS是什么FastDFS安装spring boot集成FastDFS上传下载文件FastDFS配置nginx问题&注意事项FastDFS是什么:是由C语言实现的开源轻量级分布式文件系统,实现了对文件管理,同步,访问,下载等功能,解决了大容量存储和负载均衡。其包含两个角色:Trac

2018-01-25 16:42:16 2937

原创 Linux中Nginx编译安装、卸载并添加到service中

nginx卸载删除相应文件夹和自启动即可nginx安装:wget http://nginx.org/download/nginx-1.12.1.tar.gztar zxvf nginx-1.12.1.tar.gz更改文件夹名称为nginxcd nginx./configuremakemake install覆盖二进制文件:cp objs/nginx /usr/local

2018-01-25 14:45:32 9378

原创 spring boot使用h2内存数据库,定义好sql脚本后执行乱码问题

最近在做一个演示demo时遇到的问题,使用spring boot配置内置h2数据库,预置数据sql执行,结果发现出现乱码问题。原因是在配置中没有指定sql的执行编码: datasource: platform: h2 schema:

2018-01-24 09:22:22 3863

转载 spring cloud读取配置文件

spring cloud读取配置文件spring boot支持多种外部配置命令行JNDI属性java系统属性,System.getProperties()环境变量jar包内部和外部的application-{profile}.yml或propertiesjar包内部和外部的application.yml或properties@Configuration注解类上的@Proper

2018-01-24 09:12:53 8340

原创 spring cloud 使用 Zuul实现过滤器

Zuul实现过滤器ZuulNetflix zuul作为API网关集成在spring cloud分布式集群中,是一个智能的应用服务器,对外暴露分布式中的请求调度和过滤,实现请求路由、负载均衡、与服务治理框架整合、请求转发的熔断机制和服务聚合等功能。过滤器类型:PRE:请求被路由之前被调用,身份验证ROUTING:将请求路由到微服务。POST:路由到微服务之后执行ERROR:在其

2018-01-24 09:08:46 4393 2

原创 spring cloud使用RabbitMQ配置消息总线

RabbitMQRabbitMQ window安装和使用安装Erlang安装RabbitMQRabbitMQ server安装之后会自动注册成为服务注意设置环境变量RABBITMQ_BASE为一个不含中文的路径Rabbit管理可以通过访问配置文件进行管理,也可以通过web进行管理。通过web进行管理:执行:rabbitmq-plugins enable rabbitmq_

2018-01-24 08:50:26 2905

原创 spring cloud使用spring data jpa配置druid做数据源和监控

druid数据源是非常好用的一款产品,有强大的监控和扩展功能,接下来就做一个在spring cloud中应用spring data jpa使用druid作为数据源和监控的服务提供者demo。spring cloud版本为Brixton.SR5,spring boot版本为1.4.0.RELEASEpom.xml<project xmlns="http://maven.apache.or

2018-01-06 15:28:38 7861

原创 Junit配合spring单元测试

单元测试好处不必说,Junit4和spring-test提供了更方便的方式。导入相关jar,注意版本<!-- Test Dependencies --><dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.12</version> <scope>test</s

2017-12-28 16:55:57 225

原创 HTTP状态码

总是会用到,留作备用。http状态码1XX临时响应,表示临时响应并需要请求者继续执行操作的状态代码100继续发送、101切换协议(例如使用websocket会切换websocket协议)、102执行中2XX表示成功处理请求的代码201已创建、202已接受(服务器已接受,但尚未处理)、203非授权、204无内容、205重置内容、206部分内容3XX重定向表示完成请求,需要进一步操作300多种选择

2017-12-28 16:13:24 213

原创 fetch配合java web配置CORS跨域

跨域:不符合浏览器同源策略的请求不能执行,同源即域名、协议、端口都相同。这里主介绍CORS。CORS两种请求:简单请求 simple request 请求方法为HEAD、GET、POST之中任意一个请求头只有以下字段 AcceptAccept-LanguageContent-LanguageLast-Event-IDContent-type (只限于用application/x-w

2017-12-27 09:29:22 1414

原创 java实现websocket

websocket是什么websocket是一种基于TCP的网络协议,实现了浏览器与服务器的全双工的通信方式。协议包括一个开放的握手以及随后TCP层上的消息帧。前端实现<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Insert title here</tit

2017-12-25 14:01:47 424

原创 React使用Next.js作服务器端渲染

React使用Next.js作服务器端渲染内容包含什么是React服务端渲染,为什么解决React SEO是否需要服务端渲染使用Next.js实现React的服务端渲染,基本语法 Next.js简介安装getInitialPropsjsx stylestatic静态目录两种路由方式自定义Head组件引入Ant design动态导入示例静态导出缓存Next.js整合dv

2017-12-20 20:12:15 4780 2

原创 React 16 新特性

2017年9月26日React 16发布,通过官网和示例了解一下新特性。React 16更新新js环境要求react16依靠Map和Set集合和requestAnimationFrame(一个针对动画效果的API)新功能- Fragments:render函数可以返回数组和字符串- error boundaries:错误处理- portals :支持声明性地将子树渲染到另一个DOM节点- c

2017-12-18 19:38:00 2530

原创 React组件的生命周期

概述React组件的生命周期就是React组件从创建到消亡的过程。大致分为三个阶段:1.Mounting 组件装载和初始化2.Updating 组件更新 3.Unmounting 组件卸载图例生命周期函数及其用法constructor(props, context){...}此函数对应图中getInitialState方法,由于React在ES6的实现中去掉了getInitial

2017-12-18 11:01:43 415

原创 js常用正则表达式

js正则表达式使用频率还是比较高,特此记录//邮箱/\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*///手机号码/^[1][0-9]{10}$///是否为汉字/^[\u4e00-\u9fa5]{0,}$///是否为字母/^[a-zA-Z]*$///是否为数字/^\d*$///字母数字组成的字符串/^[a-zA-Z0-9]*$///空行/n[s|

2017-12-17 12:51:58 311

原创 一台电脑开多个Tomcat

下载解压版Tomcat安装配置好jdk记事本打开tomcat/bin/startup.bat前两行加入:SET JAVA_HOME=C:\soft\java8SET CATALINA_HOME=C:\soft\apache-tomcat-7.0.82修改tomcat/conf/server.xml修改几处: <!-- <Server port="8005" shutdown="SHUTD

2017-12-14 14:33:10 166

空空如也

空空如也

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

TA关注的人

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