自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 docker基础

该笔记来自B站狂神-docker学习记录,文章没多少干货,只是作一次学习记录。

2022-11-23 12:50:58 651 1

原创 RabbitMQ

该笔记来自B站SGG-RabbitMQ学习记录,文章没多少干货,只是作一次学习记录。

2022-11-19 19:06:50 1020

原创 TypeScript基础及使用

【代码】TypeScript基础及使用。

2022-11-06 12:14:36 530

原创 Redis6.x

1. Redis 是一个开源的key - value存储系统 2. 支持存储的value类型包括: String(字符串) 、 List(链表) 、 Set(集合) 、 ZSet(sorted set - 有序集合) 、 Hash(哈希) 且这些数据类型都支持push / pop、add / remove及取交集并集和差集及更丰富的操作,而且这些操作都是原子性的 3. Redis 会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件,且在此基础上实现了master - slave(主从) 同步。

2022-10-25 14:23:00 358

原创 MyBatisPlus3.x

该笔记来自B站SGG-MyBatisPlus学习记录及MP官网,文章没多少干货,只是作一次学习记录。

2022-10-18 14:21:27 624 1

原创 Mybatis汇总

mybatis

2022-06-13 20:46:45 275

原创 SpringMVC汇总

SpringMVC

2022-06-13 20:29:48 257

原创 Spring5(AOP&JdbcTemplate&NewFunc)

该笔记来自B站SGG-Spring5学习记录及Spring中文网,文章末贴出链接2022.05.21面向切面编程(AOP)AOP 的全称是“Aspect Oriented Programming”,译为“面向切面编程”,和 OOP(面向对象编程)类似,它也是一种编程思想。 与 OOP 中纵向的父子继承关系不同,AOP 是通过横向的抽取机制实现的。它将应用中的一些非业务的通用功能抽取出来单独维护,并通过声明的方式(例如配置文件、注解等)定义这些功能要以何种方式作用在那个应用中,而不是在业务.

2022-05-27 14:04:03 357

原创 Spring5(base&IOC)

该笔记来自B站SGG-Spring5学习记录及Spring中文网,文章末贴出链接2022.05.12Spring1. 广义 泛指以 Spring Framework 为核心的 Spring 技术栈。例如 Spring Framework、Spring MVC、SpringBoot、Spring Cloud、Spring Data、Spring Security 等,其中 Spring Framework 是其他子项目的基础。2. 狭义 特指 Spring Framework,通常我们将它.

2022-05-19 19:31:25 359 2

原创 JavaWeb(JSP&Filter过滤器&CookieSession&JSONi18n&三层架构&文件上传下载&分页&对应JAR)

2022.05.01关于JavaBeanhttps://www.delftstack.com/zh/howto/java/java-bean/关于数据库连接池https://www.cnblogs.com/wenxuehai/p/15058811.html关于读取配置文件https://juejin.cn/post/6844904193489109006关于java2mysql数据库驱动jdbc因为我用的是Mysql 8.x,因此驱动包版本变化了( mysql-connector-java-

2022-05-11 17:18:41 614 1

原创 JavaWeb(Tomcat&Servlet)

该笔记来自B站SGG-JavaWeb学习纪录,文章末贴出链接2022.04.25如何修改tomcat在idea中乱码问题https://blog.csdn.net/mr_liuhailong/article/details/110264765如何解决tomcat热部署问题https://blog.51cto.com/u_10624715/3234220如何在idea里导包https://blog.csdn.net/a755199443/article/details/89192230如何.

2022-04-30 11:49:05 201

原创 mysql练习

2022.04.1234道作业题部门表: dept+--------+------------+----------+| DEPTNO | DNAME | LOC |+--------+------------+----------+| 10 | ACCOUNTING | NEW YORK || 20 | RESEARCH | DALLAS || 30 | SALES | CHICAGO || 40 | OPERATI

2022-04-16 10:46:37 619

原创 mysql

