关闭
当前搜索:

[置顶] Java后端技术大家庭!大量学习资料!欢迎加入!

亲爱的小伙伴,为了大家更好地交流学习,交流方式! 微信群,加我好友我拉你进去:(备注:Java) (5群)、QQ群:欢迎扫码加入(QQ群号:596774989) (6群)、QQ群:欢迎扫码加入(QQ群号:582041293): (1群)、QQ群:欢迎扫码加入(QQ群号:581120365)如果1群已满请加2群: (2群)、QQ群:欢迎扫码加入(QQ群号:58685...
阅读(3153) 评论(4)

一步步带你了解前后端分离利器之JWT

一、HTTP的无状态性 HTTP 是无状态协议,它不对之前发送过的请求和响应的状态进行管理。也就是说,无法根据之前的状态进行本次的请求处理。假设要求登录认证的 Web 页面本身无法进行状态的管理(不记录已登录的状态),那么每次跳转新页面不是要再次登录,就是要在每次请求报文中附加参数来管理登录状态。 不可否认,无状态协议当然也有它的优点。由于不必保存状态,自然可减少服务器的 CPU 及内存资源的...
阅读(373) 评论(0)

带你发现新大陆!什么是图数据库以及简单入门!

一、关系型数据库的不适性 在众多不同的数据模型里,关系数据模型自20世纪80年代就处于统治地位,而且出现了不少巨头,如Oracle、MySQL,它们也被称为:关系数据库管理系统(RDBMS)。然而,随着关系数据库使用范围的不断扩大,也暴露出一些它始终无法解决问题,其中最主要的是数据建模中的一些缺陷和问题,以及在大数据量和多服务器之上进行水平伸缩的限制。同时,互联网发展也产生了一些新的趋势变化:...
阅读(516) 评论(0)

分布式锁简单入门以及三种实现方式介绍

很多小伙伴在学习Java的时候,总是感觉Java多线程在实际的业务中很少使用,以至于不会花太多的时间去学习,技术债不断累积!等到了一定程度的时候对于与Java多线程相关的东西就很难理解,今天需要探讨的东西也是一样的和Java多线程相关的!做好准备,马上开车! 学过Java多线程的应该都知道什么是锁,没学过的也不用担心,Java中的锁可以简单的理解为多线程情况下访问临界资源的一种线程同步机制。...
阅读(485) 评论(0)

面试必备技能:JDK动态代理给Spring事务埋下的坑!

一、场景分析最近做项目遇到了一个很奇怪的问题,大致的业务场景是这样的:我们首先设定两个事务,事务parent和事务child,在Controller里边同时调用这两个方法,示例代码如下:1、场景A:@RestController @RequestMapping(value = "/test") public class OrderController { @Autowired priv...
阅读(1746) 评论(1)

四张图带你了解Tomcat系统架构--让面试官颤抖的Tomcat回答系列!

俗话说,站在巨人的肩膀上看世界,一般学习的时候也是先总览一下整体,然后逐个部分个个击破,最后形成思路,了解具体细节,Tomcat的结构很复杂,但是 Tomcat 非常的模块化,找到了 Tomcat最核心的模块,问题才可以游刃而解,了解了Tomcat的整体架构对以后深入了解Tomcat来说至关重要! 一、Tomcat顶层架构 先上一张Tomcat的顶层结构图(图A),如下: Tomc...
阅读(2393) 评论(6)

Spring核心技术原理-(4)-三条路线告诉你如何掌握Spring IoC容器的核心原理

IoC(控制反转,英文含义:Inverse of Control)是Spring容器的内核,AOP、事务等功能都是建立在此基础上的。从字面意思上可以把IoC拆分为两层含义:**控制和反转**。控制可以理解为是接口实现类的选择权,反转可以理解为这个选择权交给第三方进行管理;总的来说就是某一接口具体实现类的选择控制权从调用类中移除,转交给第三方进行决定,即由Spring容器通过Bean配置来进行控制,这样的话应用程序本身...
阅读(2162) 评论(0)

推荐几款非常实用的IDEA插件

Alibaba Java Coding Guidelines 《阿里巴巴Java开发规约》 GsonFormat Stack Overflow Background Image Plus Lombok CodeGlance Markdown support、Maven Helper JRbel...
阅读(1306) 评论(1)

Spring核心技术原理-(3)-Spring历史版本变迁和如今的生态帝国

前几篇:Spring核心技术原理-(1)-通过Web开发演进过程了解一下为什么要有Spring?Spring核心技术原理-(2)-通过Web开发演进过程了解一下为什么要有Spring AOP?前两篇从Web开发史的角度介绍了我们在开发的时候遇到的一个个坑,然后一步步衍生出Spring Ioc和Spring AOP的概念雏形。Spring从2004年第一个正式版1.0 Final Released发展...
阅读(799) 评论(0)

Spring核心技术原理-(2)-通过Web开发演进过程了解一下为什么要有Spring AOP?

上一篇:Spring核心技术原理-(1)-通过Web开发演进过程了解一下为什么要有Spring? 上一篇从Web开发演进过程的一个侧面简述了一下为什么会有Spring?事实上只介绍了为什么会有Spring IOC(控制反转/依赖注入)以及Spring IOC的雏形。我们都知道Spring的两个核心知识点是:IOC和AOP。因此,这一篇还是以Web开发演进过程为线索继续探讨一下为什么会有Spring...
阅读(1954) 评论(1)

Spring核心技术原理-(1)-通过Web开发演进过程了解一下为什么要有Spring?

一、知史可以明鉴 我们学习技术的时代赶上了最好的时代,跳过了很多前人经常踩的坑,前人在踩坑的过程中总结了很多经验和教训,而新时代的我们只是继承了前人的经验和教训,而忽略了这些采坑的过程,以至于我们面对很多新技术都不知道他是什么?他为什么存在?他为什么可以解决这个问题?更不知道如何掌握其原理!云里雾里一头雾水! 交流群的很多小伙伴,常常私聊我让我推荐一下学习SSM框架的视频和资料,我首先会打开他...
阅读(9537) 评论(3)

大数据时代:我们是一朝天子,还是一世奴隶?

很多人还没有搞清楚什么是PC互联网的时候,移动互联网来了;还没有搞清楚移动互联网的时候,大数据时代又来了! 大数据一词最早出现是在1980年著名未来学家托夫勒在其所著的《第三次浪潮》中,书中提出“如果说IBM的主机拉开了信息化革命的大幕,那么‘大数据’才是第三次浪潮的华彩乐章。” 2008年9月《自然》杂志推出了名为“大数据”的封面专栏,从此大数据开始崭露头角,2009年“大数据”才成为信息技术行业...
阅读(786) 评论(1)

使用Jenkins配置SpringBoot的自动化构建

相关阅读1、使用Jenkins配置Git+Maven的自动化构建2、Jenkins部署Maven多环境项目(dev、beta、prod)的参数设置3、使用Generic Webhook Trigger插件实现Jenkins+WebHooks(码云)持续集成4、使用Generic Webhook Trigger插件实现Jenkins+WebHooks(码云)持续集成–指定具体分支集成项目结构这是一个S...
阅读(5213) 评论(0)

【福利时刻】Java面试题84集系列全集!有需要的小伙伴赶紧过来保存啦!

《长歌行》 青青园中葵,朝露待日晞。 阳春布德泽,万物生光辉。 常恐秋节至,焜黄华叶衰。 百川东到海,何时复西归? 少壮不努力,老大徒伤悲。目录01.面试的整体流程 02.java的垮平台原理 03.搭建一个java的开发环境 04.java中int占几个字节 05.java面向对象的特征 06.装箱和拆箱 07.==和equals的区别 08.String 09.讲一下j...
阅读(4134) 评论(2)

小白入门:大型网站技术架构负载均衡技术介绍及学习资源推荐

十年间,负载均衡的前沿技术层出不穷,令用户眼花缭乱。经常在技术网站、文档中出现的“四层负载均衡”、“七层负载均衡”字眼有什么含义?有什么区别?对客户网络有哪些不同的优化?在大型的网站服务器集群中,负载均衡技术是必不可少的。使用负载均衡的技术架构,能够有效避免后端服务出现单点故障,提升服务的稳定性。一、负载均衡简介负载均衡,英文名称为LoadBalance,其意思就是将负载(工作任务)进行平衡,分摊到...
阅读(5131) 评论(0)

Java多线程编程-(18)-借ThreadLocal出现OOM内存溢出问题再谈弱引用WeakReference

前两篇:Java多线程编程-(3)-线程本地ThreadLocal的介绍与使用Java多线程编程-(8)-多图深入分析ThreadLocal原理Java多线程编程-(9)-ThreadLocal造成OOM内存溢出案例演示与原理分析一、简单回顾在上几篇的时候,已经简单的介绍了不正当的使用ThreadLocal造成OOM的原因,以及ThreadLocal的基本原理,下边我们首先回顾一下ThreadLoc...
阅读(3816) 评论(1)

Java多线程编程-(17)-多线程异步调用之Future模式

一、线程计数器回顾在《Java多线程编程-(6)-两种常用的线程计数器CountDownLatch和循环屏障CyclicBarrier》 这一篇中,我们使用线程计数器的方式实现了在主线程中等待计数的线程执行完之后在执行阻塞等待之后的代码。看段代码回顾一下:public class SummonDragonDemo { private static final int THREAD_COUNT...
阅读(4126) 评论(0)

Java多线程编程-(16)-等待/通知模式接口Condition接口深入分析

前几篇:Java多线程编程-(12)-Java中的队列同步器AQS和ReentrantLock锁原理简要分析Java多线程编程-(15)-读写锁ReentrantReadWriteLock深入分析一、Condition接口简介在上述两篇文章中讲解AQS的时候,我们已经知道了同步队列AQS的内部类ConditionObject实现了Condition接口,使用ReentrantLock和Reentra...
阅读(3637) 评论(0)

Java多线程编程-(15)-读写锁ReentrantReadWriteLock深入分析

上两篇:Java多线程编程-(12)-Java中的队列同步器AQS和ReentrantLock锁原理简要分析Java多线程编程-(13)- 关于锁优化的几点建议一、前言上两篇的内容中已经介绍到了锁的实现主要有ReentrantLock和ReentrantReadWriteLock。ReentrantLock是重入锁,顾名思义就是支持重进入的锁,他表示该锁能够支持一个线程对资源的重复加锁,上文中已经提...
阅读(694) 评论(0)

Java多线程编程-(14)-无锁CAS操作以及Java中Atomic并发包的“18罗汉”

对于并发控制而言,锁是一种**悲观的策略**。它总是假设每一次的临界区操作会产生冲突,因此,必须对每次操作都小心翼翼。如果有多个线程同时需要访问临界区资源,就宁可牺牲性能让线程进行等待,所以说锁会阻塞线程执行。 而无锁是一种**乐观的策略**,它会假设对资源的访问是没有冲突的。既然没有冲突,自然不需要等待,所以所有的线程都可以在不停顿的状态下持续执行。 那遇到冲突怎么办呢?无锁的策略使用一种叫做**比较交换的技...
阅读(672) 评论(0)

Java多线程编程-(13)- 关于锁优化的几点建议

上一篇:Java多线程编程-(11)-从volatile和synchronized的底层实现原理看Java虚拟机对锁优化所做的努力Java多线程编程-(12)-Java中的队列同步器AQS和ReentrantLock锁原理简要分析一、背景在《 Java多线程编程-(11)-从volatile和synchronized的底层实现原理看Java虚拟机对锁优化所做的努力》 这一篇文章中,我们大致介绍了Ja...
阅读(5175) 评论(0)
530条 共27页1 2 3 4 5 ... 下一页 尾页
    个人资料
    • 访问:2677249次
    • 积分:25431
    • 等级:
    • 排名:第289名
    • 原创:484篇
    • 转载:45篇
    • 译文:1篇
    • 评论:1065条
    Java后端技术 微信公众号
    Java大型互联网技术资源分享群: 574683650
    博客专栏
    最新评论