
---------JAVA框架-----------
火锅技术栈
我不能保证写的每个地方都是对的,但是至少能保证每一句话、每一行代码都经过了认真的推敲、仔细的斟酌。每一篇文章的背后,希望都能看到自己对于技术、对于生活的态度。
我相信乔布斯说的,只有那些疯狂到认为自己可以改变世界的人才能真正地改变世界。面对压力,我可以挑灯夜战、不眠不休;面对困难,我愿意迎难而上、永不退缩。
其实我想说的是,我只是一个程序员,这就是我现在纯粹人生的全部。
展开
-
笔记2022-10-24
记录原创 2022-10-24 11:15:49 · 235 阅读 · 0 评论 -
代码问题排查与系统优化手册
软件工程领域存在一个共识:维护代码所花费的时间要远多于写代码。而整个代码维护过程中,最惊心动魄与扣人心弦的部分,莫过于问题排查(Trouble-shooting)了。特别是那些需要 7x24 小时不间断维护在线业务的一线服务端程序员们,大大小小的问题排查线上救火早已成为家常便饭,一不小心可能就吃成了自助餐 —— 竖着进躺着出,吃不了也兜不住。本文分享作者在服务端问题排查方面的一些经验,包括常见问题、排查流程、排查工具,结合实际项目中发生过的惨痛案例进行现身说法。原创 2021-12-30 10:47:51 · 708 阅读 · 0 评论 -
SpringBoot源码分析-启动流程、解决循环依赖
SpringApplication.run(BootWebApplication.class, args);1、启动流程:SpringApplication类public ConfigurableApplicationContext run(String... args) 核心方法:public ConfigurableApplicationContext run(String... args) { StopWatch stopWatch = new StopWatch()...原创 2021-03-26 14:27:33 · 295 阅读 · 0 评论 -
Java 的垃圾回收从头到尾
简介:之前上学的时候有一个梗,说在食堂里吃饭,吃完把餐盘端走清理的是 C++ 程序员,吃完直接就走的是 Java 程序员。确实,在 Java 的世界里,似乎我们不用对垃圾回收那么的关注。很多初学者不懂 GC,也能写出一个能用甚至还不错的程序或系统。阿里妹导读:之前上学的时候有一个梗,说在食堂里吃饭,吃完把餐盘端走清理的是 C++ 程序员,吃完直接就走的是 Java 程序员。确实,在 Java 的世界里,似乎我们不用对垃圾回收那么的关注。很多初学者不懂 GC,也能写出一个能用甚至还不错的程序..原创 2020-10-01 14:00:54 · 189 阅读 · 0 评论 -
SpringCloud架构
架构Eureka、Ribbon、Feign、Zuul就是优化并发冲突如果你基于Spring Cloud对外发布一个接口,实际上就是支持http协议的,对外发布的就是一个最最普通的Spring MVC的http接口feign,他是对一个接口打了一个注解,他一定会针对这个注解标注的接口生成动态代理,然后你针对feign的动态代理去调用他的方法的时候,此时会在底层生成ht...原创 2019-12-02 20:36:22 · 975 阅读 · 5 评论 -
Spring难以理解的问题总结
1、Spring事务传播机制(主要指同时包含多个事物时的传播行为)Spring在TransactionDefinition接口中规定了7种类型的事务传播行为,它们规定了事务方法和事务方法发生嵌套调用时事务如何进行传播,即协调已经有事务标识的方法之间的发生调用时的事务上下文的规则(是否要有独立的事务隔离级别和锁)概述当我们调用一个基于Spring的Service接口方法(如...原创 2018-04-09 12:10:33 · 546 阅读 · 0 评论 -
自写SpringMVC框架
更新1:2018/3/31 补充图片Spring框架对于Java后端程序员来说再熟悉不过了,以前只知道它用的反射实现的,但了解之后才知道有很多巧妙的设计在里面。如果不看Spring的源码,你将会失去一次和大师学习的机会:它的代码规范,设计思想很值得学习。我们程序员大部分人都是野路子,不懂什么叫代码规范。写了一个月的代码,最后还得其他老司机花3天时间重构,相信大部分老司机都很头疼看新手的代码。废话不...原创 2018-03-08 15:08:09 · 1740 阅读 · 0 评论 -
Spring IOC/BeanFactory/ApplicationContext的工作流程/实现原理/初始化/依赖注入源码详解
Spring的工作流程/实现原理之基石IOC/BeanFactory/ApplicationContext 更新1:2017/11/23更新2:2018/1/30(截图)一、什么是IOC容器? IOC(Inversion of Control)、控制反转亦称依赖注入.IOC容器指的是实现对依赖对象的创建(无参构造器)、管理(参数注入)、销毁(关闭BeanFactory).二、Spring IOC ...原创 2017-09-20 23:43:16 · 6824 阅读 · 3 评论 -
阿里、腾讯、百度、华为、京东、搜狗和滴滴最新面试题汇集
前一段时间和大牛们交流了一下,据反馈现在Android岗位也没有以前那么多了,没这么好找了,面临2016年寒冬季节,大量公司模仿O2O模式导致死掉企业的很多,在加之培训机构大量的培训人,导致供大于求,当然这不意味着饱和,只是市场更趋于合理一些(只要技术好不用怕的)。最近结合一些面试的同学和大牛们(张旭童)反馈,前几天听童哥去阿里面试顺便整理了下一些面试题目。希望对大家有所帮助,后期会不断更新添加新...原创 2018-01-15 11:38:34 · 740 阅读 · 0 评论 -
java后端题目常见
ThreadLocal(线程变量副本)Synchronized实现内存共享,ThreadLocal为每个线程维护一个本地变量。采用空间换时间,它用于线程间的数据隔离,为每一个使用该变量的线程提供一个副本,每个线程都可以独立地改变自己的副本,而不会和其他线程的副本冲突。ThreadLocal类中维护一个Map,用于存储每一个线程的变量副本,Map中元素的键为线程对象,而值为对原创 2017-10-03 12:35:36 · 2103 阅读 · 1 评论 -
DispatcherServlet请求分发源码分析
首先,从DispatcherServlet的名称上可以看出它是一个Servlet,通过一张图来看一下它的实现关系。 既然DispatcherServlet是一个Servlet,那么初始化的时候一定会执行init方法,查看源码发现DispatcherServlet的init方法继承自HttpServletBean,具体代码如下图所示。 对于上面的代码,配合一个实际的web.xml配置样例更容易理解...转载 2017-10-03 12:08:21 · 6406 阅读 · 0 评论 -
Spring Aop 源码实现原理分析
更新:2018/4/2修改字体、添加引言。0 引言AOP是Aspect Oriented Programing的简称,面向切面编程。AOP适合于那些具有横切逻辑的应用:如性能监测,访问控制,事务管理、缓存、对象池管理以及日志记录。AOP将这些分散在各个业务逻辑中的代码通过横向切割的方式抽取到一个独立的模块中。AOP 实现的关键就在于 AOP 框架自动创建的 AOP 代理,AO...原创 2017-10-02 14:43:03 · 5180 阅读 · 1 评论 -
Spring Aop实现机制分析原理
1 AOP各种的实现AOP就是面向切面编程,我们可以从几个层面来实现AOP。在编译器修改源代码,在运行期字节码加载前修改字节码或字节码加载后动态创建代理类的字节码,以下是各种实现机制的比较。 类别机制原理优点缺点静态AOP静态织入在编译期,切面直接以字节码的形式编译到目原创 2017-10-01 22:49:17 · 5750 阅读 · 0 评论 -
Spring框架必问面试题和答案详解
目录Spring 概述依赖注入Spring beansSpring注解Spring数据访问Spring面向切面编程(AOP)Spring MVC一、Spring 概述1. 什么是spring?Spring 是个java企业级应用的开源开发框架。Spring主要用来开发Java应用,但是有些扩展是针对构建J2EE平台的web应用。Spring 框架目标是简化Java企业级应用开发,并通过POJO为基...原创 2017-09-30 17:09:04 · 2482 阅读 · 0 评论