Spring Boot 实现防盗链功能 springboot-demo

Spring Boot 实现防盗链功能

防盗链是保护资源服务器的常用方法,旨在防止未经授权的外部链接直接访问服务器上的资源,如图片、音频和视频文件。在本文中,我们将探讨防盗链的概念和原理,并结合 Spring Boot 提供一个完整的可运行示例。 一、防盗链概念 防盗链是一种通过限制资源访问来源的技术,通常通过检查 HTTP 请求头中的 Referer 字段来实现。如果请求的来源不是允许的域名,则拒绝该请求。除此之外,还可以结合...
阅读全文
在Spring Boot中的实现国际化(i18n) springboot-demo

在Spring Boot中的实现国际化(i18n)

1.什么是国际化(i18n)? 国际化(Internationalization,简称i18n)是指在软件应用中支持多种语言和文化的能力。通过国际化,应用可以根据用户的语言和地区设置,动态地显示不同的文本内容。本文将介绍如何在Spring Boot应用中实现国际化,并提供完整的代码示例。 2.代码工程 在Spring Boot中实现国际化(i18n)可以通过以下步骤完成。我们将使用Sprin...
阅读全文
Spring Boot集成ShedLock实现分布式定时任务 springboot-demo

Spring Boot集成ShedLock实现分布式定时任务

1.什么是ShedLock? ShedLock 是一个 Java 库,通常用于分布式系统中,确保定时任务(Scheduled Tasks)在集群环境下只被某一个实例执行一次。它通过在共享资源(例如数据库或分布式缓存)中添加锁的方式,避免多个实例同时执行相同的任务 ShedLock 的工作原理 分布式锁: 在任务开始时,ShedLock 会尝试在数据库(或其他存储)中创建一个锁。...
阅读全文
Spring Boot集成SQL Server快速入门Demo springboot-demo

Spring Boot集成SQL Server快速入门Demo

1.什么是SQL Server? SQL Server是由Microsoft开发和推广的以客户/服务器(c/s)模式访问、使用Transact-SQL语言的关系数据库管理系统(DBMS),它最初是由Microsoft、Sybase和Ashton-Tate三家公司共同开发的,并于1988年推出了第一个OS/2版本。Microsoft SQL Server近年来不断更新版本,1996年,Micros...
阅读全文
Spring Boot关闭时,如何确保内存里面的mq消息被消费完? springboot-demo

Spring Boot关闭时,如何确保内存里面的mq消息被消费完?

1.背景 之前写一篇文章Spring Boot集成disruptor快速入门demo,有网友留言如下图: 针对网友的留言,那么我们如何解决这个问题呢 Spring-Boot应用停机时,如何保证其内存消息都处理完成? 2.解决方法  方法其实挺简单的,disruptor有优雅停机方法,不用我们自己去实现逻辑,只需要调用disruptor.shutdown();就可以实...
阅读全文
Spring Boot 的优雅停机 springboot-demo

Spring Boot 的优雅停机

1. 介绍 什么叫优雅停机?简单的说,就是向应用进程发出停止指令之后,能保证正在执行的业务操作不受影响,直到操作运行完毕之后再停止服务。应用程序接收到停止指令之后,会进行如下操作: 停止接收新的访问请求。 正在处理的请求,等待请求处理完毕;对于内部正在执行的其他任务,比如定时任务、mq 消费等等,也要等当前正在执行的任务执行完毕,并且不再启动新的任务。 当应用准备关闭的时候,按需...
阅读全文
Spring Boot集成Aviator实现参数校验 springboot-demo

Spring Boot集成Aviator实现参数校验

​1.什么是aviator? Aviator是一个高性能、轻量级的java语言实现的表达式求值引擎,主要用于各种表达式的动态求值。现在已经有很多开源可用的java表达式求值引擎,为什么还需要Avaitor呢? Aviator的设计目标是轻量级和高性能 ,相比于Groovy、JRuby的笨重,Aviator非常小,加上依赖包也才450K,不算依赖包的话只有70K;当然,Aviator的语法是受限的...
阅读全文
Spring Boot集成DJL实现图片分类 springboot-demo

Spring Boot集成DJL实现图片分类

1.什么是DJL? DJL 是一个很新的项目,在2019年12月初的AWS  re: invest大会上才正式的发布出来。。简单来说,DJL是一个使用Java API简化模型训练、测试、部署和使用深度学习模型进行推理的开源库深度学习工具包,开源的许可协议是Apache-2.0。对于Java开发者而言,可以在Java中开发及应用原生的机器学习和深度学习模型,同时简化了深度学习开发的难度。通过DJL...
阅读全文
Spring Boot集成RBloomFilter快速入门Demo springboot-demo

Spring Boot集成RBloomFilter快速入门Demo

1.什么是BloomFilter? 布隆过滤器原理:布隆过滤器(Bloom Filter)是一种空间效率很高的概率型数据结构,用于判断一个元素是否在一个集合中。它允许有一定的误判率,换取了存储空间的极大节省。这种数据结构在空间效率和查询速度上具有明显优势,尤其适用于大规模数据去重和快速查找的场景。 布隆过滤器的工作原理如下: 布隆过滤器的核心是一个m位的位数组(Bit Array...
阅读全文
Spring Boot集成encache快速入门Demo springboot-demo

Spring Boot集成encache快速入门Demo

1.什么是encache EhCache 是一个纯 Java 的进程内缓存框架,具有快速、精干等特点,是 Hibernate 中默认的 CacheProvider。 Ehcache 特性 优点 快速、简单 支持多种缓存策略:LRU、LFU、FIFO 淘汰算法 缓存数据有两级:内存和磁盘,因此无需担心容量问题 缓存数据会在虚拟机重启的过程中写入磁盘 可以通过 R...
阅读全文
Loading...