java高级部分
文章平均质量分 81
群鸟飞扬
这个作者很懒,什么都没留下…
展开
-
最新的10个Spring Boot 优秀学习项目地址分享
10个SpringBoot项目分享(好像多了一个项目)人力资源管理支付案例分布式秒杀系统博客项目通用管理后台商城 (有3个电商的,果然大家都喜欢拿电商当项目经验)权限管理系统(微服务版)ERP美人渔一、mall (虽然培训机构已经把电商推广了烂大街了,但技术还是可以学习的)项目地址:https://gitee.com/macrozheng/mall?_from=gitee_searchmall项目是一套电商系统,包括前台商城系统及后台管理系统,基于Sp原创 2021-06-06 23:01:55 · 313 阅读 · 0 评论 -
20210425-tomcat学习笔记
同花顺项目原创 2021-03-18 23:28:51 · 183 阅读 · 0 评论 -
Maven常用配置
SpringBoot 入门1、Spring Boot 简介2、微服务3、环境准备1、MAVEN设置:2、idea设置4、Spring Boot HelloWorld1、创建maven工程2、导入依赖spring boot相关依赖3、编写一个主程序:启动Spring Boot应用4、编写相关的Controller、Service5、运行主程序测试6、简化部署5、Hello World探究1、POM文件1、父项目2、启动器2、主程序类,主入口类6、使用Spring Initializer快速创建Spring B原创 2020-07-09 21:54:02 · 194 阅读 · 0 评论 -
Springboot2 学习笔记
目录Springboot项目教程Springboot项目教程Springboot项目教程Springboot项目教程Springboot项目教程Springboot项目教程原创 2020-12-16 09:55:02 · 437 阅读 · 0 评论 -
JVM学习笔记
JVM学习笔记原创 2020-11-26 23:53:05 · 88 阅读 · 0 评论 -
Java中ConcurrentHashMap底层实现原理(JDK1.8)源码分析2
空船理论这个故事是出自庄子的《山木》中的“方舟济河”,这是一篇极富道家哲学的寓言,一个人在乘船渡河的时候,前面一只船正要撞过来。这个人喊了好几声没有人回应,于是破口大骂前面开船的人不长眼。结果撞上来的竟是一只空船,于是刚才怒气冲冲的人,一下子怒火就消失得无影无踪了。其实你会发现,生气与不生气,取决撞来的船上有没有人!一个人“看不惯”的东西、人和事越多,这个人的境界也就越低,格局也就越小。一个人如果总是以自我为中心,太把自己当回事,那么就很容易与别人起冲突。Concurrent翻译过来是并发的意原创 2020-10-27 22:55:11 · 1093 阅读 · 0 评论 -
Java中HashMap底层实现原理(JDK1.8)源码分析
空杯心态一代武学宗师,功夫巨星李小龙也非常推崇这句话,他说:“清空你的杯子,方能再行注满,空无以求全。”空杯心态就是对过去荣耀、挫折的一种舍弃,也是对自己的一种否定,舍得之后才能获得更多,否定自己需要很大的勇气,但唯有如此才能找到自己的差距和不足,找到应该努力的方向。一个人应该舍弃的东西很多,懒惰、得过且过的混日子思想自然是不行的、是最应舍弃的。人生是一场盛宴,绝不只是一道好菜。不能因小小的成绩就得意忘形,或者甘于认命。尤其是当我们还是青年的时候,更要学会空杯,既不能因一时的失败或挫折而一蹶不振,更不原创 2020-10-06 10:52:24 · 232 阅读 · 0 评论 -
SpringCloud第二季5-SpringConfig、Bus
1、目录结构2、改POM3、建application.yml4、主启动类5、业务类6、运行代码原创 2020-09-22 21:20:28 · 344 阅读 · 0 评论 -
SpringCloud第二季4-Gateway
Gateway什么是Gateway网关?Gateway是在Spring生态系统之上架构的API网关服务,基于Spring5,Spring Boot2和ProjectReactor等技术。Gateway在提供一种简单而有效的方式来对API进行路由,以及提供一些强大的过滤器功能,例如:熔断、限流、重试等SpringCloud Gateway是Spring Cloud的一个全新项目,纡Spring 5.0+ Spring Boot 2.0和Project Reactor等技术开发的网关,它旨在为微服务原创 2020-09-20 22:06:16 · 141 阅读 · 0 评论 -
SpringCloud第二季3-Hystrix
Hystrix1、分布式系统面临的问题复杂分布式体系结构中的应用程序有数十个依赖关系,每个依赖关系在某些时候将不可避免地损失的。服务雪崩多个微服务之间调用的时候,假设微服务A调用微服务B和微服务C,微服务B和微服务C又调用其它的微服务,这就是所谓的“扇出”。如果扇出的链路上某个微服务的调用响应时间过长或者不可用,对微服务A的调用就会占用越来越多的系统资源,进而引起系统崩溃,所谓的“雪崩效应”.对于高流量的应用来说,单-的后端依赖可能会导致所有服务器上的所有资源都在几秒钟内饱和。比失败更糟糕的是,原创 2020-09-03 22:19:53 · 144 阅读 · 0 评论 -
SpringCloud第二季2-Consul、Ribbon、OpenFeign
初级Eureka基础知识服务治理SpringCloud封装了Netflix公司开发的Eureka模块来实现服务治理在传统的rpc远程调用框架中,管理每个服务与服务之间依赖关系比较复杂,所以需要使用服务治理,管理服务于服务之间依赖关系,可以实现服务调用、负载均衡、容错等,实现服务发现与注册。服务注册与发现Eureka采用了CS的设计架构,Eureka Server作为服务注册功能的服务器,它是服务注册中心,而系统中的其他微服务,使用Eureka的客户端连接到Eureka Server并维持心跳连接原创 2020-08-23 00:00:20 · 359 阅读 · 0 评论 -
Java RestTemplate post请求传递参数遇到的坑
RestTemplate提供了多种便捷访问远程Http服务的方法,是一种简单便捷的访问restful服务模板类,是Spring提供的用于访问Rest服务的客户端模板工具类使用restTemplate访问restful接口非常的简单粗暴无脑。(url, requestMap, ResponseBean.class)这三个参数分别代表REST请求地址、请求参数、HTTP响应转换的对象类型直接调用需要将数据存储到MultiValueMap进行传递MultiValueMap<String, Obje原创 2020-08-14 10:58:50 · 671 阅读 · 0 评论 -
SpringCloud第二季1-搭建项目、Eureka、Zookeeper
基础版本的选择查看SpringCloud和SpringBoot之间版本的依赖关系:https://spring.io/projects/spring-cloud#overviewhttps://start.spring.io/actuator/info,返回详细json信息首先连接下各个组件:服务注册中心:EUREKA服务负载均衡与调用:NETFLIX OSS RIBBON服务负载与调用:NETTFLIX服务熔断降级:HYSTRIX服务网关:Zuul服务分布式配置:Spr原创 2020-08-07 07:46:26 · 241 阅读 · 0 评论 -
JVM学习笔记
一、内存与垃圾回收二、字节码与类的加载器三、性能监控与调优四、大厂面试题原创 2020-06-08 22:29:35 · 153 阅读 · 0 评论 -
JDK内置工具使用(jps、jstack、jmap、jstat)
JDK内置工具使用(jps、jstack、jmap、jstat)原创 2020-06-08 13:52:00 · 282 阅读 · 0 评论 -
Java之线程和线程池
创建线程的四种方法以及区别原创 2020-05-11 15:46:45 · 145 阅读 · 0 评论 -
JAVA之阻塞队列接口结构和实现类
阻塞队列首先它是一个队列,原创 2020-04-26 17:21:30 · 322 阅读 · 0 评论 -
JAVA之Synchronized和Lock
ReentrantLock原创 2020-04-16 17:10:38 · 300 阅读 · 0 评论 -
Java中ConcurrentHashMap底层实现原理(JDK1.8)源码分析
Concurrent翻译过来是并发的意思,字面理解它的作用是处理并发情况的 HashMap,在介绍它之前先回顾下之前的知识。一、JDK1.7与JDK1.8区别在JDK1.6,JDK1.7中,HashMap采用位桶+链表实现,即使用链表处理冲突,同一hash值的链表都存储在一个链表里。但是当位于一个桶中的元素较多,即hash值相等的元素较多时,通过key值依次查找的效率较低。而JDK1.8中...原创 2020-04-15 18:13:42 · 418 阅读 · 0 评论 -
Java 快速失败和安全失败
我们都接触 HashMap、ArrayList 这些集合类,这些在 java.util 包的集合类就都是快速失败的;而 java.util.concurrent 包下的类都是安全失败,比如:ConcurrentHashMap。1. 快速失败(fail-fast)在使用迭代器对集合对象进行遍历的时候,如果 A 线程正在对集合进行遍历,此时 B 线程对集合进行修改(增加、删除、修改),或者 A...原创 2020-04-13 14:54:57 · 97 阅读 · 0 评论 -
Java中ArrayList底层实现原理(JDK1.8)源码分析
简介: ArrayList是我们开发中非常常用的数据存储容器之一,其底层是数组实现的,我们可以在集合中存储任意类型的数据,ArrayList是线程不安全的,非常适合用于对元素进行查找,效率非常高。线程安全性: 对ArrayList的操作一般分为两个步骤,改变位置(size)和操作元素(e)。所以这个过程在多线程的环境下是不能保证具有原子性的,因此ArrayList在多线程的环境下是...原创 2020-04-13 14:19:40 · 354 阅读 · 0 评论 -
Java中CAS原理详解
volatile是Java虚拟机提供的轻量级的同步机制,拥有三大特性保证可见性 不保证原子性 禁止指令重排2.JMM你谈谈JMM(Java内存模型Java Memory Model,简称JMM)本身是一种抽象的概念 并不真实存在,它描述的是一组规则或规范通过规范定制了程序中各个变量(包括实例字段,静态字段和构成数组对象的元素)的访问方式.JMM关于同步规定:1.线程解锁前,必须把共...原创 2020-04-08 14:37:06 · 5590 阅读 · 1 评论 -
Java内存模型
Java虚拟机规范中试图定义一种Java内存模型(Java Memory Model,JMM)来屏蔽掉各种硬件和操作系统的内存访问差异,以实现让Java程序在各种平台下都能达到一致的内存访问效果。转载 2017-01-24 14:21:34 · 293 阅读 · 0 评论 -
Java中Volatile关键字详解
目录一、内存模型的相关概念二、并发编程中的三个概念volatilevolatile 的特性volatile这个关键字可能很多朋友都听说过,或许也都用过。在Java 5之前,它是一个备受争议的关键字,因为在程序中使用它往往会导致出人意料的结果。在Java 5之后,volatile关键字才得以重获生机。volatile关键字虽然从字面上理解起来比较简单,但是要用好不是一件容易的...转载 2020-04-03 14:50:39 · 173 阅读 · 0 评论