自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 互联网大厂 2700 道 Java 高频面试题(2023 年最新版)不管你工作几年,都可以看看

JVM 39 道、Java I/O 15 道、Kafka 16 道、MySQL 32 道、Netty 15 道 、Dubbo 15 道、ZooKeeper 28 道、MyBatis 27 道、Redis 40 道、Spring 129 道、消息队列 16 道、分布式 15 道、微服务 15 道、Java 并发编程 72 道、Java 集合 30 道。其实,并不是找工作难,而是你没有找对方法、面试技巧,你更需要的是硬技术+软技能相结合,才能畅通无阻,平淌大厂 offer 拿到手软!

2023-04-23 15:33:33 413

原创 求你看完再去面试!涨薪必备分布式事务小抄,狂怼面试官

什么是 LCN 框架框架特点LCN 框架原理核心步骤SpringCloud 整合 LCN 框架实战准备的软件环境测试用例分析构建测试用例核心步骤准备的软件环境。

2023-04-23 15:28:50 213

原创 mybatis 使用及 SQL 语句优化小结

返回类型为 String 的, 实际返回 null;返回类型为对象的:实际返回 null;返回类型为列表等集合: 实际返回空集合[];返回类型为 Boolean:实际返回 false当数据库语句插入条件不满足,会返回 false;比如使用 dual 的 SQL 语句;

2023-04-23 15:26:24 344

原创 阿里,快手,拼多多等 7 家大厂 Java 面试真题,Java 笔试题及答案详解

作为过来人,小编是整理了很多进阶架构视频资料、面试文档以及 PDF 的学习资料,针对上面一套系统大纲小编也有对应的相关进阶架构视频资料点击此处即可。

2023-04-23 15:25:01 222

原创 Mybatis 使用的 9 种设计模式,真是太有用了

1、Builder模式2、工厂模式3、单例模式4、代理模式5、组合模式6、模板方法模式7、适配器模式8、装饰者模式9、迭代器模式虽然我们都知道有26个设计模式,但是大多停留在概念层面,真实开发中很少遇到,Mybatis源码中使用了大量的设计模式,阅读源码并观察设计模式在其中的应用,能够更深入的理解设计模式。

2023-04-23 15:20:30 199

原创 2023Java 岗面试,进互联网大厂必备 Java 面试八股文真题解析

一般技术面试官都会通过自己的方式去考察程序员的技术功底与基础理论知识。很多时候,面试官问的问题会和自己准备的“题库”中的问题不太一样,即使做了复盘,下次面试还是不知道该从何处下手。为此鄙人软磨硬泡才把阿里 P8 专门归纳整理的《Java 进阶知识典藏版》搞来,内容涵盖:大厂面经、计算机基础、Java、JVM、spring、算法、微服务、分布式、技术脑图等等。

2023-04-19 16:15:27 124

原创 MySQL 超详细安装教程 手把手教你安装 MySQL 到使用 MySQL 最简单的 MySQL 安装方式,这种方式装,卸载也简单(零基础入门 MySQL)

注释掉 my.ini 文件的最后一句话,加 #号注释。

2023-04-19 16:14:57 314

原创 容器化 | 基于 Kubernetes 的新一代 MySQL 高可用架构实现方案

首先 RadonDB MySQL 一个 Pod 中的容器角色中,一般包含 MySQL、Xenon、slowlog 三个容器。

2023-04-19 14:10:26 370

原创 借助 TCP 负载均衡和 Galera 集群扩展 MySQL

我们在本文中探讨了负载均衡 TCP(或 UDP)应用(例如 MySQL)的几个基本方面。NGINX 提供了一个功能齐全的 TCP/UDP 负载均衡器,无论流量类型如何,都可帮助您交付具有出色性能、可靠性、安全性及可扩展性的应用。

2023-04-19 13:52:21 117

原创 MySQL 架构与 SQL 执行流程

演化版本 MySQL:MariaDB、InnoSQL 通信类型:同步、异步链接方式:长连接、短链接协议:tcp、unix socket客户端链接与线程关系:客户端每产生一个会话 session,在服务端就会有一个线程去处理这个操作。

2023-04-13 14:44:30 67

原创 互联网工程师 1480 道 Java 面试题及答案整理 ( 2023 年 整理版)

