JAVA架构
Java资料分享师
一名卑微的java程序员,专注于零基础到架构资料的分享,个人微信:BGM7756
展开
-
经典面试题:为什么 ConcurrentHashMap 的读操作不需要加锁?
我们知道,ConcurrentHashmap(1.8)这个并发集合框架是线程安全的,当你看到源码的get操作时,会发现get操作全程是没有加任何锁的,这也是这篇博文讨论的问题——为什么它不需要加锁呢?ConcurrentHashMap的简介“我想有基础的同学知道在jdk1.7中是采用Segment + HashEntry + ReentrantLock的方式进行实现的,而1.8中放弃了Segment臃肿的设计,取而代之的是采用Node + CAS + Synchronized来保证并发安全进行原创 2020-07-11 16:24:58 · 259 阅读 · 0 评论 -
一个HTTP就能打趴80%面试者,你敢信?
//加V:BGM7756可免费领取文末面试资料!面试一年多,每当我问起面试者对HTTP的了解时,个个回答令我瞠目结舌,这些开发者都有3-5年的经验。请不要让我叫你野生程序员,是时候了解HTTP了,让我们当个正规军。起因面试官:请问你了解HTTP协议吗?前端开发:这不是应该后端清楚的吗?后端开发:这不是前端知道的吗?面试官:……我们先一本正经的来了解下HTTP(不包含传输层TCP),然后总结其中的精华回复面试官。HTTP协议简介HTTP(超文本传输协议)是应用层上的一种客户端/服务端模型的原创 2020-07-08 10:53:44 · 113 阅读 · 0 评论 -
使用MyBatis访问MySQL新姿势
整合MyBatis第一步:新建Spring Boot项目,在pom.xml中引入MyBatis的Starter以及MySQL Connector依赖,具体如下://+V:BGM7756,免费领取零基础到架构师的资料<dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId>原创 2020-07-03 16:33:31 · 157 阅读 · 0 评论 -
什么是HashMap?
猿灯塔 全文略长 希望对各位有帮助!另外!文末有令你们心动的白嫖惊喜哦!想要的朋友转发文章并私聊我哦!调用Put方法的时候发生了什么呢?比如调用 hashMap.put(“apple”, 0) ,插入一个Key为“apple"的元素。这时候我们需要利用一个哈希函数来确定Entry的插入位置(index):index = Hash(“apple”)假定最后计算出的index是2,那么结果如下:但是,因为HashMap的长度是有限的,当插入的Entry越来越多时,再完美的Hash.原创 2020-07-01 11:04:24 · 148 阅读 · 0 评论 -
教你一招学会开发自己的Spring Boot Starter!
Spring Boot Starter 简介篇幅有点长,大家耐心看完哦!希望对大家有一定的用处!Spring Boot Starter 是一组方便使用的依赖关系描述符,可以在应用程序中包含这些描述符。借助 Spring Boot Starter 开发人员可以获得所需的所有 Spring 及相关技术的一站式服务,而无需查看示例代码或复制粘贴依赖的库文件。譬如,如果需要 Spring JPA 访问数据库,则可以在工程中直接饮用 spring-boot-starter-data-jpa有关 starter原创 2020-06-23 20:43:23 · 168 阅读 · 0 评论 -
多线程学习的秘密你知道吗?
随着开发项目中业务功能的增加,必然某些功能会涉及到线程以及并发编程的知识点。笔者就在现在的公司接触到了很多软硬件结合和socket通讯的项目了,很多的功能运用到了串口通讯编程,串口通讯编程的安卓端就是基于线程的方式和硬件保持通讯的。关于Java线程,先了解一下Java线程的生命周期和物种基本状态,先上一张经典的图上图也比较直观的绘制了关于Java线程的生命周期同时也囊括了Java线程的重点知识点。Java线程的五种状态:新建状态(New):当线程对象创建后,线程即进入新建状态,如:Thread原创 2020-06-20 18:08:28 · 183 阅读 · 0 评论 -
Java后端学习,你应该看哪些书籍?
文末有惊喜哦~书架主要针对Java后端和全栈开发用的书籍介绍《Spring Boot 2.0企业级应用开发实战》本书深入浅岀地讲解了 Spring与 Spring Boot所涉及的重要知识点。更有特色的是,针对一个博客系统的开发过程,来描述所涉及的相关技术细节。读者不仅能全面学到软件开发技能,还能学到项目实战经验,在书中充分享受 coding的乐趣。《Spring Cloud 微服务架构开发实战》本书从微服务的思想谈起,渐渐深入当前最流行的分布式微服务架构-- Spring Cloud,然原创 2020-06-16 17:25:54 · 513 阅读 · 0 评论 -
人人都能掌握的Java服务端性能优化方案
作为一个Java后端开发,我们写出的大部分代码都决定着用户的使用体验。如果我们的后端代码性能不好,那么用户在访问我们的网站时就要浪费一些时间等待服务器的响应。这就可能导致用户投诉甚至用户的流失。关于性能优化是一个很大的话题。《Java程序性能优化》说性能优化包含五个层次:设计调优、代码调优、JVM调优、数据库调优、操作系统调优等。而每一个层次又包含很多方法论和最佳实践。本文不想大而广的概述这些内容。只是举几个常用的Java代码优化方案,读者看完之后可以真正的实践到自己代码中的方案。使用单例对于IO处理原创 2020-06-16 14:55:17 · 130 阅读 · 0 评论