ReentrantLock是使用AQS实现的一种可重入的独占锁,并且提供了公平和非公平两种策略。 public ReentrantLock() { sync = new NonfairSync(); } public ReentrantLock(boolean fair) { sync = fair ? new FairSync() : new NonfairSync(); } 从上面的构造函数可以看到ReentrantLock默认使用的是非公平锁,传入true启用公平锁,传
2024-12-03系列文章 … 在上篇文章中我们对NioEventLoop的父类进行了详细分析,今天我们就来拆解拆解这位老大哥吧,NioEventLoop较为复杂,需要耐心的思考和阅读,首先我们来回顾下前边讲过的相关内容,只有将这些串联起来后才便于我们理解,还是先看下这张类图,左侧为NioEventLoop相关类: 主要功能概览 I/O任务: 指的是accept、connect、read、write等非I/O任务: 添加到taskQueue中的任务,如register0,bind0等任务 每一个功能点的实现都比
2024-12-03SpringBoot中为我们提供了三个常用的获取请求参数的注解: @RequestParam,@RequestBody,@PathVariable 一、@RequestParam: 例: 单个参数: URL: @GetMapping public void getById(@RequestParam int id){ System.out.println(id); } 这样便可成功接收到参数。但是要注意,请求中的参数名和方法中的参数名一定要一致,不然
2024-12-03安装插件 安装MybatisPlus 连接数据库 代码生成 项目结构 生成成功
2024-12-03docker在大型项目上使用范围很广,为了在Ubuntu自测docker,心血来潮,准备自己搭建docker进行测试。因为使用apt直接安装docker的版本比较低,在此按照官网的教程安装docker-ce。 1.卸载旧版本 较旧版本的Docker被称为docker或docker-engine,需要手动卸载掉。 sudo apt-get remove docker docker-engine docker.io 2.获取 sudo apt-get update 3.使apt可以通过HTTPS协议
2024-12-03一 添加数据规则 在菜单管理中给需要加数据权限的菜单加数据规则 然后到角色中,添加一个默认角色,并设置只能看自己的数据(就是刚刚设置的数据规则)
2024-12-03博主说明:本文项目编号 T 020 ,文末自助获取源码 \color{red}{T020,文末自助获取源码}
2024-12-03工作环境:中型企业的后台开发 基础:springboot、springcloud 已经开发快一年了目前 1、不会一定要多问,进步最大的方式 (我刚开始的问题甚至逻辑都不通,就是那种让人听不懂且愚蠢到极点的问题) 自己其实也知道自己问的问题哪个水平,但是不问 那种开发逻辑在脑袋里永远不会自己构建起来 简而言之:态度谦虚的厚着脸皮使劲问 1、业务能力:到现在拿到需求规模书,可以自己顺畅的捋完一边流程并且当出现逻辑问题时候及时进行确认解决;其次在其中发现流程问题等等 2、当进行开发时:遇到问题及时进行
2024-12-037个提升 Spring Boot 吞吐量的神技,让你的代码飞起来! 一、异步执行 实现方式二种: 1,使用异步注解 @aysnc、启动类:添加 @EnableAsync 注解 2.JDK 8 本身有一个非常好用的 Future 类——CompletableFuture @AllArgsConstructor public class AskThread implements Runnable{ private CompletableFuture<Integer> re = null;
2024-12-03在Java编程中,@Scheduled 注解是 Spring Framework 提供的一个用于定时任务的注解。 @Scheduled可以将一个方法配置为定时执行的任务。 以下是一些基本用法: 1.固定速度 fixedRate指两次任务的开始时间间隔。所以存在第二次任务开始时,第一次任务可能还没结束。 // 每5秒执行一次任务 @Scheduled(fixedRate = 5000) public void fixedRateTask() { System.out.println("fi
2024-12-03