最近很多粉丝朋友私信我说:熬过了去年的寒冬却没熬过现在的内卷;打开 Boss 直拒一排已读不回,回的基本都是外包,薪资还给的不高,对技术水平要求也远超从前;我国大概有 400-700 万程序员,其中光 Java 就占了一半。而大厂所需要的程序员是有限的,高薪也只能给到少数人,所以 Java 的竞争才会如此激烈,内卷化也越来越严重。我们不能改变内卷的大形势,能做的也就只有不断提升自己,去适应市场环境,提高自身技术水平,这样才能在跳槽黄金季拿到自己心仪的 Offer!

2023-04-13 14:40:46 73

原创 Docker | Compose 创建 mysql 容器

6、修改 user 表中的 Host: update user set Host='%' where User='root';希望能和大家一起努力营造一个良好的学习氛围,为了个人和家庭、为了我国的互联网物联网技术、数字化转型、数字经济发展做一点点贡献。5、查看 user 表中的数据:select Host, User,Password from user;4、查看 mysql 数据库中所有的表:show tables;3、进入 mysql 数据库:use mysql;创建 MySql 用户。

2023-04-13 14:38:57 59

原创 MySQL 架构与 SQL 执行流程

演化版本 MySQL:MariaDB、InnoSQL 通信类型:同步、异步链接方式:长连接、短链接协议:tcp、unix socket客户端链接与线程关系:客户端每产生一个会话 session,在服务端就会有一个线程去处理这个操作。

2023-04-13 14:37:32 55

原创 JVM Sandbox 入门教程与原理浅谈

本文花了较短的篇幅重点介绍了 JVM Sandbox 的功能,实际用法,以及基础原理。它通过封装一些底层 JVM 控制的框架,使得对 JVM 层面的 AOP 开发变的异常简单,就像作者自己所说“JVM-SANDBOX 还能帮助你做很多很多,取决于你的脑洞有多大了。笔者在公司内部也通过它实现了很多小工具,比如上面的应用启动数据观测(公司内部是一个更为稳定复杂的版本,还监控了大量中间件的数据),帮助了很多部门同事,优化他们应用的启动速度。

2023-04-12 14:01:54 234

原创 JVM 的 noverify 启动参数

当 ClassLoader 加载的 Java 字节码时,字节码首先接受校验器(verifier)的校验。校验器负责检查那些指令无法执行的明显的破坏性的操作。校验器执行的检查操作:变量要在使用之前进行初始化。方法调用与对象应用类型之间要匹配。访问私有数据和方法的规则没有被违反。对本地变量的访问都在运行时堆栈内。运行时堆栈没有溢处。如果你不希望 JVM 运行这个校验的话,你可以添加noverify参数。

2023-04-12 13:53:33 230

原创 阿里顶配版 Spring 全家桶高级笔记 +300 道硬核面试题,跪着啃完了

(涉及 Spark 特点、Spark 模块组成、Spark 运行机制,以及 Spark RDD、Spark Streaming、Spark SQL、DataFrame、DataSet、Spark Structured Streaming 的原理和使用等内容)(涉及栈、队列、链表、散列表、二叉树、红黑树、图和位图、二分查找、冒泡排序、插入排序、快速排序、希尔排序、归并排序、桶排序、基数排序等算法等内容)包含了阿里、百度、腾讯、字节等众多大厂的面试真题,还有详细的各企业面试重点、项目解决方案,

2023-04-12 13:53:29 99

原创 2023 最全 168 道 Spring 全家桶面试题(含答案)

所有的面试题目都不是一成不变的,特别是像一线大厂,上面的面试题只是给大家一个借鉴作用,最主要的是给自己增加知识的储备,有备无患。Spring 系列的学习笔记和面试题,包含 spring 面试题、spring cloud 面试题、spring boot 面试题、spring 教程笔记、spring boot 教程笔记、最新阿里巴巴开发手册(63 页 PDF 总结)、2020 年 Java 面试手册。一共整理了 1184 页 PDF 文档。

2023-04-12 13:52:06 147

原创 Java JVM 可观测的原理解释和落地方案对比