2022.03.23关系型数据库1.数据以表格的形式出现2.每行为各种记录名称3.每列为记录名称所对应的数据域4.许多的行和列组成一张表单5.若干的表单组成databasemysql数据类型mysql数据类型大致分为三类: 1. 数值 2. 日期/时间 3. 字符串(字符)创建表创建表需要以下信息:1. 表名2. 表字段名3. 定义每个表字段CREATE TABLE IF NOT EXISTS `runoob_tbl`( `runoob_id` INT U

2022-04-11 11:34:10 594

原创 java基础3-集合

集合1. 含义 我理解的Java集合就是针对我们传统的"数据结构"进行的实现,是一个数据结构类库。 Java集合类库也将"接口"(interface)与"实现"(implementtaion)分离2. Collection接口 集合类的基本接口是Collection接口。 public interface Collection<E>{ boolean add(E element); Iterator<E> iterator

2022-03-04 15:11:52 415

原创 java基础2

类与对象1. 访问器方法 只访问对象而不修改对象的方法有时称为"访问器方法",而修改对象的方法称为"更改器方法"2. 构造器 2.1 构造器与类同名 2.2 每个类可以有一个以上的构造器 2.3 构造器可以有0个、1个或者多个参数 2.4 构造器没有返回值 2.5 构造器总是伴随new操作符一起调用3. 类方法的隐式参数和显式参数 隐式参数:当前类对象,也就是this 显式参数:方法括号中的参数 4. 方法参数使用情况

2022-01-27 14:42:53 753

原创 java基础1

由于公司内部转岗 准备从前端转Java 但是前端也不准丢下 早在刚出来的时候搞过Java和oracle 但是现在基本都忘掉了 因此准备从头开始把Java的基础抓起来基本理论1. JDK LTS(官方长期支持版本) JDK8\JDK11\JDK17 2. Java和Javac工具windows下一般为Java.exe和Javac.exe其中Java.exe为“执行工具” Javac.exe为“编译工具” 一般情况下,在我们编写了Xxx.java源码后,使用Javac来编译该代码,.

2022-01-17 09:58:20 107

原创 context&unstated&unstated-next

2021.11.25原生Context1. 使用场景 Context 提供了一个无需为每层组件手动添加 props,就能在组件树间进行数据传递的方法。 需要注意场景是否应该使用Context,因为这样会使用组件复用性变差,或许render props可以解决问题。2. 如何使用 2.1 // context.js const ShareContext = React.createContext(defaultValue) // 创建一个Context对象 带一个默认的value 是当

2021-12-02 09:03:50 809

原创 Webpack5梳理

1. 工程化发展npm scripts -> Grunt -> Gulp -> Fis3 -> webpack(RollUp&vite)2. 起步webpack1. webpack已经发布到5了,但整体配置思路没变化,新建空文件夹 "执行npm init -y" 初始化npm info 生成package.json文件 "npm i webpack webpack-cli -D"开箱情况下: webpack默认入口文件读取当前目录下的src

2021-11-29 11:37:23 339

原创 babel梳理

2021.11.01babel的作用babel是一个工具链,主要将我们业务里面使用的ES6\ES7\ES8等等语法来编写的代码转换为向后兼容的javascript语法,比如转换成ES5 1. 语法转换 2. 通过垫片(polyfill)方式在目标环境中添加缺失的特性(比如babel-core负责转换语法部分,但是api未转换,此时我们就需要引入第三方polyfill模块,比如core-js) 3. 源码转换通俗点就是比如ES6+的语法转换(如使用箭头函数->普通函数,let,const-&

2021-11-25 15:21:41 986

原创 浏览器相关知识3

内容整理来自极客时间李兵老师所讲专栏《浏览器工作原理与实践》极客时间css是如何影响首次白屏时间的?解析HTML -》下载css -》下载js -》生成cssom -》执行js -》生成布局树 -》绘制页面通过内联 JavaScript、内联 CSS 来移除这两种类型的文件下载,这样获取到 HTML 文件之后就可以直接开始渲染流程了。对于大的 CSS 文件,可以通过媒体查询属性,将其拆分为多个不同用途的 CSS 文件,这样只有在特定的场景下才会加载特定的 CSS 文件。如何.

2021-06-23 17:50:51 246 1

原创 浏览器相关知识2

内容整理来自极客时间李兵老师所讲专栏《浏览器工作原理与实践》极客时间栈空间和堆空间(js数据是如何存储的)在声明变量之前需要先定义变量类型,我们把这种在使用前就需要确认变量数据类型的称为“静态语音”;而相反地,我们把运行过程中需要检查数据类型的语言称为动态语言(javascript就是个动态语言)支持隐式类型转换的语言被称为“弱类型语言”(javascript),而不支持隐式类型转换的语言称为“强类型语言”在javascript的执行过程中,主要有三种类型内存空间,分别是代码空间,栈空.

2021-06-23 15:20:31 1030 1

原创 浏览器相关知识1

内容整理来自极客时间李兵老师所讲专栏《浏览器工作原理与实践》极客时间浏览器中的进程与线程进程:一个进程就是一个程序的运行实例。详细解释就是,启动一个程序的时候,操作系统会为该程序创建一块内存,用来存放代码、运行中的数据和一个执行任务的主线程,我们把这样的一个运行环境叫进程。线程:1. 线程是不能单独存在的,它是由进程来启动和管理的。2. 线程是依附于进程的。进程与线程之间的关系:1. 进程中的任意一线程执行出错,都会导致整个进程的崩溃。2. 线程之间共享进程中的数据。3. 当一个.

2021-06-22 14:34:39 252

原创 JS类型-typeof-instanceof-隐式转化

基本类型(原始类型): 1. String,Number,Boolean,null,undefined,Symbol,BigInt 2. 是指存放在栈内存中的简单数据段,数据大小确定,内存空间大小可以分配,它们是直接按值存放的, 所以可以直接按值访问。引用类型: 1. Array,Function,Date,RegExp等等 2. 其“变量名”保存在“栈内存”中,其真实值保存在“堆内存”中 而栈中的值保存的是指向“堆内存”的地址 也就是“指针” typeof: 1. 针

2021-04-29 16:58:19 124

原创 选择排序&快速排序(JS)

选择排序首先在未排序序列中找到最小(大)元素,存放到排序序列的起始位置,然后,再从剩余未排序元素中继续寻找最小(大)元素,然后放到已排序序列的末尾。以此类推,直到所有元素均排序完毕。选择排序的思想其实和冒泡排序有点类似,都是在一次排序后把最小的元素放到最前面,或者将最大值放在最后面。但是过程不同,冒泡排序是通过相邻的比较和交换。而选择排序是通过对整体的选择,每一趟从前往后查找出无序区最小值,将最小值交换至无序区最前面的位置。平均时间复杂度:O(N^2)最佳时间复杂度:O(N^2)最差时.

2021-04-22 14:25:46 315

原创 插入排序(JS)

平均时间复杂度:O(N^2)最差时间复杂度:O(N^2)空间复杂度:O(1)排序方式:In-place稳定性:稳定/** * 基础插入排序 - 方法1 * @param {*} arr 数组 [3, 1, 5, 4, 7, 6, 0, 2] * @returns sort-arr */console.time('insertSort1');var arr1 = [3, 1, 5, 4, 7, 6, 0, 2];console.log('原数组', arr1);var insert

2021-04-21 14:01:17 258

原创 冒泡排序(JS)

/** * 基础冒泡排序 - 方法1 * @param {*} arr 数组 [3, 1, 5, 4, 7, 6, 0, 2] * @returns sort-arr */console.time('bubbleSort1');var arr1 = [3, 1, 5, 4, 7, 6, 0, 2];console.log('原数组', arr1);var bubbleSort1 = arr => { let len = arr.length; if (len <= 1)

2021-04-20 17:26:23 130

原创 vue2.x(watch&computed)

如何理解computed和watch?computed&watch源码分析date: 2021-04-06下面我根据一个简单的例子 来重头分析<span>{{getMessage}}</span><span>{{otherMessage}}</span>{ data:{ message:'我是初始化值', otherMessage:'我是另一个初始化值' }, computed:{ getMessage

2021-04-13 09:29:25 130

原创 vuex(v3.6.2)源码梳理

如何理解vuex源码?// vuex 源码分析// date:2021-04-011. Vue.use(Vuex)2. -> 调用install插件机制安装Vuex 内部调用applyMixin3. -> Vue2.x以上采用Vue.mixin混入到beforeCreate Vue1.x 重写_init方法并添加到options.init4. new Vuex.Store(options)5.

2021-04-12 09:49:55 496

原创 vue-router(3.5.1)源码梳理

如何理解vue-router源码?vue-router 源码分析date: 2021-03-261. import Vue VueRouter 进来2. 使用Vue.use(VueRouter) 来进行router的install -> 使用mixin混入每个组件钩子“beforeCreate”&“destroyed”

2021-04-09 09:55:51 3003

原创 vue2.x(diff算法)

如何理解vue中的diff算法?// 1. 初始化 源码 8434行var platformModules = [attrs, klass, events, domProps, style, transition];// 源码 6680行var baseModules = [ref, directives];// 源码 8447行var modules = platformModules.concat(baseModules);var patch = createPatchFunction({

2021-04-08 09:29:15 226

原创 vue2.x(虚拟dom&vnode)

如何理解vue中的vnode虚拟dom?return _c( 'div', { attrs: { id: 'app' } }, [ _c('span', { on: { click: onClick } }, [_v('我是data数据' + _s(message))]), _v(' '), // 没整懂 为啥每个中间都夹杂个空VNode(在编译阶段时 遇到同级兄弟节点 会默认生成一个空本文节点) _l(dsArr, function (item

2021-04-07 09:21:34 278

原创 vue2.x(compile)

如何理解vue2.x中的编译?拿到html模板字符串 -> 进行一系列的正则截取字符串并根据当前属性来构造children类型 -> 每个标签同级变换时都会额外的构造一个空的文本节点 -> 生成以with包裹的函数处理匿名函数在19号那天我们分析了如何作响应式数据,继续下去如何编译?在平常的开始中我们一般在mouted生命钩子函数里面作业务逻辑处理,是因为在mouted钩子回调时当前页面下我们已完成模板的绑定页面dom已根据vue完全生成真实dom源码9039行// 1.1 最初始

2021-04-06 09:43:56 254

原创 vue2.x(data&watcher&dep)

如何理解vue2.x中的响应式数据?要讲响应式我们只有从data上入手 先本地起一个简易vue<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document</title>

2021-04-02 09:41:58 251

原创 vue2.x(scoped-style)

vue中如何做到局部style不污染全局样式?说说它的原理?① 在一般的开发过程中 我们使用scoped来标识当前组件的局部样式② scoped属性是HTML5中的新属性 属性值是一个布尔属性 若使用该属性 则样式仅仅应用到style元素的父元素及其子元素 但是目前就只有firefox支持这个特性 其他浏览器都不支持<div> <style type="text/css" scoped> h1{color:red} p{color:blu

2021-04-01 09:40:13 213

原创 vue2.x(静态资源引入&本地&生产)

vue中如何图片等静态资源如何引入代码中?如何解决打包后部署js,css文件404?静态资源图片路径找不到?publicPath设置原理?① 静态资源如何引入代码中(分为src/assets & public)首先说说这两个文件夹区别:当放在public中时是不经过webpack打包编译 原样输出到dist里面 而src/assets中会经过webpack处理比如base64等等<template> <div id="app"> <strong>

2021-03-31 13:49:48 3028

原创 vue2.x($nextTick)

this.$nextTick平时怎么使用的?说说它的原理?① vue的DOM更新是异步更新的(为什么设计成异步更新?因为比如我们在created钩子函数里面100次循环设置this.xxx=i,若不是异步那岂不是需要触发100次响应dom更新,这里也是优化方案之一),比如我们在执行了this.xxx=1,这个时候去拿dom上的xxx值结果还是原来的值而非刚刚设置的1,此时我们需要使用this.$nextTick在callback中拿就没问题了② 原理:源码1905行~源码2007行源码1984行 执

2021-03-30 17:22:17 97

原创 vue2.x(data&use)

vue中是什么时候我们操作this.xxx会映射到this._data.xxx身上?源码4998行 声明周期函数beforeCreate被调用 也证实了在这个周期里面我们拿不到options所有相关的东西源码5000行 initState(vm) 开始初始化options 源码4635行 按props->methods->data->computed->watch顺序进行每项的初始化init源码4699行 这里拿到data赋值给了vm._data,遍历每个data里面声.

2021-03-29 09:30:36 110

原创 v-model原理

v-model原理?(2021/01/05)①是个一般作用于“表单元素”及“组件”上面指令,来创建双向数据绑定;②说穿了就是v-bind:xxx及v-on:xxx的快捷语法糖(等价于动态增加prop+dom绑定事件);<p>{{inputValue}}</p><input v-model="inputValue"/>改版:<p>{{inputValue}}</p><input v-bind:value=”inputValue”

2021-03-26 09:41:25 114

原创 redux-saga基础理解

安装redux-saganpm install redux-saga -S引入redux-sagaindex.jsimport { createStore, applyMiddleware } from 'redux';import createSagaMiddleware from 'redux-saga'// 引入我们创建得sagaimport { helloSaga } from './saga'// 创建saga中间件实例const sagaMiddleware = cr.

2020-07-10 11:15:49 339

原创 redux、react-redux、中间件基础知识记录

cra快速创建项目npx create-react-app 项目名称安装reduxnpm install redux -Sredux三大原则单一数据源:整个应用的 state 被储存在一棵 object tree 中,并且这个 object tree 只存在于唯一一个 store 中。State 是只读的:唯一改变 state 的方法就是触发 action,action 是一个用于描述已发生事件的普通对象。使用纯函数来执行修改:Reducer 只是一些纯函数,它接收先前的 sta.

2020-07-08 18:02:11 152

空空如也

空空如也

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

TA关注的人

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