自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 springboot自动装配之自定义starter

Spring Boot 自动配置,顾名思义,是希望能够自动配置,将我们从配置的苦海中解脱出来。那么既然要自动配置,它需要解三个问题:1、满足什么条件?2、创建那些bean?3、创建的bean都有那些属性?举个例子:当我们创建一个springboot项目,引入spring-boot-starter-web依赖,会自动给我们创建一个8080端口的tomcat,同时通过配置文件application.yaml配置项目的自定义端口(server.port)。插一段小福利 java架构的鼠标垫 免费领.

2020-10-19 21:13:08 401

原创 谈谈前后端分离及认证选择

前几年,web开发领域中「前后端分离」比较火,现如今已逐渐成为事实标准。但是究竟什么是前后端分离?又为什么要前后端分离呢?什么是前后端分离?为什么要前后端分离?前后端分离,说的更多的是一种架构上的概念。在传统的web架构中,比如经典的MVC,会分数据层、逻辑层、视图层。这个视图层即我们所说的前端了,映射到代码层面,就是html、js、css等代码文件。数据层和逻辑层更多的是后端部分,例如我们的 .java 、.go、.py等文件。这些文件会在一个工程中,并不会单独的开发、测试、部署。开.

2020-10-19 21:08:02 486

原创 使用不当性能差千倍 选择ArrayList还是LinkedList?

ArrayList 和 LinkedList 有什么区别,是面试官非常喜欢问的一个问题。可能大部分小伙伴和我一样,能回答出“ArrayList 是基于数组实现的,LinkedList 是基于双向链表实现的。”关于这一点,我之前的文章里也提到过了。但说实话,这样苍白的回答并不能令面试官感到满意,他还想知道的更多。那假如小伙伴们继续做出下面这样的回答:“ArrayList 在新增和删除元素时,因为涉及到数组复制,所以效率比 LinkedList 低,而在遍历的时候,ArrayList 的效率要高于

2020-10-19 21:00:35 138

原创 看完这篇 Session、Cookie、Token,和面试官扯皮就没问题了

Cookie 和 Session开奖之前给大家一个福利 送java架构鼠标垫 免费领取 要的可以+VHTTP 协议是一种无状态协议,即每次服务端接收到客户端的请求时,都是一个全新的请求,服务器并不知道客户端的历史请求记录;Session 和 Cookie 的主要目的就是为了弥补 HTTP 的无状态特性。Session 是什么客户端请求服务端,服务端会为这次请求开辟一块内存空间,这个对象便是 Session 对象,存储结构为 ConcurrentHashMap。Ses...

2020-10-19 20:55:43 1236 1

原创 这个MySQL命令你会吗?手把手教你

1、连接Mysql格式: mysql -h主机地址 -u用户名 -p用户密码1、连接到本机上的MYSQL。首先打开DOS窗口,然后进入目录mysql\bin,再键入命令mysql -u root -p,回车后提示你输密码.注意用户名前可以有空格也可以没有空格,但是密码前必须没有空格,否则让你重新输入密码。如果刚安装好MYSQL,超级用户root是没有密码的,故直接回车即可进入到MYSQL中了,MYSQL的提示符是: mysql>2、连接到远程主机上的MYSQL。假设远程主机的IP为:11...

2020-07-13 11:31:54 120

原创 要精通Java,先研究谁的执行原理,来让我告诉你

对于任何一门语言,要想达到精通的水平,研究它的执行原理(或者叫底层机制)不失为一种良好的方式。在本篇文章中,将重点研究java源代码的执行原理,即从程序员编写JAVA源代码,到最终形成产品,在整个过程中,都经历了什么?每一步又是怎么执行的?执行原理又是什么?创作不易,如果有一丢丢收获,点个赞鼓励一下吧!整理了一份覆盖一线大厂Java面试题总结+各知识点学习思维导+一份300页pdf文档的Java核心知识点总结!,有需要的小伙伴们可以扫一下下面的图片一、编写java源程序jav

2020-07-11 10:46:42 111

原创 为了让你理解Java泛型,花了好大心思

什么是泛型(先理解是个啥)在学习Java基础的过程中,泛型绝对算得上是一个比较难理解的知识点,尤其对于初学者而言,而且就算是已经有基础的Java程序员,可能对泛型的理解也不是那么透彻,属于那种看了明白,时间长了就忘的那种,究其根本,还是对泛型不够理解。大部分人对泛型的认识:“基础知识,但是比较模糊”为啥要有泛型泛型这个概念是在Java1.5提出来的,之前是没有的,那为什么之前没有,现在要提出来这个概念呢?那你就得想啊:1、要么是之前的技术太垃圾了,得升级换代下2、要么是技术发展,搞出来的新

2020-07-10 14:10:25 145

原创 这篇谈谈Java内存模型

由于细节内容实在太多啦,所以只把部分知识点整理出来粗略的介绍,每个小节点里面都有更细化的内容!接下来开始分享啦Java内存模型即Java Memory Model,简称JMM。JMM定义了Java虚拟机(JVM)在计算机内存(RAM)中的工作方式。JVM是整个计算机虚拟模型,所以JMM隶属于JVM。如果我们想要深入了解Java并发编程,就要先理解好Java内存模型。Java内存模型定义了多线程之间共享变量的可见性以及如何在需要的时候对共享变量进行同步。两种并发模型1.共享内存并发模型.

2020-07-09 11:26:16 186

原创 看完这篇就再也不怕面试时写不出排序算法了

