随笔分类 - SpringBoot
框架
摘要:一、前言 在项目中遇到这样的一个问题: 服务spring-cloud-quartz-one中有一个Quartz任务:MyJob 服务spring-cloud-quartz-two中有两个Quartz任务:MyJob、MyJob2 当第一个服务开启MyJob任务,第二个服务开启MyJob2任务。结果是
阅读全文
摘要:前言: 在项目中,遇到这样的需求:在指定的时间范围内执行定时任务(会执行多次),当任务最后一次执行完后,通知调用方。 在网上找了各种资料,都达不到想要的效果。自己研究了一下,将研究成果记录下来。 在学习本篇之前,最好参考下上一篇:Quartz基本使用。涉及到Quartz的基本配置,本篇不作介绍 监听
阅读全文
摘要:前言: 之前开发定时任务时,有两种方式: a、如果是SpringBoot项目,在方法上加上 @Scheduled 注解,然后开配置下cron就可以了。 缺点:不支持通过某种条件来开启任务 b、使用 Executors.newScheduledThreadPool() 启动一个定时线程。缺点:服务重启
阅读全文
摘要:网上有很多关于WebSocket用法的文章,但是有一些内容错误或者代码不全的,这里来个全的,方便自己记忆。 前言: WebSocket是一种在单个TCP连接上进行全双工通信的协议。WebSocket通信协议于2011年被IETF定为标准RFC 6455,并由RFC7936补充规范。WebSocket
阅读全文
摘要:在网上查询@ConditionalOnProperty的使用的时候,发现好多类似的文章,但是例子都不够全面。这里记录下测试示例,方便自己记忆。 1、简介 SpringBoot通过@ConditionalOnProperty来控制@Configuration是否生效 2、说明 @Retention(R
阅读全文
摘要:使用过SpringBoot配置文件的朋友都知道,资源文件中的内容通常情况下是明文显示,安全性就比较低一些。打开application.properties或application.yml,比如mysql登陆密码,redis登陆密码以及第三方的密钥等等一览无余,这里介绍一个加解密组件,提高一些属性配置
阅读全文
摘要:升级到spring boot 2.x后,发现了好多坑,现记录下来。 1、pom文件依赖的变化 1.x中,依赖是这样的: <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter
阅读全文
摘要:学习本篇之前,可以先看下文章 什么是分布式锁,了解下基本概念。 之前都是手写一个分布式锁,其实Spring早就提供了分布式锁的实现。早期,分布式锁的相关代码存在于Spring Cloud的子项目Spring Cloud Cluster中,后来被迁移到Spring Integration中。 Spri
阅读全文
摘要:Spring Boot提供了两种 “开机自启动” 的方式,ApplicationRunner和CommandLineRunner 这两种方式的目的是为了满足,在容器启动时like执行某些方法。我们可以通过实现ApplicationRunner或者CommandLineRunner来实现,他们都是在S
阅读全文
摘要:引言: 在Java应用中,绝大多数情况下都是通过同步的方式来实现交互处理的;但是在处理与第三方系统交互的时候,容易造成响应迟缓的情况,之前大部分都是使用多线程来完成此类任务,其实,在spring 3.x之后,就已经内置了@Async来完美解决这个问题,本文将介绍在springboot中如何使用@As
阅读全文
摘要:前言 Spring Boot 是由 Pivotal 团队提供的全新框架,其设计目的是用来简化新 Spring 应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。spring Boot采用约定大约配置的方式,大量的减少了配置文件的使用 spring
阅读全文
摘要:1、pom.xml中导入必要的依赖: 2、写一个springboot的启动类: 注意这里一定要加上@EnableScheduling注解,用于开启定时任务 3、开始写定时任务: 解释: @Scheduled注解: 1、fixedRate 以固定速率执行。以上表示每隔1秒执行一次 2、fixedDel
阅读全文
摘要:一、@EnableAutoConfiguration 这个注释告诉SpringBoot"猜"你将如何想配置Spring,基于你已经添加jar依赖项。如果spring-boot-starter-web已经添加Tomcat和Spring MVC,这个注释自动将假设您正在开发一个web应用程序并添加相应的
阅读全文