前端速通
前端速通ES6
ECMAScript(ES) 是规范、 JavaScript 是 ES 的实现
ES6 的第一个版本 在 2015 年 6 月发布,正式名称是《ECMAScript 2015 标准》(简称 ES2015)
ES6 指是 5.1 版以后的 JavaScript 的下一代标准,涵盖了 ES2015、ES2016、ES2017 等等
let推荐使用let关键字替代 var关键字声明变量,因为 var存在诸多问题,比如:
越域123456{ var a = 1; let b = 2;}console.log(a); // 1console.log(b); // ReferenceError: b is not defined
重复声明12345678// var 可以声明多次// let 只能声明一次var m = 1var m = 2let n = 3// let n = 4console.log(m) // 2console.log(n) // Identifier 'n' has already been declar ...
Dubbo
Dubbo什么是DubboDubbo是阿里巴巴公司开源的一个高性能、轻量级的 Java RPC 框架
致力于提供高性能和透明化的 RPC 远程服务调用方案,以及 SOA 服务治理方案。
Dubbo主要特性
面向接口代理的高性能RPC调用:提供高性能的基于代理的远程调用能力,服务以接口为粒度,屏蔽了远程调用底层细节。
智能负载均衡:内置多种负载均衡策略,智能感知下游节点健康状况,显著减少调用延迟,提高系统吞吐量。
服务自动注册与发现:支持多种注册中心服务,服务实例上下线实时感知。
高度可扩展能力:遵循微内核+插件的设计原则,所有核心能力如Protocol、Transport、Serialization被设计为扩展点,平等对待内置实现和第三方实现。
运行期流量调度:内置条件、脚本等路由策略,通过配置不同的路由规则,轻松实现灰度发布,同机房优先等功能。
可视化的服务治理与运维:提供丰富服务治理、运维工具:随时查询服务元数据、服务健康状态及调用统计,实时下发路由策略、调整配置参数。
Spring Cloud 团队
Spring Cloud Alibaba
HTTP 短连接 重新 ...
RPC远程服务调用
RPC远程服务调用RPC的诞生
RPC远程过程调用(Remote Procedure Call)
调用远程计算机上的服务,就像调用本地服务一样。
1、首先我们调用需要知道jar包在哪里
2、所以我们需要一个注册中心,存放jar包的位置
3、当我们使用jar包的时候我们的controller层会先从注册中心中查询获得jar包的位置,然后再进行调用
后期会有框架封装这些操作,虽然代码上没有变化但是底层进行了封装。
RPC的JAVA版本–RMIRMI(remote method invocation),可以认为是RPC的java版本,允许运行在一个java 虚拟机的对象调用运行在另一个java虚拟机上对象的方法。
这是一个纯java版本的,如果你调用的对象不是java编写的,就无法利用RMI.
实现原理
RMI使用的是JRMP(Java Remote Messageing Protocol)协议, JRMP是专门为java定制的通信协议,所以是纯java的分布式解决方案
实现RMI程序步骤1、创建一个远程接口,继承java.rmi.Remote接口
2、实现远程接口,并继承UnicastR ...
固定思路详解
固定思路详解SpringbootSpringboot的依赖为什么可以不写版本号在父版本进入之后在进入父版本所依赖的父版本之后,发现里面写好了我们以后可能依赖的依赖的版本号,已经固定写好了,这里管理者所有依赖的版本,导入依赖之后不写版本就用这里的版本,有个版本号仲裁中心。
Springboot是怎么扫包的?在SpringApplication.run方法中传入了启动类的字节文件,还有参数,这里通过反射获得了启动类的注解@SpringBootApplication,而这个注解里面自动的功能,比如包扫描和自动装载。
而里面有个@EnableAutoConfiguration 就实现了自动包扫描,会获得包名然后,开始扫描。所以启动类必须覆盖所有与业务相关的类:启动类所在的包必须是业务类所在包的同包或者父包。如果没有覆盖,业务类就不会自动装配到IoC容器中。
Springboot如何配置呢?有一些默认的配置已经写好了都放在了所依赖的父项目中的仲裁中心里面,而springboot是在@SpringBootConfiguration里面有个@Import(AutoConfigurationImpor ...
Springboot
SpringbootSpring Boot 是一个快速开发框架,可以迅速搭建出一套基于Spring框架体系的应用,是Spring Cloud的基础。
Spring Boot开启了各种自动装配,从而简化代码开发,不需要编写各种配置文件,只需要引入相关依赖就可以迅速搭建一个应用
特点
1、不需要web.xml
2、不需要springmvc.xml
3、不需要tomcat,SpringBoot内嵌了一个tomcat
4、不需要配置JSON解析,支持REST架构
5、个性化配置非常简单
如何使用
Spring Boot 2.x要求必须基于Spring 5.x,要求java版本必须是8以上
Spring Boot的使用第一种方法是新建Maven工程然后在pom.xml中继承父项目
导入启动器Spring Boot的启动器实际上就是一个依赖。这个依赖中包含了整个这个技术的相关jar包,还包含了这个技术的自动配置,以前绝大多数XML配置都不需要配置了。当然了,启动器中自动配置无法实现所有内容的自动配置,在使用Spring Boot时还需要进行少量的配置(这个配置不是在xml中了,而是在pro ...
踩坑记录
mybatis创建SqlSessionFactory的bean实例失败的排查思路结果就出现问题了:mybatis创建sqlSessionFactory时,出现如下错误
意思是无法创建sqlSessionFactory的bean实例,sessionfactory作为mybatis的核心,创建不了实例,那还怎么玩下去!?于是马上想思路解决:
①xml配置写错;
②mapper路径写错;
123456<!--SqlSessionFactory--> <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"> <property name="dataSource" ref="dataSource"></property> <property name="mapperLocations" value=" ...
Mybatis
Mybatis主流的ORM框架,之前叫IBatis后来叫MyBatis,实现数据持久化的框架,同时支持Java .NET, .Ruby三种语言,MyBatis是一个对JDBC进行封装的框架。
ORM 框架 Hibernate,两个的区别:
Hibernate是一个全自动化的ORM框架,MyBatis是一个半自动化的ORM框架
全自动化:开发者只需要调用相关接口就可以完成操作,整个流程框架都已经进行了封装。
Hibernate实现了POJO和数据库表之间的映射,同时可以自动生成SQL语句并完成执行。
半自动化:框架只提供一部分功能,剩下的工作仍需要开发者手动完成,MyBatis没有提供POJO与数据库表的映射,只实现了POJO与SQL的映射关系,需要开发者自定义SQL语句,以及数据与POJO之间的装配关系。
虽然功能上没有Hibernate更加方便但是这种半自动化的方式提高了框架的灵活性
开发者可以根据具体的业务需求完成定制化的持久层解决方案
MyBatis对所有的JDBC进行了封装,包括参数设置,SQL执行,结果集的解析等,通过xml配置的方式或者注解的方式完成POJO与数据的映射。 ...
Vue2
Vue2 简介Vue 的安装和配置首先安装node在官网搜索然后安装node,可以安装16.x版本的,然后下载安装管理node版本的工具nvm也是在网上搜索安装下载即可,这里安装nodejs就好了
【2024最新版】最新node.js安装及环境变量+vue安装,手把手教学,非常简单,包教包会!!!_哔哩哔哩_bilibili
Vue.js - 渐进式 JavaScript 框架 | Vue.js (vuejs.org)
VUE是MVVM框架,他是渐进式框架,是初创公司的首选框架,是轻量级的,有很多根据Vue扩展的独立的功能或库
渐进是什么意思呢,用一个小例子来解释
1234567891011121314151617181920212223242526272829<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="wid ...
计算机网络
计算机网络计算机网络的概念什么是计算机网络计算机网络是一个将众多分散的、自治的计算机系统,通过通信设备与线路连接起来,由功能完善的软件实现资源共享和信息传递的系统
计算机网络、互联网、互连网的区别
计算机网络
集线器不能完成网络冲突的问题,现在很少使用了
互连网(internet)
互联网(Internet)
总结
计算机网络的组成和功能组成
硬件、软件、协议
这些主机也可以成为端系统都是硬件
网络适配器(网卡)
从工作方式来看
交换服务就是对网络内部资源的动态配置,选择负载低的线路等分配方式
从逻辑功能看
功能
电路交换、报文交换、分组交换
电路交换技术
电路交换技术的优缺点
电报网络(报文交换技术)
报文交换技术的优缺点
分组交换技术
分组交换的优缺点
三种交换技术的性能对比电路交换性能分析第二章物理层
物理层接口特性
典型的数据通信模型
数据通信的相关术语
三种通信方式
串行传输,并行传输
同步传输、异步传输
码元
数据传输速率的两种表示方法
练习题
带宽
奈氏准则和香农定理失真
失真的一种现象– 码间串扰
奈氏准则
香农定理
编码 调制基带信号 ...
Go语言
go语言为什么要学go语言,go语言优势1)能合理利用多核CPU的优势提升软件系统性能
2)复杂度低,维护成本低,简洁高效
3)c/c++运行速度快但是编译速度慢而且存在内存泄漏的一系列问题,go语言不会
go语言吉祥物-金花鼠Gordon
开发工具一开始使用VSCode1、VSCode
安装就不介绍了
2、使用VSCode
在盘符建立文件夹然后打开文件夹
3、创建go文件
在里面就能写代码了
4、开始编写代码
开发环境搭建1、搭建Go开发环境 - 安装和配置SDK
类似于java的JDK
SDK下载地址:Golang中文社区:
下载完后解压就能用了
整个目录就是SDK
测试SDK是否搭建成功1、进入控制命令台
2、验证SDK环境安装成功
3、配置系统环境变量
4、验证配置成功
第一段程序1、go基本项目结构
2、编写代码
3、要对源文件进行编译 go build java中用的是javac
4、执行操作
5、通过go run 可以直接进行编译并且执行
go语言执行过程分析
上述两种执行流程的方式的区别