//加V:BGM7756可免费领取文末面试资料!本文主要详细讲述常见的八种排序算法的思想、实现以及复杂度。包括冒泡排序、快速排序、插入排序、希尔排序等等,文章讲解非常详细!冒泡排序要点冒泡排序是一种交换排序。什么是交换排序呢?交换排序:两两比较待排序的关键字,并交换不满足次序要求的那对数,直到整个表都满足次序要求为止。算法思想它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。这个算法

2020-07-08 11:05:11 216

原创 面试题每日累积——JVM垃圾回收算法有哪几些?

添加微信BGM7756 领取最全面试资料!常用的垃圾回收算法有如下四种:标记-清除、复制、标记-整理和分代收集。标记-清除算法从算法的名称上可以看出,这个算法分为两部分,标记和清除。首先标记出所有需要被回收的对象,然后在标记完成后统一回收掉所有被标记的对象。这个算法简单,但是有两个缺点:一是标记和清除的效率不是很高;二是标记和清除后会产生很多的内存碎片,导致可用的内存空间不连续,当分配大对象的时候,没有足够的空间时不得不提前触发一次垃圾回收。复制算法这个算法将可用的内存空间分为大小相等的两块

2020-07-07 15:31:23 64

原创 你还不熟悉JVM吗?你还不知道新生代内存需要有两个Survivor区是为什么吗??

微信搜索BGM7756,免费获取本文提及资料!在JVM的新生代内存中,为什么除了Eden区,还要设置两个Survivor区?1 为什么要有Survivor区先不去想为什么有两个Survivor区,第一个问题是,设置Survivor区的意义在哪里?面试难题—熟悉JVM吗?为什么新生代内存需要有两个Survivor区?如果没有Survivor,Eden区每进行一次Minor GC,存活的对象就会被送到老年代。老年代很快被填满,触发Major GC(因为Major GC一般伴随着Minor GC,也可

2020-07-06 14:13:00 68

原创 高效程序员应该养成的七个习惯

软件工程师花费大量时间通过练习leet code问题和完善简历来获得更好的面试通过可能。一旦他们最终被谷歌、亚马逊或其他公司录用,他们可能会发现:过去用来得到这份工作的技能与他们日常工作中需要的技能并不匹配。我们的团队受到 TechLead 创建的高效程序员七项技能的启发。我们想提供我们自己对这个话题的看法。以下是我们总结的高效程序员的七项技能。1. 学习如何阅读别人的代码除了你,每个人写的代码都是垃圾?实际上,能够在别人的代码之上继续工作是一项有多重好处的伟大技能。不管以前工程师的代码是多么混乱或

2020-07-03 16:47:45 108

原创 java解析class文件的高招在这里!

猿灯塔 全文略长 希望对各位有帮助!另外!文末有令你们心动的白嫖惊喜哦!想要的朋友关注一下小编、转发文章并私聊我哦!Class文件什么是Class文件?java之所以能够实现跨平台,便在于其编译阶段不是将代码直接编译为平台相关的机器语言,而是先编译成二进制形式的java字节码,放在Class文件之中,虚拟机再加载Class文件,解析出程序运行所需的内容。每个类都会被编译成一个单独的class文件,内部类也会作为一个独立的类,生成自己的class。基本结构随便找到一个class文件,

2020-07-01 11:13:06 254

原创 继续深挖JAVA虚拟机

一、运行时数据区域1、程序计数器:当前线程执行字节码的行号指示器(通过改变计数器的值来选择下条需要执行的字节码指令)每个线程有独立的程序计数器(线程私有,为了切换线程时能恢复到挣钱的执行位置)如果执行java方法,计数器记录正在执行的字节码指令地址。如果执行的是Native方法,计数器为空。唯一没规定任何OutOfMemoryError情况的区域。2、虚拟机栈为执行Java方法服务线程私有,声明周期跟线程一致一个Java方法执行到结束的过程:栈帧从入栈到出栈的过程栈帧存储局部变量表(包

2020-06-20 20:28:37 97

原创 Java后端学习流程

文末有惊喜哦~1 计算机基础这部分内容是计算机相关专业同学的课程,但是非科班的小伙伴(譬如在下)就需要花时间恶补了。特别是计算机网络,操作系统,数据结构这三门课程。至于编译原理,个人大概懂一点就行了,我也只看过简单的概念和状态机相关的内容,并不是特别重要。2 Java编程这里的Java编程部分包含了很多内容。我们可以分别看看,大概归纳一下就是这几个部分。Java基础这里的Java基础包括基本语法,集合类框架,以及一些高级特性,比如反射,注解等等。Java基础的知识点非常多,所以要真正搞懂也

2020-06-16 17:47:33 930

原创 如何准备Java初级和高级的技术面试

一. 换位思考下,如果你面试官,你会怎么做只能通过简历和面试来衡量,别无他法。如果某位大牛确认能力很行,但面试时无法充分地自证能力,那对不起了,过不了,现实就这样。如果面试官由于能力不行,招进来一个大忽悠,那估计会被领导骂。而且再也不会被让面试了,给领导的印象就不好了。所以不能评主观印象,而是会有些客观标准,具体而言,就是从多个方面问些题目,答好答坏就看候选人的。其实一些题目都差不多,但不同能力的面试官问问题的切入点和渐进程度会不同,而且有经验的面试官会挖掘候选人的优势,并能从候选人的说

2020-06-16 15:07:12 75

空空如也

空空如也

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

TA关注的人

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