- 博客(82)
- 资源 (3)
- 收藏
- 关注

原创 SpringBoot练手项目总结
SpringBoot+MybatisPlus+Redis+Vue+SpringSecurity 前后端分离个人博客MybatisPlus、JWT、Redis、ThreadLocal、拦截器、线程池、AOP日志缓存、七牛云、SpringSecurity
2021-12-05 10:33:10
9804
88

原创 【JDK源码】集合源码目录,冲冲冲
集合源码直达,冲冲冲【JDK源码】集合之ArrayList【JDK源码】集合之LinkedList【JDK源码】集合之解决ArrayList线程不安全【JDK源码】集合之CopyOnWriteArrayList【JDK源码】集合之HashMap【JDK源码】集合之TreeMap【JDK源码】集合之HashTable【JDK源码】集合之LinkedHashMap【JDK源码】集合之ConcurrentHashMap...
2021-11-21 11:50:30
2032
22

原创 【JDK源码】同步系列AQS完结及目录
AQS目录【JDK源码】同步系列synchronized【JDK源码】同步系列手写Lock【JDK源码】同步系列AQS初识【JDK源码】同步系列AQS之ReentrantLock【JDK源码】同步系列AQS之条件锁【JDK源码】同步系列AQS之ReentrantLock VS synchronized【JDK源码】同步系列AQS之ReentrantReadWriteLock(万字解析)【JDK源码】同步系列AQS之Semaphore【JDK源码】同步系列AQS之CountDownLatc.
2021-11-20 09:33:15
709
16
转载 Kafka入门
新建cmd窗口,启动zookeeperserver。新建cmd窗口,启动kafkaproducer。新建cmd窗口,启动kafkaconsumer。新建cmd窗口,启动kafkaserver。kafkaproducer发送消息。运行成功,2181端口,不要关闭窗口。kafkaconsumer接收消息。版本-Kafka自身版本。新建cmd窗口,创建主题。config是配置文件。运行成功,不要关闭窗口。运行成功,不要关闭窗口。运行成功,不要关闭窗口。运行成功,不要关闭窗口。...
2022-07-14 19:08:05
567
转载 深入理解 Mysql 索引底层原理
一步一步推导出 Mysql 索引的底层数据结构。Mysql 作为互联网中非常热门的数据库,其底层的存储引擎和数据检索引擎的设计非常重要,尤其是 Mysql 数据的存储形式以及索引的设计,决定了 Mysql 整体的数据检索性能。我们知道,索引的作用是做数据的快速检索,而快速检索的实现的本质是数据结构。通过不同数据结构的选择,实现各种数据快速检索。在数据库中,高效的查找算法是非常重要的,因为数据库中存储了大量数据,一个高效的索引能节省巨大的时间。比如下面这个数据表,如果 Mysql 没有实现索引算法,那.
2022-03-15 15:41:30
205
1
原创 谷粒商城_10_异步编排
异步编排,CompletableFuture介绍,handle 方法,线程串行化方法,CompletableFuture,优化商品详情页,springboot配置文件
2022-02-23 08:00:00
394
8
原创 谷粒商城_09_分布式缓存+分布式锁
分布式缓存,redis,整合redis的步骤,堆外内存溢出,压力测试,缓存失效,缓存穿透,缓存雪崩,缓存击穿,缓存击穿:加锁,本地锁,复制微服务,分布式锁,Redisson,Canal,SpringCache
2022-02-22 19:15:00
320
2
原创 谷粒商城_08_商品首页+nginx+压力测试
商城系统首页、页面与静态资源处理、渲染一级分类菜单、渲染三级分类菜单、Nginx、nginx配置、nginx代理、nginx+网关、压力测试、Jmeter、Jmeter Address Already in use错误解决、优化、Nginx动静分离、优化三级分类
2022-02-22 08:00:00
429
18
原创 谷粒商城_07_Elasticsearch进阶+商品上架
文章目录SpringBoot整合ElasticSearch导入依赖测试保存数据获取数据转换beanBuckets分析信息product-es分析sku在es中如何存储建立product索引nested嵌入式对象商品上架根据spuId封装上架数据上架实体类库存量查询gulimall-searchgulimall-searchSpringBoot整合ElasticSearch创建项目gulimall-search,选择依赖web导入依赖这里的版本要和所安装的ES版本匹配。<dependency&
2021-12-25 22:57:01
765
2
原创 谷粒商城_06_JSR303校验+Elasticsearch
JSR303校验普通校验局部异常处理BindResult统一异常处理分组校验功能(多场景校验)自定义校验注解Elasticsearch初步检索1、检索es信息2、新增文档PUT和POST区别3、查看文档4、更新文档_update5、删除文档或索引删除索引6、ES的批量操作——bulk7、样本测试数据
2021-12-19 12:12:10
1850
22
原创 谷粒商城_05_阿里云OSS和前端校验
前端配置、前端页面、brand.vue、brand-add-or-update.vue、添加上传官网使用、服务使用、优化上传、gulimall-third-party、网关、前端组件、表单校验&自定义校验器
2021-12-17 09:40:07
1455
22
原创 谷粒商城_04_商品CRUD
后端编写、前端展示、服务注册、配置网关、503问题、跨域、解决跨域、服务注册配置网关、删除数据、后端接口、逻辑删除
2021-12-16 12:55:10
1768
29
原创 谷粒商城_02_Nacos、网关
SpringCloud Alibaba、微服务远程调用、配置中心、、进阶、网关、gulimall-gateway谷粒商城_01_环境搭建SpringCloud Alibaba简介测试member和coupon的远程调用想要获取当前会员领取到的所有优惠券。先去注册中心找优惠券服务,注册中心调一台优惠券服务器给会员,会员服务器发送请求给这台优惠券服务器,然后对方响应。Feign与注册中心spring cloud feign,声明式远程调用Feig
2021-12-14 08:13:25
1146
30
原创 优化项目加入ElasticSerch
Elasticsearch可视化插件、集成 SpringBoot找、具体的 Api 测试!1、创建索引2、判断索引是否存在3、删除索引4、创建文档5、判断文档是否存在6、获取文档信息7、更新文档的信息8、删除文档记录9、特殊的,真的项目一般都会批量插入数据!10、查询优化优化到之前的博客项目中定义EsService来操作ES的增删改ES的搜索功能测试
2021-12-09 08:14:38
995
44
原创 上线项目 Docker部署项目到服务器总结
Docker为什么出现?阿里云镜像加速、HelloWorld流程底层原理、部署项目1、安装docker2、安装Docker-Compose3、编写相关配置文件Docker-Compose.yml编写Dockerfile编写Nginx的配置4、打包前端后端Docker简介Docker为什么出现?一款产品: 开发–上线 两套环境!应用环境,应用配置!开发 — 运维。 问题:我在我的电脑上可以运行!版本更新,导致服务不可用
2021-12-07 08:49:01
5464
61
原创 牛客网Java错题总结
jvm内存、内存回收、java基础、继承、标识符、变量类型转换、异常、String类、集合八、修饰符、线程大多数 JVM 将内存区域划分为 Method Area(Non-Heap)(方法区) ,Heap(堆) , Program Counter Register(程序计数器) , VM Stack(虚拟机栈,也有翻译成JAVA 方法栈的),Native Method Stack ( 本地方法栈 ),其中Method A
2021-12-03 08:03:27
2677
30
原创 从源码学Spring+debug模式(一)
IOC的核心实现原理?spring的扩展实现?bean的整个生命周期?spring aware接口的意义?BeanFactory和FactoryBean的关系?怎么识别是FactoryBean的呢?什么时候识别的呢?
2021-12-01 08:11:36
2235
30
原创 Spring重点总结
文章目录IOC创建对象依赖注入DI构造器注入set注入Bean的自动装配注解开发Java配置xml代理模式AOP整合Myabatisspring配置事务spring其实就是容器,IOC也是其中一个,把我们的对象收集起来IOC创建对象Userpublic class User { private String name; public User(){ System.out.println("User的无参构造"); } public String
2021-11-30 08:04:15
1002
33
原创 Mybatis重点总结+常见面试
文章目录XML工具类日志配置模糊查询生命周期属性名和字段名不一致分页一对多、多对一一对多按查询结果映射按查询映射多对一按查询结果映射按查询映射总结缓存一级缓存二级缓存总结常见面试#{}和${}的区别是什么?当实体类中的属性名和表中的字段名不一样 ,怎么办 ?模糊查询 like 语句该怎么写Dao 接口的工作原理是什么?Dao 接口里的方法,参数不同时, 方法能重载吗?Mybatis 是如何将 sql 执行结果封装为目标对象并返回的?都有哪些映射形式?Mybatis 的 Xml 映射文件中,不同的 Xml 映
2021-11-29 08:00:00
1242
32
原创 【面试题】JVM常见面试题(二)
文章目录JVM 的几个主要组成部分?虚拟机栈和堆的区别?为什么要把堆和栈区分出来呢?垃圾回收算法?标记-清除标记-整理复制算法分代收集大对象处理策略?线程内存溢出根据不同年代的特点采用最适当的收集算法?分代收集算法流程小结CMS 垃圾收集器?G1?什么情况下会触发Full GC?什么是内存泄漏?避免内存泄漏的方法?JVM中有哪些类加载器?类的加载的过程?什么是双亲委派模型?为什么要使用双亲委派模型呢?(好处)怎么打破双亲委派模型?常用的JVM启动参数有哪些?JVM 的几个主要组成部分?主要由 4 个部分
2021-11-28 09:53:51
2774
24
原创 【面试题】JVM常见面试题(一)
文章目录JVM的内存结构(运行时数据区)?1、程序计数器:2、Java虚拟机栈:Java虚拟机栈的异常状况?垃圾回收是否涉及栈内存?栈内存的分配越大越好吗?方法内的局部变量是否是线程安全的?3、本地方法栈:4、堆:5、方法区:方法区的演进?为什么要用元空间取代永久代?常量池?运行时常量池?常量池与串池的关系?串池StringTableintern方法 1.8intern方法 1.6StringTable 垃圾回收?StringTable调优?6、直接内存文件读写流程释放原理?直接内存的回收机制总结JVM 是
2021-11-28 08:04:39
2925
28
原创 【面试题】计算机网络常见面试题
文章目录TCP的三次握手、四次挥手?为什么要三次握手?两次行吗?第 2 次握手传回了 ACK,为什么还要传回 SYN?四次挥手三次握手过程中可以携带数据吗?三次握手连接阶段,最后一次ACK包丢失,会发生什么?为什么TCP连接的时候是3次,关闭的时候却是4次?如果已经建立了连接,但是客户端突然出现故障了怎么办?TIME_WAIT是客户端状态还是服务端状态?作用是什么?TIME_WAIT状态过多会造成什么后果?怎样处理?TCP 滑动窗口和流量控制机制?TCP 拥塞控制机制?TCP 协议如何保证可靠传输?TCP/
2021-11-27 08:15:00
2496
37
原创 【巩固java基础】网络编程,我奶看了都说好
文章目录TCPUDPIP小结TCP通信程序TCP通信文件操作TCP模拟网站服务器NIO同异步、阻与非阻塞三个组成Buffer类主要方法Channel接口FileChannel类文件的复制FileChannel结合MappedByteBuffer实现高效读写SocketChannel与ServerSocketChannelSelector常用方法NIO多路复用多路复用整理网络编程三要素协议:TCP/UDPIP地址端口号TCPTCP:传输控制协议 (Transmission Cont
2021-11-25 08:15:00
759
30
原创 【面试题】操作系统常见面试题
文章目录什么是死锁?如何避免死锁死锁的必要条件进程和线程的区别?线程共享进程中哪些资源,独享哪些资源线程、进程的通信方式信号量与信号的区别?计算机插上电源操作系统做了什么?虚拟内存是什么,虚拟内存的原理是什么?进程、线程的上下文切换如何减少线程的上下文切换?操作系统进程的调度策略?操作系统内存管理方式讲一讲操作系统的I/O模型?什么是I/O多路复用?什么是死锁?由于两个或者多个线程互相持有对方所需要的资源,导致这些线程处于等待状态,无法前往执行面试官:讲讲什么是死锁?我:你录取我,我就给你讲
2021-11-24 08:15:00
1462
51
原创 【JDK源码】线程系列之ThreadLocal
简介ThreadLocal这个类提供线程局部变量,这些变量与其他正常的变量的不同之处在于,每一个访问该变量的线程在其内部都有一个独立的初始化的变量副本;ThreadLocal实例变量通常采用 private static 在类中修饰。只要 ThreadLocal 的变量能被访问,并且线程存活,那每个线程都会持有 ThreadLocal变量的副本。当一个线程结束时,它所持有的所有 ThreadLocal 相对的实例副本都可被回收。一句话说就是 ThreadLocal 适用于每个线程需要自己独立
2021-11-23 08:28:56
1067
48
原创 【JDK源码】线程系列之FutureTask
文章目录简介继承体系源码分析Runnable接口Callable接口Future接口成员属性构造方法成员方法run()get()cancel()总结简介在Java中一般通过继承Thread类或者实现Runnable接口这两种方式来创建多线程,但是这两种方式都有个缺陷,就是不能在执行完成后获取执行的结果,因此Java 1.5之后提供了Callable和Future接口,通过它们就可以在任务执行完毕之后得到任务的执行结果。继承体系源码分析Runnable接口public interface Run
2021-11-22 13:12:11
1374
34
原创 【JDK源码】两万字暴淦ConcurrentHashMap
文章目录开篇问题简介各种锁简介源码分析成员属性构造方法添加元素初始化桶数组判断是否需要扩容协助扩容(迁移元素)迁移元素删除元素获取元素获取元素个数总结开篇问题(1)ConcurrentHashMap与HashMap的数据结构是否一样?(2)HashMap在多线程环境下何时会出现并发安全问题?(3)ConcurrentHashMap是怎么解决并发安全问题的?(4)ConcurrentHashMap使用了哪些锁?(5)ConcurrentHashMap的扩容是怎么进行的?(6)Concurrent
2021-11-21 11:42:06
311
23
原创 【JDK源码】同步系列AQS之CyclicBarrier
文章目录简介使用方法源码分析主要内部类主要属性构造方法await()方法图解总结问题简介CyclicBarrier,回环栅栏,它会阻塞一组线程直到这些线程同时达到某个条件才继续执行。它与CountDownLatch很类似,但又不同,CountDownLatch需要调用countDown()方法触发事件,而CyclicBarrier不需要,它就像一个栅栏一样,当一组线程都到达了栅栏处才继续往下走。使用方法public class CyclicBarrierTest { public stati
2021-11-20 09:19:24
324
14
原创 【JDK源码】同步系列AQS之CountDownLatch
【JDK源码】同步系列synchronized【JDK源码】同步系列手写Lock【JDK源码】同步系列AQS初识【JDK源码】同步系列AQS之ReentrantLock【JDK源码】同步系列AQS之条件锁【JDK源码】同步系列AQS之ReentrantLock VS synchronized【JDK源码】同步系列AQS之ReentrantReadWriteLock(万字解析)【JDK源码】同步系列AQS之Semaphore文章目录简介类结构源码分析内部类Sync构造方法await()方法.
2021-11-19 14:45:37
1683
14
原创 【JDK源码】同步系列AQS之Semaphore
【JDK源码】同步系列synchronized【JDK源码】同步系列手写Lock【JDK源码】同步系列AQS初识【JDK源码】同步系列AQS之ReentrantLock【JDK源码】同步系列AQS之条件锁【JDK源码】同步系列AQS之ReentrantLock VS synchronized【JDK源码】同步系列AQS之ReentrantReadWriteLock(万字解析)文章目录简介特性类结构源码分析内部类Sync内部类NonfairSync内部类FairSync构造方法acquire.
2021-11-19 11:36:43
535
33
原创 【JDK源码】同步系列AQS之ReentrantReadWriteLock(万字解析)
简介读写锁是一种特殊的锁,它把对共享资源的访问分为读访问和写访问,多个线程可以同时对共享资源进行读访问,但是同一时间只能有一个线程对共享资源进行写访问,使用读写锁可以极大地提高并发量。特性是否互斥读写读否是写是是可以看到,读写锁除了读读不互斥,读写、写读、写写都是互斥的。类结构ReentrantReadWriteLock中的类分成三个部分:(1)ReentrantReadWriteLock本身实现了ReadWriteLock接口,这个接口只提供了两个方
2021-11-18 12:04:17
2322
30
原创 【JDK源码】同步系列AQS之ReentrantLock VS synchronized
文章目录简介ReentrantLock VS synchronized对比测试总结简介synchronized是Java原生提供的用于在多线程环境中保证同步的关键字,底层是通过修改对象头中的MarkWord来实现的。ReentrantLock是Java语言层面提供的用于在多线程环境中保证同步的类,底层是通过原子更新状态变量state来实现的。ReentrantLock VS synchronized功能ReentrantLocksynchronized可重入支持支持
2021-11-17 16:00:50
917
27
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人