之前探讨了springboot 集成 rabbitmq  以及开启ack模式   传送门:接着该篇 搞一下 死信队列概念死信队列 听上去像 消息“死”了     其实也有点这个意思,死信队列  是 当消息在一个队列 因为下列原因:消息被拒绝(basic.reject/ basic.nack)并且不再重新投            
                
         
            
            
            
             01、前言目前开发的SpringBoot项目在启动的时候需要预加载一些资源。而如何实现启动过程中 执行 代码,或启动成功后 执行 ,是有很多种方式可以选择,我们可以在static代码块中实现,也可以在构造方法里实现,也可以使用@PostConstruct注解实现,当然也可以去实现Spring的ApplicationRunner与CommandLi            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-07-03 09:53:34
                            
                                134阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            使用注解@PostConstruct是最常见的一种方式,存在的问题是如果执行的方法耗时项目在方法执行期间无法提供服务。            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2023-07-07 13:58:10
                            
                                484阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            SpringApplication调用的最终的构造方法
 public SpringApplication(ResourceLoader resourceLoader, Class<?>... primarySources) {
     this.resourceLoader = resourceLoader;
     //必须要指定PrimarySources
     Asse            
                
         
            
            
            
            Spring IOC高级特性:lazy-Init 延迟加载、FactoryBean 和 BeanFactory、后置处理器1、 lazy-Init 延迟加载Bean的延迟加载(延迟创建)ApplicationContext 容器的默认行为是在启动服务器时将所有 singleton bean 提前进行实例化。提前实例化意味着作为初始化过程的一部分,ApplicationContext 实例会创建并配            
                
         
            
            
            
            注意:由于队列的先进先出特性,只有过期的消息到了队列的顶端(队首),才会被真正的丢弃或者进入延迟队列。所以再开律师用RabbitMQ来实现延迟队列任务的时候,需要确保业务上每个任务的延迟时间是一致的。如果遇到不同的任务类型需要不同的延迟时间的话,需要为每一种不同延迟时间的消息建立单独的消息队列。一:RabbitMQ整合springboot新建项目 导入下面依赖<dependencies>            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-07-13 05:22:51
                            
                                59阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            springboot启动后执行某些动作 1.主要是springboot的启动run方法里调用了callRunners,会去调用实现了ApplicationRunner接口的类的方法 public ConfigurableApplicationContext run(String... args) { ...            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2021-10-20 14:28:00
                            
                                443阅读
                            
                                                                                    
                                2评论
                            
                                                 
                 
                
                             
         
            
            
            
            date命令    =================================================at命令:延时执行一个程序可以用at命令来设定一个程序的执行时间at命令只能让程序执行一次;在指定时刻执行程序;先用at命令后接想要程序执行的确定时刻,再输入你想要在以上指定时刻执行的命令; ctrl+D退出at;会显示<EO            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-04-26 13:16:51
                            
                                49阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            文章目录前言一、系统延时任务二、at任务的黑白名单3、系统定时任务1、crontab 时间表示方式2、系统控制 crontab 的服务3、crontab4、系统级别的cron(文件方式设置定时任务)5、crontab 的黑白名单三、系统中临时文件的管理方式 前言本文主要学在Linux中的系统延时任务的设定,因为在企业中经常会有设置延时任务的需求,比如定时清理日志文件,系统缓存文件,定时发送某些特            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-03-25 11:04:09
                            
                                77阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            Springboot启动后执行方法(4种)一、注解@PostConstruct使用注解@PostConstruct是最常见的一种方式,存在的问题是如果执行的方法耗时过长,会导致项目在方法执行期间无法提供服务。@Component
public class StartInit {
//
//    @Autowired   可以注入bean
//    ISysUserService userSer            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-07-10 17:18:19
                            
                                760阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            大家都知道SpringBoot是靠一个main()方法启动的,那么这个main()背后做了什么呢? //本来是想找点八股文看看的,看到网上文章要么版本太低,要么还得关注公众号,要么太深入细节。太深入咱也看不懂啊,那咋整,自己扒拉代码自己看呗sb版本:2.7.x 我直接从github上fork的源码来看的,如需自取:https://github.com/spring-projects/spring-            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-03-03 22:45:06
                            
                                37阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            SpringBoot——任务1、异步任务2、定时任务3、邮件任务 1、异步任务在Java应用中,一般都是通过同步的方式来实现交互处理(输入输出)的;但是在处理与第三方系统交互的时候,容易造成响应迟缓的情况,之前大部分都是使用多线程来完成此类任务,在Spring 3.x之后,开始使用内置的@Async来解决这个问题,即我们无需手动编写多线程来解决问题,SpringBoot在已经在内部建立好了多线程            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-02-21 15:58:45
                            
                                387阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            一、业务应用场景1:需要在容器启动的时候执行一些内容。比如读取配置文件,数据库连接之类的。SpringBoot给我们提供了两个接口来帮助我们实现这种需求。2:应用服务启动时,加载一些数据和执行一些应用的初始化动作。如:删除临时文件,清除缓存信息,读取配置文件信息,数据库连接等。 对于小型项目进行定时任务的启动。二、解决方案方案1:ApplicationRunner方案2:CommandLineRu            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-12-27 20:04:40
                            
                                115阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
             一、延迟加载及作用?    延迟加载又叫懒加载。是指在访问数据时,当数据用到的时候才被加载,没有被用到的时候不加载。二、这样做有什么好处呢?    好处就是每次访问数据的时候,因为只加载需要的数据,这样就可以降低数据库以及内存压力。    虽然说有时候整体的数据量并不多,但是这是一种机制,当数据量比较大的时            
                
         
            
            
            
            在编写应用层程序时,有时需要延时一下,这个时候该怎么办呢? 在内核代码中,我们经常会看到这样的头文件使用#include ,心想着直接调用这个就可以了吧!可是在编译时发现,压根通不过,提示错误如下:error: No such file or directory. 是不是觉得很奇怪,明明文件是存在的,怎么就不能调用了,而且内核很多文件调用得很欢。这是为什么呢?因为内核程序跟应用            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-07-08 09:54:44
                            
                                31阅读
                            
                                                                             
                 
                
                             
         
            
            
            
             目录前言实现方式1.实现ServletContextListener接口contextInitialized方法2.静态代码块方式3.@PostConstruct注解方式4. 实现ServletContextAware接口setServletContext 方法5. @EventListener方式6. 实现ApplicationRunner接口run 方法7.实现CommandLineRunn            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-09-29 21:32:56
                            
                                159阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            Spring内部有一个task是Spring自带的一个设定时间自动任务调度,提供了两种方式进行配置,一种是注解的方式,而另外一种就是XML配置方式了。注解方式比较简洁,XML配置方式相对而言有些繁琐,但是应用场景的不同,两者又各有优点,所以具体使用还是根据需求来划分。因为任务调度这样的需求,通常改动都是比较多的,如果用注解的方式改动就变得麻烦了,必须去重新编译。所以更多的时候我选择用XML配置的方            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-06-05 11:33:24
                            
                                129阅读
                            
                                                                             
                 
                
                             
         
            
            
            
                  当我们在用SpringBoot开发后端服务时,通常我们会有一些需求是需要在服务启动完成后提前运行的,比如:将一些字典项数据从数据库加载到缓存,以方便在服务运行时快速从缓存获取。【调用@Autowired的Bean的方法从数据库获取需要缓存的数据】要执行某些定时任务进行相关的统计与计算。【通过调用服务中带注解@Async的方法或用CompletableFut            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-11-17 15:05:17
                            
                                88阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            前言目前开发的SpringBoot项目在启动的时候需要预加载一些资源。而如何实现启动过程中执行代码,或启动成功后执行,是有很多种方式可以选择,我们可以在static代码块中实现,也可以在构造方法里实现,也可以使用@PostConstruct注解实现。当然也可以去实现Spring的ApplicationRunner与CommandLineRunner接口去实现启动后运行的功能。在这里整理一下,在这些            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-08-17 11:45:55
                            
                                69阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            SpringBoot 有两个关键元素:@SpringBootApplication SpringApplication 以及 run() 方法SpringApplication 这个类应该算是 Spring Boot 框架的“创新”产物了,原始的 Spring 中并没有这个类,SpringApplication 中封装了一套 Spring 应用的启动流程,然而这对用户完全透明,因此我们上手 Spr            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-06-03 11:26:52
                            
                                79阅读
                            
                                                                             
                 
                
                                
                    