springboot源码rabbitmq细节
springboot项目创建
1.勾选Spring Web和Thymeleaf Thymeleaf是前后端不分离的页面写法(我们这里用vue3写,这一项可以不勾选) ......
计算机图形:纹理与表面细节
目录纹理技术为什么需要纹理?如何添加纹理?纹理映射线性纹理图案表面纹理图案体纹理图案纹理缩减图案凹凸映射构造凹凸图顶点空间(待完成)帧映射OpenGL函数线纹理函数表面纹理函数体纹理函数纹理图案的颜色选项纹理映射选项纹理环绕复制帧缓存中的纹理图案纹理坐标数组纹理图案命名纹理子图案纹理缩减图案函数纹理 ......
Java 系统学习 | Springboot 写 hello world
经过一段时间基础学习,现在开始使用 Springboot 框架完成项目,特地记录一下,方便后续查漏补缺。 本篇使用 Springboot3 框架,IDEA2022 编辑器,java17 版本。 新建项目 file -> new -> project 弹框中填入自己的信息 Name 项目名称 Loca ......
源码补丁神器—patch-package
一、背景 vue项目中使用 vue-pdf 第三方插件预览pdf,书写业务代码完美运行,pdf文件内容正常预览无问题。后期需求有变,业务需求增加电子签章功能。这个时候pdf文件的内容可以显示出来,但是公司的电子签章无法显示。这令人沮丧,因为已经编写了许多特定于此依赖项的代码,如果替换依赖库,这些代码 ......
SpringBoot:整合前端(Vue、React)代码合并SpringBoot项目中打成war包运行
获取前端dist包 前端的dist包就是通过 npm run build 命令生成的包,生成的包结构如下 合并到static文件夹 打开SpringBoot项目 -> resources -> 创建 static 文件夹 将前端dist包内的文件复制到static文件夹内 引入 freemarker ......
RabbitMQ安装延迟队列插件rabbitmq-delayed-message-exchange
一、下载安装包 1、根据rabbitmq版本需求,查看需要安装的erlang版本 https://www.rabbitmq.com/which-erlang.html 2、下载erlang安装包。 rpm包下载:https://github.com/rabbitmq/erlang-rpm/relea ......
Springboot 整合 jdbctemplate
背景: 程序重构上云,需要把原来在oracle 上1千多万 的数据迁移到postgrel 上,还要加载到redis,分为两步: 1、数据传输(navicate 数据传输工具) 2、加载到redis (springboot 整合jdbctemplate 从pq -> redis ) 坑1:数据表数据不 ......
5、SpringBoot2之整合Durid
创建名为springboot_druid的新module,过程参考3.1节 5.1、引入相关依赖 注意:虽然本文使用的是 spring boot 2.7.18 和 MySQL 5.7 ,但是出于可移植性、可扩展性和兼容性方面的考虑, druid 的启动器使用的是 spring boot 3 版本的, ......
snowy SpringBoot+AntDesignVue
snowy是小诺团队下基于SpringBoot+AntDesignVue开发的Java全新RBAC权限管理系统,前后分离,注释丰富,代码简洁。在国策讲究自主可控的时候,适配国产数据库(金仓、达梦)、主流数据库Mysql、Oracle、Mssql、Postgresql,小诺的产品一致追求简洁干净,一套 ......
【SpringBoot】Swagger&Knif4j接口文档集成
目录序:接口文档1 Swagger1.1 基本信息1.2 接入步骤2 Knife4j2.1 基本信息2.2 接入步骤 序:接口文档 在开发过程中,接口文档是非常重要的一环,在 Spring Boot 中,我们可以通过集成第三方来实现接口文档的自动生成。 通过注解来描述接口,然后根据这些注解自 ......
RabbitMQ学习二 修改默认密码
RabbitMQ的一些常用命令 #启动rabbitmq service rabbitmq-server start # 查看rabbitMQ的运行状态 service rabbitmq-server status # 开启rabbitMQ的后台管理插件 rabbitmq-plugins enable ......
ThreadPoolExecutor源码学习
Java构建线程的方式 集成Thread 实现Runnable 实现CallAble 线程池方式 Java提供了Executors创建(不推荐,不方便进行控制) 推荐手动创建线程池ThreadPoolExecutor。 ThreadPoolExecutor参数 int corePoolSize 核心 ......
# ReentrantLock源码阅读
ReentrantLock源码阅读 目录ReentrantLock源码阅读简介例子代码分析Sync.tryLockSync.initialTryLockSync.lockSync.tryReleaseNonFairSync.initialTryLockNonFairSync.tryAcquireFa ......
【C语言数据结构】对Lua Table源码的一次劣质学习
/* new_key */ KLcBool KLcmCreateMapKeyValue(KLCMAP_PTR pTag, KLCTVALUE_PTR pKv) { KLcBool kbRet = KL_FALSE; KLcBool kbIsKvLegal = KL_FALSE; DWORD dwIn ......
Java线程池ThreadPoolExecutor源码解析
Java线程池ThreadPoolExecutor源码解析 1.ThreadPoolExecutor的构造实现 以jdk8为准,常说线程池有七大参数,通常而言,有四个参数是比较重要的 public ThreadPoolExecutor(int corePoolSize, int maximumPoo ......
Spring/SpringBoot 参数校验
目录基础设施搭建1. 相关依赖2. 实体类案例校验参数注解JSR提供的校验注解:Hibernate Validator提供的校验注解:实践案例🚩1. 验证 Controller 的输入1. 1 验证请求体1.2 验证请求参数2. 验证 Service 中的方法3. Validator 手动参数验证 ......
springboot 中,ApplicationRunner、InitializingBean、@PostConstruct 执行顺序
划水。。。 ApplicationRunner、InitializingBean、@PostConstruct 执行顺序 InitializingBean 是 Spring 提供的一个接口,它只有一个方法 afterPropertiesSet(),该方法会在容器初始化完成后被调用。 Applicat ......
springboot注解表达式
("execution(* com.aop..*.*(..))") 1、execution(): 表达式主体 2、第一个*号:表示返回类型,*号表示所有的类型 3、.包名:表示需要拦截的包名,后面的两个句点表示当前包和当前包的所有子包 4、第二个*号:表示类名,号表示所有的类 5、.*(..):最后 ......
SpringBoot内置Tomcat启动原理
SpringBoot内置Tomcat启动原理 当依赖Spring-boot-starter-web依赖时会在SpringBoot中添加:ServletWebServerFactoryAutoConfiguration servlet容器自动配置类 该自动配置类通过@Import导入了可用(通过@Co ......
AbstractQueuedSynchronizer源码阅读
AbstractQueuedSynchronizer源码阅读 目录AbstractQueuedSynchronizer源码阅读例子Overview-CLH锁Overview的剩余内容代码分析cleanQueueacquireacquire总结acquire共享模式补充release内部类Condit ......
SpringBoot启动原理
运行main方法:初始化SpringApplication,从spring.factories读取listener ApplicationContextLnitializer. 运行run方法 读取环境变量 配置信息等 创建SpringApplication上下文:ServletWebServerA ......
为什么SpringBoot的jar可以直接运行
为什么SpringBoot的jar可以直接运行? SpringBoot 提供了一个插件spring-boot-maven-plugin 用于把程序打包成一个可执行的jar包 <build> <plugins> <plugin> <groupId>org.springframework.boot</g ......
Docker搭建Plumelog并集成到SpringBoot(Logback)
开源地址:https://gitee.com/plumeorg/plumelog 同时分享一个大佬整理的各种docker compose:https://gitee.com/zhengqingya/docker-compose 搭建Plumelog服务端 依赖: redis elasticsearc ......
springboot项目Mapper注入失败:@org.springframework.beans.factory.annotation.Autowired(required=true)
同事发给我一个项目,说启动时,报mapper无法注入,让我帮忙排查一下问题 记录一下我自己遇到这个问题的排查顺序 首先先排除以下问题: 1.mapper类是否加入到ioc容器中(有没有使用@Mapper标签),如果报错是service层,那就看看是不是没有添加server标签 2.检查项目是否扫描m ......
SpringBoot自动配置原理
通过@SpringBootConfiguration 引入了@EnableAutoConfiguration(负责启动自动配置功能) @EnableAutoConfiguration 引入了@Import 注解 Spring容器启动时:加载Ioc容器时会解析@Import注解 @Import导入了一 ......
消息队列RabbitMQ简介
大家好,我是joker,希望你快乐。 RabbitMQ是什么 RabbitMQ是基于AMQP(Advanced Message Queue Protocol)高级消息队列协议实现的一种消息队列。 重要组件 Exchange: message 到达MQ的第一站,根据分发规则,配查询表中的 routin ......
消息队列RabbitMQ之防止消息丢失
大家好,我是joker,希望你快乐。 消息队列组成 使用消息队列会有三部分:消息生产者,消息队列,消息消费者,接下来说下各部分防止消息丢失的方法。 生产者 消息生产者发送消息失败。发布确认机制,RabbitMQ会返回一个ACK标识。 消费者 消息消费者获取消息后,消费失败。开启手动确认的方式,消息成 ......
一些基于SpringBoot2.X的后台管理系统,可以作为高校毕设项目、个人学习之用
该酒店管理系统适用于各类酒店管理,用于提高酒店内部工作效率。主要是针对酒店内部工作人员即管理员和酒店普通员工设计的。主要是具备客房预订、退房、房间信息管理、员工管理、入住管理等模块,提高了酒店内部业务的运转效率,大大降低了成本;该系统基于SpringBoot+VUE+MyBatisPlus+MySQ ......
SpringBoot的编码方式
方式1.使用配置文件的方式对字符进行编码 1.第一种方式: 在配置文件中(properties或者yaml文件中均可)添加: server.servlet.encoding.enable=true但是现如今的许多程序已经弃用了这种写法 2.第二种方式: server.servlet.encoding ......
ThreadLocal底层源码解析
ThreadLocal底层源码解析 ThreadLocal:顾名思义的意思是本地线程或者局部线程的意思,其真正含义是希望多个线程之间拥有自己的局部变量,多个线程间拥有自己的私人变量,在多线程间不被共享,被线程单独享用,这就是ThreadLocal设计之初的原衷 因此,无论是操作系统级别还是编程语言中 ......