本文介绍了 JVM 监控的技术原理,同时介绍了常见的几种开源暴露 JVM 指标的工具。从接入方式来看主要分为两类,第一类是像 Spring Boot Actuator 需要客户应用做一些改造的方式,另一类是 JMX Exporter 和 Opentelemetry Java Agent 无侵入的方式。

2023-04-12 13:47:45 164

原创 深入理解 MySQL 主从复制原理以及集群部署过程

如果主库不是运行很久的,不需要备份数据还原到从库,而是直接搭建的主从复制集群,那么直接可以从主库状态信息那里,获取 Binlog 的标识位号,在配置主从时,一定要指对 Binlog 标识位号,否则主从将会失败。从 Binlog 的哪一个事件标识号处开始复制数据,尤为关键,因为主库可能运行的时间长了,也有很多的数据,一定要从合适的位置处开始复制数据,要不然也会产生很大的资源浪费。如果是运行很久的主库,要升级为主从复制集群,那么建议将主库上的数据备份还原到从库上,避免从库一次性同步很多数据,浪费性能。

2023-04-11 14:55:01 98

原创 看完这份 SpringBoot 神级文档,面试真的可以为所欲为

绕过工作中遇到的很多坑。一个框架的源码也是最大的知识库,

2023-04-11 14:52:27 60

原创 mysql 与 redis 的选型问题实践

数据结构:门店 x 商品 x 渠道mysql:b+树索引组合查询可以支持,另外支持 sql 丰富的查询统计redis:k-v 结构可以支持qps:1wqpsmysql:需要添加备库以支撑 qps,当前公司可申请的最大规格无法满足 qps 要求,需要 dba 操作。redis:可以水平扩展数据量mysql:需要进行分库分表,开发/维护成本较高redis:可以水平扩展rtmysql:公司内部使用了 dbproxy 优化,从监控结果上看,性能跟 redis 所差不多redis:基于内存,快速。

2023-04-11 14:41:18 95

原创 深入理解 MYSQL 之缓存

在讲缓存之前先了解一下,什么是 MYSQL 的主从复制和读写分离。

2023-04-11 14:40:10 129

原创 涨薪跳槽利器!清华大佬总结的 Java 核心突击讲,一应俱全

在毕业之前其实就已经把阿里当成了自己的目标,所以一直在针对阿里做相关的功课,在网上关注了很多阿里的程序员和面试过程,因此在这方面下足了功夫,后面经过一些过程得到了一份"Java 面试突击核心讲“,看完之后受益匪浅,这份资料也帮助我成功拿下了阿里的 offer,就连我自己其实也是有点忐忑的,毕竟学历摆在那里,说不自卑是不可能的。

2023-04-11 14:39:47 58

原创 【SSM】Mybatis 系列——mybatis 的简介、环境搭建、CRUD 操作

MyBatis 是一款优秀的持久层框架;它支持自定义 SQL、存储过程以及高级映射。MyBatis 免除了几乎所有的 JDBC 代码以及设置参数和获取结果集的工作。MyBatis 可以通过简单的 XML 或注解来配置和映射原始类型、接口和 Java POJO(Plain Old Java Objects,普通老式 Java 对象)为数据库中的记录。

2023-04-06 17:18:55 88

原创 取代 Mybatis Generator,这款代码生成神器配置更简单,开发效率更高!

通过 Mybatis 的官方教程:https://mybatis.org/mybatis-3/zh/getting-started.html。包用于存放实体类,同时因为需要将数据库的内容注入到 Java 对象中。其中的变量名一定要和数据库表中的字段一定要一一对应。这一点和原来的 Dao 层有点区别,原来是用一个实现类来实现接口,现在使用一个 XML 配置文件来实现接口。包,在其中新建 MyBatis 工具类。其中的代码是 MyBatis 官方约定的,最好不要修改。下建立 UserTest 测试类用于测试。

2023-04-06 17:16:29 206

原创 Mybatis 省略 @Param 注解原理

jdk8 新增了-parameters 参数,开启此参数可以将编译后的 class 文件保留源码中的参数名称,而不是(arg0,arg1)。在回顾 Mybatis 的基础知识点编写 Demo 程序时,发现 Mapper 接口中传递多参数时,需要添加 @param 注解指定传递参数名称,而在 SpringBoot 整合 Mybatis 框架的项目中则可以省略 @param 注解。为了解决以上问题,在 pom 文件添加插件并参加参数,参数的意义: 让编译器在编译代码时,保留参数的实际名称。那么执行结果如何呢?

