自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Java基础之枚举类常用用法总结

在阅读这篇文章的内容之前我们可以思考一下,为什么在Java开发规范中有提到一点,尽量定义常量而不直接使用数值进行逻辑操作。其实避免"魔法值"主要是为了解决代码的可读性和可维护性这两个问题的。试想如果我们的项目当中到处散布着类似 if(type == 1){ // doSomething}else{ // doSomething}这样的代码,那么日后接手我们工作的同事在看业务逻辑的时候会在心里如何问...

2020-04-14 15:43:08 261

原创 JAVA乐观锁小结

说到Java锁机制,我们可以暂时将Java的锁分为乐观锁和悲观锁。它们是整个并发编程中很重要的基石,也是面试当中经常会被问到的知识点。今天我们就来总结一下乐观锁的那些事。什么是乐观锁既然说到了乐观锁,那么就需要先解释一个问题,即什么是乐观锁?顾名思义,乐观锁就是一种理想化的状态,非常乐观。每次去取数据的时候都认为其他线程不会对该数据进行修改,因此不会考虑上锁(毕竟一般上锁都是为了主动从防止...

2020-04-05 20:18:13 819

原创 百度二面和京东二面+三面面经

刚刚有放出来自己一面的面经,这里继续给大家贴出来自己后续的面经。希望给自己攒一波人品百度二面:1.自我介绍。有提到服务的模块化改造。2.对于MVC,SOA,微服务的理解3.看到我项目里面用了redis,为什么要用redis ? 是否理解redis的线程模型?4.然后他紧接着问我,你确定redis比Mysql快?5.redis的项目中的实际应用场景?6.我们项目中的那些业务必须要用re...

2020-03-20 21:30:24 1233

原创 记录一下自己百度+京东一面面经

本人研二渣硕一枚,最近赶着春招的东风找了一波暑假实习,下面总结了一下自己的实习面经,希望能够帮助到更多的人。1.自我介绍加项目介绍2.简历上看到你做过项目组长,你在做组长之后做了那些工作。学到了那些东西。3.有看过HashMap源码吗?4.JDK1.7中HashMap的put()方法全过程。5.JDK1.8有那些变化。6.JDK1.7当中HashMap中线程不安全问题有那些?原因分别是...

2020-03-20 21:22:52 257

原创 对于Mysql索引的理解分享

首先,对于日常的Mysql调优过程当中,索引的优化一定是不可避免的。但是,索引的底层数据结构是什么样子的,在日常的调优过程当中有可以从那些方面考虑这些优化点都是值得记录的。索引数据结构可用的索引数据结构大致可以分为以下三种:有序数组,Hash和树形结构。其中Hash索引提供了O(1)时间复杂度的等值查询效率,但是并不支持范围查找和排序,因此适合与临时表优化大连接查询的场景。有序数组则提供...

2020-03-05 18:03:13 141

原创 Redis的内存淘汰策略的学习记录

Redis的过期键淘汰策略由于Redis是内存数据库,为了更加方便的管理内存。Redis的每种数据类型都可以设置过期时间。那么Redis是如何管理过期的key的,目前主要有两种做法即:定时删除,惰性删除。惰性删除惰性删除,顾名思义是一种懒操作的过程。在程序设计当中,为了进一步提高程序的性能(这是为了只有在需要的时候才去分配资源进行操作,提高系统的资源利用率),使用了大量的惰性思想。在R...

2020-02-28 17:20:05 104

原创 覆盖索引的优化点和注意点

金三银九,虽然收到了疫情的冲击。但对于即将踏入社会的我们来说很重要的一段时间。在最近准备面试的过程当中发现,其实对于业务系统来说。Mysql的线上性能调优经验又是非常被看重的一件事情。那么结合我在研究生期间的工作和实习经历来说,对于Mysql的线上调优工作做了一下几个方面的总结,希望能够帮助到所有有需要的同学。在这个不一样的烟花三月当中,一起加油。关于Mysql调优,可能大的思路我们可以主要分为...

2020-02-23 09:20:59 493

原创 线上Mysql为什么会出现性能抖动和相应的解决办法

Mysql性能抖动问题1.基础知识1.Innodb处理更新语句的流程(1).首先Server层的执行器调用InnoDB数据接口,请求数据 --Server层(2).InnoDB会先判断该数据**是否存在于内存**当中,如果在,走(3),如果不在则走(4) --InnoDB引擎层(3).将数据返回给Server层 --InnoDB引擎层(4).加载数据到内存,并将数据返回到Server...

2020-02-18 12:26:41 591

原创 既然Mysql有内存引擎Memory,为什么还需要Redis

既然Mysql有内存引擎Memory,为什么还需要Redis随着对于Mysql的了解,我们知道Mysql有三种常用的数据引擎,分别是:MYISAM,INNODB,MEMORY。其中由于MYISAM不支持事务,行锁等原因的限制,被MySQL官方也逐渐放弃,这里暂不做讨论。但不知道大家是否有和我最初一样的困惑,既然MYSQL也有可以基于内存操作的数据引擎Memory,为什么还需要和Redis配合使用...

2020-02-16 12:01:59 4885 2

原创 为了面试硬着头皮总结了JVM的基础知识,送给大家的思维导图

为了准备最近的面试又重新刷了一边周志明爸爸的深入JAVA虚拟机的基础,在这里把自己总结的思维导图放出来,希望可以帮助到各位有需要的人,也希望大家可以给我更多的意见和反馈,共同成长,感谢。...

2020-02-14 17:29:41 146

原创 如何解决Git冲突

原始做法之前在和同事使用Git进行协同开发而出现文件冲突时, 我一般会选择手动把自己的改动单独粘贴到一个文件当中,然后丢弃本地暂存文件,然后执行git pull命令将远程分支上的代码拉下来,在比对着进行合并。终于,在无法忍受其低效带来的不良体验之后,开始自己着手查找资料,并通过实践解决了冲突问题。正确做法1.使用 git branch 查看本地分支2.首先使用git checkout -...

2020-02-12 11:47:19 943

原创 JAVA线程池学习

在学习了JAVA线程池之后,为了日后复习方便,做了思维导图,在这里分享给大家。也给自己准备着:

2019-08-22 15:17:03 129

原创 为什么Java会比C++慢

最近在复习一些Java的基础知识,突然回想起了这个远古问题,就是基本上所有的人都在说Java比C++的运行速度慢很多很多,而这些人可能有绝大部分人也并不是很清楚其中的原因,今天就来整理一下。首先JAVA是一种解释型语言,也就是说JAVA并不能直接被编译连接成机器语言执行,而是被编译成二进制的.class字节码文件,再由java虚拟机解释执行,这中间就有了字节码加载的开销,和解释字节码的时间开销。...

2019-07-09 15:30:37 1393

原创 浅谈Docker引擎

在Docker首次发布的时候,Docker引擎由两个核心构成,即:LXC和Dockerdaemon。 由LXC来基于Linux内核的容器虚拟化技术来提供像NameSpace,Cgruop等基础工具的操作技术;由Daemon来统一负责镜像的管理,容器生命周期的管理,认证等工作。这样做也带来了很多的缺点,首先:LXC是基于Linux的,这对于一个立志与跨平台的项目来说本身就是一个瓶颈;其次,使用一个外...

2019-05-11 16:20:19 329

原创 windows环境下 解决 docker pull 私有registry,报x509: certificate signed by unknown authority错误的解决办法

1.修改 windows-daemon-options.json和/linux-daemon-options.json中的"insecure-registries": ["***.***.***"].2.修改docker --settings的daemon的私有仓库地址:5000。3.重启docker4.docker pull 拉取镜像即可...

2019-05-11 11:29:08 6091

原创 解决本地Maven仓库有jar包缺在pxm.xml文件中无法找到的问题

解决本地Maven仓库有jar包缺在pxm.xml文件中无法找到的问题今天,在开发项目的时候用到了公司私有的jar文件,从远程仓库拉下jar包后,pom文件却一直报错,报错的原因是无法解析依赖。 解决的办法删除掉了jar文件中的 _remote.repositories 文件,然后右键点击项目,Maven reimport,错误解决。查找到了资料,发现原因可能是因为jar包是之前从公司仓库拉取的...

2019-05-08 15:20:25 318

原创 Java的引用数据类型在使用前为什么要初始化

在今天的学习当中,碰到了一个问题,在定义了引用类型的数组之后如果没有进行初始化,则会出行NotPointFound错误。具体代码见下: public class Test {public static void main(String[] args) { Random r = new Random(); Student [] stu = new Student[20];...

2018-08-10 07:58:13 1737

空空如也

空空如也

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

TA关注的人

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