- 博客(76)
- 收藏
- 关注
原创 three.js之初识three.js
WebGL(英语:Web Graphics Library)是一种3D绘图协议,这种绘图技术标准允许把JavaScript和OpenGL ES 2.0结合在一起,通过增加OpenGL ES 2.0的一个JavaScript绑定,WebGL可以为HTML5 Canvas提供硬件3D加速渲染,这样Web开发人员就可以借助系统显卡来在浏览器里更流畅地展示3D场景和模型了,还能创建复杂的导航和数据视觉化。
2023-10-17 09:15:27
370
原创 SpringCloud浅学习
DDD是一种软件架构设计方法,它并不定义软件开发过程DDD利用面向对象的特性,以业务为核心驱动,而不是传统的数据库开发领域是对功能需求的划分;大的领域下面还有很多小的子领域(比如电商下边还有商品,订单,账户,物流等)分析领域模型,推演实体,值对象,领域服务找出聚合边界(降低服务耦合)为聚合配置存储仓库(数据持久化)实践DDD,并不断推倒和重构。
2023-09-07 17:40:55
523
1
原创 SpringBoot整合Rabbitmq
消息队列这个词可能在JS中听到过,消息队列主要是将不需要同步除了的并且耗时长的操作由消息队列通知消息接收方进行异常处理。消息队列还可以将应用程序解耦市面上常见的消息队列有:ActiveMQ,RabbitMQ,ZeroMQ,Kafka。
2023-05-26 17:19:27
1015
1
原创 redis命令记录
Rediusredius是基于内存的noSql数据库。优势:读写分离操作 搭建集群 单线程 支持高并发目前缓存的主流救赎RedisMemcachedmongoDB区别?很早出现的nosql数据库,数据都是存在内存中,不能持久化,支持的类型单一。Redis安装(Linux)1.首先下载压缩包 2.上传到服务器 3.进行解压 4.解压完成之后,...
2023-05-18 18:33:18
638
2
原创 初识Spring
highlight: androidstudiotheme: github初识SpringSpring是分层的(控制层/业务层/数据访问层) 对每一层都提供了技术支持。以Ioc(控制反转,可以看IOC设计模式)和Aop(面向切面编程)为内核。Spring实际上是一个大容器,包含了开发java程序所需的各种技术。用来解决企业级项目开发的复杂度问题-解耦特点:轻量级,体积...
2023-04-21 16:28:42
181
原创 Servlet的过滤器和监听器&&上传和下载
Cookiecookie就是客户端保存的数据,客户端每次发起请求时会携带cookiecookie保存的大小只有4k,同一域名下的cookie数量不能超过50个,浏览器可以存储cookie的数量为300个当用户第一次登录时,服务端会创建cookie,然后返回给客户端,并且存储在客户端。添加cookie添加cookie 需要在response上操作```java //首先新建...
2023-04-12 17:23:37
144
原创 javaweb之jsp
jsp什么是jsp在很多动态网页中,绝大部分内容都是固定不变了,只有局部内容需要动态产生和改变,为了弥补Servlet的缺陷,SUN公司在Servlet的基础上推出了jsp。jsp的本质就是一个Servlet,运行时会自动编译为java文件jsp脚本声明脚本声明脚本,用于声明全局变量/方法声明的全局变量/方法,会被定义在当前将被生成的Servlet类的全局变量里,方法之...
2023-04-06 09:25:39
105
原创 Servlet
Tomcat关于Tomcat的介绍可以去性能测试初始那个部分看Tomcat安装 && Idea配置(windows)### Tomcat安装 首先到apache去进行安装下载tomcat配置环境变量 配置完环境变量之后windows : win+r startup 开启tomcat linux : sh catalina.sh run 开启tomcat...
2023-04-03 09:11:12
77
原创 性能测试初识&&环境部署
性能测试初步认识系统的性能是一个很大的概念,覆盖面非常广泛,对一个软件系统而言包括执行效率,资源占用,稳定性,安全性,兼容性,可扩展性,可靠性等等。性能测试用来保证产品发布后系统的性能满足用户需求。性能测试在软件质量保证中起重要作用。生产性能故障的原因通常由于体系结构或设计问题造成。性能问题在开发过程的早期已经引入,而大部分开发团队直到集成测试或更晚的时候才予以考虑测试人员不够...
2023-03-28 17:02:19
277
原创 JAVA之JDBC的使用
初识JDBCJDBC(Java Database )是java提供的访问数据库的解决方案提供这种方案是希望用相同的方式访问不同的数据库,以实现与具体数据库无关的java操作界面JDBC定义了一套标准接口,即访问数据库的通用API ,不同的数据库厂商根据各自数据库的特点实现这些接口,然而在JDBC这些接口的实现类不叫实现类,叫驱动接口里的内容DriverManager 驱动管理...
2023-03-14 20:37:46
659
原创 Mysql&&Oracle
数据库DB (dataBase) 数据库DBMS (dataBase Manger System) 数据库管理系统关系型数据库常见的数据库管理系统比如:mysql(免费,开源) Oracle(付费,支持windows,unix,Os等多种平台)\sqlServer(微软,只能运行在windows)非关系型数据库(数据在虚拟内存里)Rediussqlsql 可以用来在关系...
2023-03-11 15:08:09
187
原创 java与XML
XMLxml是可扩展标记语言,是独立于软件和硬件的信息传输工具xml应用于web开发的而许多方面,用于简化数据的存储和共享(代替xml的是json)xml简化数据共享,简化数据传输,简化平台的变更。在java程序中,xml可以作为应用程序的配置文件,存储应用程序的配置信息,应用案例比如:Spring框架中的application.xml,Mybits框架中的映射配置文件初识XM...
2023-03-06 19:46:18
254
原创 java多线程&&设计模式浅了解
多线程一个进程就是一个正在运行的程序。 线程就是进程中的执行单位。 一个进程里可以有多个线程故而称之为多线程(一个线程只属于一个进程)。 线程执行相当于去抢cpu执行的,当执行一个线程未执行完事可能下一个线程开始执行了。线程创建java中线程创建的方式有两种:一种是集成Thread类,如果类继承了Thread类那么这个类就被成为线程类,一种是实现接口继承Thread类...
2023-02-28 20:44:48
122
原创 c++之类和对象
内存分区模型代码区:存放函数体的二进制代码,由操作系统进行管理。 全局区:存放全局变量和静态变量以及全局常量 栈区:由编译器自动分配释放,存放函数的参数值,局部变量等 堆区:由程序员分配和释放,若程序员不释放程序结束时由操作系统回收。 内存四区存在的意义: 不同区域存放不同的数据,赋予不同的生命周期程序运行前在程序编译后,生成了ex...
2022-11-11 22:13:41
144
原创 c++基础
变量变量存在的意义:方便我们管理内存空间## 声明变量 数据类型 变量名=变量值;```c++include using namespace std;int main(){ int a=10; cout<<"Hello,C++"<< a <宏常量#define 常量名 常量值; 通常在文件的上方定义cons...
2022-11-06 16:08:40
85
原创 java反射机制,流和注解
反射机制java程序完整的跑出来有两个时期:编译期和运行期。编译期就是把java文件编译为可执行代码,就是把java文件变为class文件。运行期就是把编译后的文件交给计算机执行。反射机制就是在运行期中,对于任意一个类或者任意一个对象,都能够知道它的属性和方法,这种动态获取信息及调用方法称为反射机制。java反射机制在服务器程序和中间件程序有很多运用,在服务器端根据客户的请求动...
2022-10-30 10:57:23
109
原创 java的集合,泛型和枚举
集合因为java的数组是不可以动态去增删的,所以java提供了集合类,集合里可以保存基本类型的值(集合里不能存放基础数据类型,如果要存储基础数据类型须要存储基础数据类型的包装类),也可以保存对象。java的集合类型分为Collection类和Map类,它俩有衍生了很多子接口和类集合接口 Iterator 遍历输出Collection集合中的元素 Collection 是li...
2022-10-27 16:05:59
159
原创 java异常处理
异常处理异常处理是在程序运行时如果产生异常的一种处理。java中的异常产生主要有三种情况:1.java虚拟机产生的异常2.编写的程序代码中的错误所产生的异常。3.通过throw语句手动生成的异常javapublic class throwTest {public static void main(String [] args){ System.out.printl...
2022-10-25 17:47:48
95
原创 java之继承和多态
继承和多态继承和多态是面向对象非常重要的一个环节,继承能够复用一些定义好的类,减少代码冗余量,多态可以动态调整对现象的调用,降低对象之间的关系类的封装封装就是将类的某些信息隐藏在类内部,不允许外部程序直接访问,只能通过该类提供的方法来实现对隐藏信息的操作和访问。封装的步骤一般是,对属性设置private 。为每一个属性创建get和set方法,用于属性的读写,在赋值和取值方法中加入对...
2022-10-24 20:15:04
115
原创 java的类和对象
类和对象## 面向对象 在java里一切皆视为对象,对象具有属性和方法,对象具有唯一性,对象是某个类的实例 ## 面向对象的三大特性 继承,封装,多态 ### 继承 继承通过extends关键字来实现 继承就是子类可以继承父类的属性和方法,比如A类和B类有一些共同的属性和方法,如果写两个类就会造成代码的冗余量高,代码重复,所以我们可以将A和B共同的属性和方法都放在C类里,然后A类...
2022-10-22 20:59:15
84
原创 java之基本数据类型的包装类
包装类java是面向对象的语言,即一切皆对象,即使是基础数据类型也有相对应的类,称之为包装类。byte-Byteshort-Shortint-Integerlong-Longchar-Characterfloat-Floaddouble-Doubleboolean-Boolean将基本数据类型转换为包装类称之装箱,将包装类转换为基本数据类型称之为拆箱java ...
2022-10-20 18:05:46
165
原创 java数学运算和日期类
MathMath类是java提供给我们的用于数学运算的工具静态常量Math类中包含E和PI两个静态常量,E表示自然对数,PI表示圆周率 ```javaSystem.out.println(Math.E); System.out.println(Math.PI);```数学方法abs(number) 绝对值max(x,y) 最大值min(x,y) 最小值c...
2022-10-20 11:07:17
111
原创 Java基础学习字符串and数组
数组声明数组一维数组java如何声明数组 java声明数组跟c语言有点相似 例子: ```Java int [] 数组名称={数组项1,数组项2};// 首先先声明数组的类型然后写一个 [] 然后数组的名称= {数组的内容1,数组的内容2}String [] //字符串数组double [] //双精度数组//上面是直接给数组赋值的方式int [] ...
2022-10-19 14:42:42
213
原创 nodejs之process(进程)
processprocess是nodejs用来控制和管理进程的工具。 ## beforeExit 当node清空其事件循环,没有额外的工作要安排时会触发beforeExit事件。也就是说当nodejs没有事情要做,或者其他的事情都做完了之后会触发beforeExit事件。JavaScriptconst process=require('process');process.on('...
2022-05-14 21:13:41
519
原创 nodejs之path && os && url
pathpath模块提供了,提供了处理文件和目录的路径, path在node做服务端免不了要处理文件需要用到 path在打包和输出文件也需要用到basenamebasename 返回字符串,返回的是输入路径的最后的文件名 basename接收一个参数,文件的路径JavaScriptconst {basename}=require('name');console.log(...
2022-05-12 21:56:52
88
原创 nodejs之http模块
httpnodejs提供给了我们http模块,http有两个作用1、搭建服务端,express就是基于http.createServer2、做客户端,向其他服务端请求Agent模块http协议是通过,浏览器发送请求,服务端 响应请求这种方式交互,每次交互都需要进行,建立-传输-销毁的过程,http提供了持久连接即已经通过的连接可以重复使用,在客户端这个操作是浏览器完成的,但是在...
2022-05-11 17:18:10
270
原创 node.js之EventEmitter
events(事件触发器)events是node内置的事件触发器,在node的内置模块里很多都用到了events,比如http.server在每次接受到请求时触发事件,还有stream就是基于事件的使用on来监听对应的事件。 所有触发事件的对象都是EventEmitter实例,这些对象暴露了EventEmitter.on('事件',callback),通常使用EventTmitte.on...
2022-05-07 17:53:33
76
原创 node.js之Stream
流(Stream)## 什么是流 流(stream)在 Node.js 中是处理流数据的抽象接口(abstract interface)。 stream 模块提供了基础的 API 。使用这些 API 可以很容易地来构建实现流接口的对象。为什么要使用流?举个例子,有A,B两个水桶,A水桶里装满水(我们把A水桶里的水视为需要返回给客户端的内容),B水桶是一个空桶(客户端),我们要...
2022-05-06 17:53:45
201
原创 nodejs之assert使用
assert## 什么是assert assert是一种断言库,是一种用来做单元测试的工具,断言库是单元测试的重要组成部分,在编写单元测试代码时,通过断言库来描述代码逻辑的预期效果,从而验证代码逻辑的正确性。 ## 什么是单元测试 维基百科是这样解释的:单元测试是针对程序的最小单元,比如变量,来进行正确性检验的测试工作。程序单元是应用的最小可测试部件。一个单元可能是单...
2022-05-04 17:43:39
228
原创 nodejs 图片转换,批量压缩图片,上传图片
使用fs实现base64 与png/jpg/jpeg 互相转换### png与jpg转换```JavaScript// 因为要用到异步操作所以需要用到util.promisify将函数转换//第一种写法,const util = require('util')const readFile=util.promisify(fs.readFile)readFile('./index.p...
2022-05-01 18:30:11
251
原创 node之fs模块使用
fsfs是node中的内置模块,是用来对文件进行读写,复制,删除,重命名,创建文件,文件夹等操作的使用fs### stat (检查是文件还是文件夹)javaScript var fs=require('fs');fs.stat('./module',(err,data)=>{ if(err){console.log(err)} if(data.i...
2022-04-30 17:29:31
70
原创 npm(babel-loader之babel/core)
babel/corebabel-loader的transform是通过引入babel/core的transform进行代码转换的,然而babel/core的transform里又进行了一次封装通过trasnformamation进行转换,babel/core实际上的作用就是调用babel的插件转换代码后将代码返回```JavaScript"use strict";//babel/tran...
2022-04-27 21:14:44
274
原创 npm(babel-loader)源码解析
babel-loaderbabel-loader是用来将Es6语法转换成Es5语法,看源码之前我们看一下前端为什么要进行构建和打包 ## 为什么要进行构建和打包 1.使得代码体积率更小,加载更快 2.编译高级语法(ts,模块化) ## webpack的打包流程 1.初始化参数,读取合并参数 2.用上一步得到的参数,得到Compiler(文件)参数,加载所有配置的插件...
2022-04-27 21:13:31
430
原创 vue-loader (v15)源码解析
vue-loaderloader在webpack里是用来做编译的,这就可以理解vue-loader是帮助我们把我们写的vue组件编译成js文件(因为我们的浏览器是识别不了我们的vue组件的)vue-loader的index.jsvue-loader的index.js导出了一个函数,函数接收一个参数,这个参数就是要转换的文件的内容JavaScript module.exports ...
2022-04-23 15:24:29
345
原创 dva使用+源码解析
简介dva是用来进行状态管理的(umi内置的有dva所以我们不需要另外再引入dva)使用dva使用dva我们首先要在umi的src下创建一个model文件夹,用来管理我们的状态```JavaScript //modules/system export default { // models命名空间,需全局唯一 namespace: 'system...
2022-04-18 19:31:09
497
原创 webpack4+vue.js2搭建vue-cli
webpack+vue.js 搭建vue-cli首先我们需要npm init -y 初始化以下package.json文件,初始化我们的项目npm init -y然后我们需要安装 webpack 和vue.js (注意要vue2.x版本)cnpm install --save-dev vue@2.0.6 cnpm install --save-dev webpack然后...
2022-04-06 22:34:35
74
原创 Vue之虚拟Dom(Snabbdom源码解析)
什么是虚拟Dom (Vitural Dom)虚拟Dom 就是用JS对象来描述Dom,因为不是真实的Dom对象所以叫虚拟Dom为什么要使用虚拟Dom1.因为在前端中,一个Dom对象包含的属性以及方法是很多的,然而虚拟DOm只需要我们去设置属性即可 ```javaScript const element=document.querySelector('#app'); le...
2022-04-05 15:38:17
169
原创 Redux基础
Redux初始 Redux在学完react基础之后我们可以做一些简单的项目,因为大项目之间的组件嵌套的层级比较深,组件通信比较麻烦,所以我们需要了我们的Redux。Redux 简介Redux里有一个store数据仓库,我们需要的时候可以去数据仓库去获取,修改的时候也可以随着去修改Redux 工作流程这张是官方的图文解释,就是比如我们的组件想要一个数据,要先去找到Action Crea...
2020-05-01 15:08:49
49
原创 React基础
前言从网上视频自学React对于React的一些基础总结个人觉得。React相较于Vue来说Vue学起来更简单一些,且在写代码方面Vue更简单一些,对于性能方面和源码方面,因为技术欠佳暂且不谈。组件React的组件跟Vue是有区别的,我们在写Vue的组件的时候我们的组件是.vue的文件,React组件以.JS文件。 # react组件的概念 react组件基本上和Vue一...
2020-04-23 17:44:33
57
原创 webpack4建议配置react环境
进行项目初始化npm init -y安装依赖包首先安装webpack ,webpack-cli, webpack-dev-server然后安装babel-loader@next,@bable/core, @babel/preset-react接下来继续安装react ,react-dom创建文件夹分别创建两个文件夹src和dist ,src文件夹用来存放源码,dist文件夹是we...
2020-03-04 18:25:19
53
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人