2023-04-06 17:14:43 406

原创 【SSM】Mybatis 系列——配置解析

这些属性都是可以外部且可动态替换的,既可以在典型的 Java 属性文件中配置,亦可以通过 properties 元素的子元素来传递。也可以指定一个包名,Mybatis 会在包名下面搜索需要的 javaBean,比如:扫描实体类的包,他的默认别名就为这个类的别名,首字母小写!SqlSession 的实例不是线程安全的,因此是不能被共享的,所以它的最佳的作用域是请求或方法作用域。生命周期,和作用域,是至关重要的,因为错误的使用会导致非常严重的并发问题。如果两个文件有同一个字段,优先使用外部文件的!

2023-04-06 17:11:01 94

原创 MySQL 的存储引擎及常用数据类型详解

MySQL 中的数据用各种不同的技术存储在文件(或者内存)中。这些技术中的每一种技术都使用不同的存储机制、索引技巧、锁定水平并且最终提供不同的功能和能力。通过选择不同的技术,你能够获得额外的速度或者功能,从而改善你的应用的整体功能。InnoDB 存储引擎提供了具有提交、回滚和崩溃恢复能力的事务安全。,且会占用更多的磁盘空间以保留数据和索引。

2023-04-04 17:31:06 70

原创 别再说被八股文害惨了!GitHub 阿里 Java 面试题库标星 145K 不无道理

这些面试题全部在下面这个总共 485 页的 PDF 里面,内容涵盖:Java、MyBatis、ZooKeeper、Dubbo、Elasticsearch、Memcached、Redis、MySQL、Spring、Spring Boot、Spring Cloud、RabbitMQ、Kafka、Linux 等技术栈,每个技术以及在 PDF 中的对应位置都截图在下文,大家可以先进行查看。不管是面试还是跳槽,面试前的准备和集中刷题,都是尤其关键的一环,大家要严肃对待这个环节,它关乎你的薪资回报是否能符合预期。

2023-04-04 17:28:10 41

原创 MySQL 高级指令

InnoDB 存储引擎支持关闭自动提交,强制开启事务:任何操作都必须要 COMMIT 提交后才能持久化数据,否则对其他客户端不可见。触发程序是与表有关的数据库对象,监听记录的增加、修改、删除。:如果一条 INSERT 语句插入 N 行数据,语句级触发器只执行一次,行级触发器要执行 N 次。开启事务后,所有输入的 SQL 语句将被认作一个不可分割的整体,在提交时统一执行。如果在输入过程中出现问题,可以手动进行回滚。MySQL 可以手动对表/行锁定,防止其它客户端进行不正当地读取和写入。在触发器中,可以使用。

2023-04-04 17:26:37 27

原创 Java 岗史上最全八股文面试真题汇总,堪称 2023 年面试天花板

为了不影响大家的阅读体验,这篇 Java 八股文的面试真题已经为大家整理好了,希望这份八股文笔记可以帮助今年要面试的小伙伴拿到自己心仪的 offer,当然以上的面试真题仅供参考,也可以在评论区讨论~

2023-04-04 17:25:48 6698 2

原创 一次偶然机会发现的 MySQL“负优化

其实出现这个问题的场景也不算十分特殊,但是排查原因相当困难。当初是花了好几天查资料翻文档加上不断实验才找到了问题所在。只能说MySQL在解析和执行 sql 的背后做了很多的优化,但是这部分对于不够熟悉了解的人来说确实是太黑盒,遇到类似的问题排查也很困难。也许这就是程序员成长路上的必经之路吧。

2023-04-04 17:22:00 47

原创 共 36 万字!为上岸 Alibaba,我把 Github 上 Java 面试题都整理了一遍

出路只有一个,就是技术尽快的随着年纪的增长,不断上升到上一个层次,那个层次上竞争的人更少,被替代的可能性也更小。P3/4:刚毕业的程序员,需要跟 200 万的同行竞争,虽然岗位多,但是竞争大,甚至过饱和了,薪水低。P5/6:工作了 3-5 年,成为高级程序员,只需要跟 50-80 万同行竞争了,竞争压力小了,议价能力强了,薪水就上来了。这个层级,一般人都能随着年前增长而达到,最常见的一个瓶颈期,对部分人也是舒适区。也就是说,在这个层级上,可能是这辈子工作最舒服的时候,也是最为容易松懈的时候。

