Mybatis-技术专区-如何清晰的解决出现「多对一模型」和「一对多模型」的问题

前提介绍 基础使用篇一对一association @Data@AllArgsConstructor@NoArgsConstructor@Accessors(chain = true)public class Student { private int id; private String name; /** * 学生要关联一个老师 */ private Teacher teacher;}@...

🏆【JVM技术专区】「难点-核心-遗漏」TLAB内存分配+锁的碰撞(技术串烧)!

JVM内存分配及申请过程 指针碰撞方式 代表GC回收器 空闲列表方式 代表GC回收器 Java虚拟机选择策略 现在虚拟机栈进行分配此部分属于两部分的分配机制,当JVM创建线程Thread对象: 直接分配:局部变量、形式参数表。 优化分配:逃逸分析(栈上分配、标量替换等功能)。 新生区-Eden区的分配 TLAB内存的分配策略 总体内存分配流程策略 jvm优先分配在eden区当Eden空间足够时,内存申...

Alibaba-技术专区-RocketMQ 延迟消息实现原理和源码分析

痛点背景业务场景 之前方案 方案评估 优点:是实现简单,缺点呢? 缺点:定时扫描意味着隔个几秒就得查一次数据库,频率高的情况下,如果数据库中订单总量特别大,这种高频扫描会对数据库带来一定压力,待付款订单特别多时(做个爆品秒杀活动,或者啥促销活动),若一次性查到内存中,容易引起宕机,需要分页查询,多少也会有一定数据库层面压力。 延时队列出现 能够在指定时间间隔后触发某个业务操作 能够应对业务数据量特别大的...

【SpringBoot技术专题】「JWT技术专区」SpringSecurity整合JWT授权和认证实现

JWT基本概念 JWT的验证过程是: 前端(客户端)首先发送一些凭证来登录(我们编写的是 web 应用,所以这里使用用户名和密码来做验证)。 后端(服务端)这里指Spring应用校验这些凭证,如果校验通过则生成并返回一个 JWT。 客户端需要在请求头的Authorization字段中以 “Bearer TOKEN” 的形式携带获取到的token,服务端会检查这个token是否可用并决定授权访问或拒绝请求...

SpringCloud-技术专区-从源码层面让你认识Feign工作流程和运作机制

Feign工作流程源码解析 原理Feign发送请求实现原理 微服务启动类上标记@EnableFeignClients注解,然后Feign接口上标记@FeignClient注解。@FeignClient注解有几个参数需要配置,这里不再赘述,都很简单。 Feign框架会扫描注解,然后通过Feign类来处理注解,并最终生成一个Feign对象。 解析@FeignClient注解,生成MethodHandler ...

🏆【Java技术专区】「开发实战专题」Lombok插件开发实践必知必会操作!

前言 首先我们还是看下 Lombok 官方的描述: 本文主要内容涉及如下: Lombok 插件安装Lombok 常用注解使用 环境支持: 正文安装 Lombok使用 Lombok 之前我们先要在所使用的 IDE 中进行集成安装,这里以 IDEA 为例,安装步骤十分简单: 前往 File -> Settings -> Plugin -> Marketplace ,搜索 Lombok 选择搜索结果 Lo...

Redis-技术专区-帮从底层彻底吃透RDB技术原理

每日一句 前提概要 Redis的强劲性能很大程度上是由于其将所有数据都存储在了内存中,为了使Redis在重启之后仍能保证数据不丢失,需要将数据从内存中以某种形式同步到硬盘中,这一过程就是持久化。 我们知道redis中缓存的数据都存放在内存中,一旦服务故障,会导致内存中数据丢失,所以需要一种数据持久化的方案,将redis内存中的数据,写入磁盘,当redis重启后,能从磁盘中恢复数据。 Redis服务器的结构...
© 2021 LMLPHP 关于我们 联系我们 友情链接 耗时0.014212(s)
2021-09-24 08:56:00 1632444960