2023-03-30 17:23:32 84

原创 Spring Boot 的默认日志管理与 Logback 配置详解

Spring Boot在所有内部日志中使用Commons Logging,但是对底层日志的实现是开放的。在Spring Boot生态中,为Java Util Logging 、Log4J2 和Logback 这些常见的日志框架都提供了自动化配置组件,每种Logger都可以通过配置在控制台或者文件中输出日志内容。默认情况下,当我们使用各种Starter的时候,会使用Logback来实现日志管理。

2023-03-24 15:57:38 868

原创 阿里内部手写的 Spring Security,真的香啊

又逢“金三银四”,年轻的毕业生们满怀希望与忐忑,去寻找、竞争一个工作机会。已经在职的开发同学,也想通过社会招聘或者内推的时机争取到更好的待遇、更大的平台。然而,面试人群众多,技术市场却相对冷淡,面试的同学们不得不面临着 1 个职位 N 个应聘者的巨大竞争。问:在这种现状下,如何才能收获又多又好的 Offer?答:短期准备——刷面试题;长期筹谋——巩固核心技能。面试题怎么刷?刷高频题、有深度的题、符合时效性的题。核心技能如何巩固?先深入理解原理,再系统应用到实践。

2023-03-24 15:50:33 27

原创 软件测试 / 测试开发丨基于 Spring Boot 的 RESTful API 设计与实现

简捷、快速:RESTful 由于其面向资源接口设计以及操作抽象简化了开发者的不良设计,同时也最大限度的利用了 http 最初的应用协议设计理念。RESTful 架构遵循统一接口原则,不论什么样的资源,都是通过使用相同的接口进行资源的访问。接口应该使用标准的 HTTP 方法如 GET ,PUT 和 POST ,并遵循这些方法的语义。

2023-03-24 15:47:34 31

原创 面试突击 80:说一下 Spring 中 Bean 的生命周期?

Bean 的生命周期指的是 Bean 在 Spring(IoC)中从创建到销毁的整个过程。Bean 的生命周期主要包含以下 5 个流程:1.实例化:为 Bean 分配内存空间;2.设置属性:将当前类依赖的 Bean 属性,进行注入和装配;3.初始化:执行各种通知;执行初始化的前置方法;执行初始化方法;执行初始化的后置方法。4.使用 Bean:在程序中使用 Bean 对象;5.销毁 Bean:将 Bean 对象进行销毁操作。是非审之于己,毁誉听之于人,得失安之于数。

2023-03-24 15:13:50 78

原创 高光时刻!美团推出 Spring 源码进阶宝典:脑图 + 视频 + 文档

第一部分 Spring 概述第二部分核心思想第三部分手写实现 loC 和 AOP第四部分 Spring I0C 应用第五部分 Spring I0C 源码深度剖析第六部分 Spring AOP 应用第七部分 Spring AOP 源码深度剖析当然,Spring 是我们在工作中必不可少的会使用得,如果你还处在懵懂的状态,或者还不了解都可以来看这份 Spring 进阶宝典,你值得拥有,带你从 0 到 1!开启你的 Spring 之路!

2023-03-24 15:11:34 37

原创 spring,springboot,底层原理解析

1.简单理解为:Spring 包含了 SpringMVC,而 SpringBoot 又包含了 Spring 或者说是在 Spring 的基础上做得一个扩展。展。好了关于 spring 的一些浅见就说到这里了,以后有时间了再继续来唠吧。

2023-03-24 15:11:33 217

原创 阿里顶配版 Spring 全家桶高级笔记 + 学习路线图 + 硬核资料库,跪着啃完了。

Spring Cloud 并没有重复制造轮子,它只是将目前各家公司开发的比较成熟、经得起实际考验的服务框架组合起来,通过 Spring Boot 风格进行再封装屏蔽掉了复杂的配置和实现原理,最终给开发者留出了一套简单易懂、易部署和易维护的分布式系统开发工具包。

2023-03-24 15:06:18 86

空空如也

空空如也

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

TA关注的人

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