自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(174)
  • 收藏
  • 关注

原创 Spring Boot集成sitemapgen4j实现网站地图生成

1.什么是sitemapgen4j是一个用于在Java中生成XML网站地图的库,比如生成网站的sitemap,如果超出了 5 万条需要写入另外一个 sitemap 当中,这个功能 sitemapgen4j 已经替我们实现了,无需担心。sitemap站点地图是网站管理员向搜索引擎告知其网站上可用于抓取的页面的一种简单方法。 站点地图最简单的形式是一个 XML 文件,其中列出了站点的 URL 以及有...

2024-04-29 19:57:51 315 1

原创 Spring Boot集成oauth2快速入门demo

1.oauth2介绍1,什么是 OAuth 2?OAuth 是一个开放标准,该标准允许用户让第三方应用访问该用户在某一网站上存储的私密资源(如头像、照片、视频等),而在这个过程中无须将用户名和密码提供给第三方应用。实现这一功能是通过提供一个令牌(token),而不是用户名和密码来访问他们存放在特定服务提供者的数据。每一个令牌授权一个特定的网站在特定的时段内访问特定的资源。这样,OAuth 让用户可...

2024-04-28 12:02:20 441

原创 Spring Boot集成Spring AI实现快速接入openAI

1.什么是Spring AI?Spring AI API 涵盖了广泛的功能。每个主要功能都在其专门的部分中进行了详细介绍。为了提供概述,可以使用以下关键功能:跨 AI 提供商的可移植 API,用于聊天、文本到图像和嵌入模型。支持同步和流 API 选项。还支持下拉访问模型特定功能。我们支持 OpenAI、Microsoft、Amazon、Google、Huggingface 等公司的 AI 模型。跨...

2024-04-26 13:35:00 1043

原创 Spring Boot集成Spring Session快速入门Demo

1.什么事Spring Session?HTTP协议本身是无状态的,为了保存会话信息,浏览器Cookie通过SessionID标识会话请求,服务器以SessionID为key来存储会话信息。在单实例应用中,可以考虑应用进程自身存储,随着应用体量的增长,需要横向扩容,多实例session共享问题随之而来。Spring Session就是为了解决多进程session共享的问题Spring Sessio...

2024-04-25 08:01:06 703

原创 Spring Boot集成RabbitMQ快速入门Demo

1.什么是RabbitMQ?RabbitMQ是一款使用Erlang语言开发的,基于AMQP协议的消息中间件,作为一款优秀的消息系统,RabbitMQ有高并发、可扩展等优势,并适用于大型系统中各个模块之间的通信。RabbitMQ的特点为:持久化、传输确认、发布确认等功能保证消息可靠支持多种消息分发模式,处理更加灵活提供可视化管理界面,使用方便支持集群部署,保证服务高可用2.RabbitMQ环境搭建v...

2024-04-24 08:01:01 415

原创 Spring Boot集成Quartz快速入门Demo

1.Quartz介绍  Quartz是OpenSymphony开源的一个项目,是一个由Java编写的开源作业调度框架。特点支持分布式高可用,我们需要某个定时任务在多个节点中只有某个节点可以执行时,就需要Quartz来实现,否则使用@Scheduled等方式会造成所有节点都执行一遍。支持持久化,Quartz有专门的数据表来实现定时任务的持久化。支持多任务调度和管理,Quartz可以在数据库中存储多个...

2024-04-23 19:00:45 497

原创 Spring Boot集成Mybatis Plus快速入门Demo

1.什么事Mybatis Plus?MyBatis-Plus(opens new window)(简称 MP)是一个MyBatis(opens new window)的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。特性无侵入:只做增强不做改变,引入它不会对现有工程产生影响,如丝般顺滑损耗小:启动即会自动注入基本 CURD,性能基本无损耗,直接面向对象操作强...

2024-04-22 14:54:13 920

原创 Spring Boot集成zipkin快速入门Demo

1.什么zipkinZipkin是一款开源的分布式实时数据追踪系统(Distributed Tracking System),基于 Google Dapper的论文设计而来,由 Twitter 公司开发贡献。其主要功能是聚集来自各个异构系统的实时监控数据。Zipkin默认支持Http协议,除此之外,它还支持kafka,rabbitmq以及scribe协议:2.搭建zipkin环境1.获取镜像doc...

2024-04-20 10:50:34 438

原创 Spring Boot集成atomikos快速入门Demo

1.什么是atomikosAtomikos是一个轻量级的分布式事务管理器,实现了Java Transaction API (JTA)规范,可以很方便的和Spring Boot集成,支持微服务场景下跨节点的全局事务。Atomikos公司官方网址为:https://www.atomikos.com/。其旗下最著名的产品就是事务管理器。产品分两个版本:TransactionEssentials:开源的免...

2024-04-19 08:00:39 359

原创 Spring Boot集成fastdfs快速入门Demo

1.什么是fastdfsFastDFS 是一个开源的高性能分布式文件系统(DFS)。它的主要功能包括:文件存储,文件同步和文件访问,以及高容量和负载平衡。主要解决了海量数据存储问题,特别适合以中小文件(建议范围:4KB < file_size <500MB)为载体的在线服务。FastDFS 系统有三个角色:跟踪服务器(Tracker Server)、存储服务器(Storage Serv...

2024-04-18 08:02:01 610

原创 Spring Boot集成Https快速入门Demo

1.什么是https?HTTPS,也称作HTTP over TLS。TLS的前身是SSL,TLS 1.0通常被标示为SSL 3.1,TLS 1.1为SSL 3.2,TLS 1.2为SSL 3.3 HTTPS和HTTP协议相比提供了数据完整性:内容传输经过完整性校验数据隐私性:内容经过对称加密,每个连接生成一个唯一的加密密钥身份认证:第三方无法伪造服务端(客户端)身份其中,数据完整性和隐私性由TLS...

2024-04-17 08:24:36 574

原创 Spring Boot集成easypoi快速入门Demo

1.什么是easypoi?Easypoi功能如同名字easy,主打的功能就是容易,让一个没见接触过poi的人员就可以方便的写出Excel导出,Excel模板导出,Excel导入,Word模板导出,通过简单的注解和模板语言(熟悉的表达式语法),完成以前复杂的写法。2.代码工程实验目的:实现excel导入和导出pom.xml<?xml version="1.0" encoding="UTF-8"...

2024-04-15 20:41:33 363

原创 Spring Boot集成webflux快速入门Demo

1.webflux介绍Spring WebFlux是一个异步非阻塞式的WEB框架,它能够充分利用多核CPU的硬件资源去处理大量的并发请求,而Spring MVC是构建于Servlet API之上,使用的是同步阻塞式I/O模型,即每一个请求对应一个线程去处理。2.WebFlux 与 Spring MVC 区别WebFlux:异步非阻塞: WebFlux 基于反应式编程模型,支持非阻塞 I/O,能够充...

2024-04-12 14:06:08 509

原创 Spring Boot集成Graphql快速入门Demo

1.Graphql介绍GraphQL 是一个用于 API 的查询语言,是一个使用基于类型系统来执行查询的服务端运行时(类型系统由你的数据定义)。GraphQL 并没有和任何特定数据库或者存储引擎绑定,而是依靠你现有的代码和数据支撑。优势GraphQL 速度快,并且比较稳定,GraphQL 的操作是在数据层面的,所以比较快。GraphQL 可以获取更多的资源,当查询一个数据的时候,不止是这个数据,甚...

2024-04-11 11:36:52 482

原创 SpringBoot API 多版本快速入门Demo

1.多版本背景介绍在以SpringBoot开发Restful接口时,由于模块,系统等业务的变化,需要对同一接口提供不同版本的参数实现(老的接口还有模块或者系统在用,不能直接改,所以需要不同版本)。如何更加优雅的实现多版本接口呢?网上很多自定义版本注解的方法,但是我不太建议这样做,因为硬编码和增加系统的维护成本。而且springboot本身就很好的支持多版本,没有必要再去造轮子。2.代码工程pom...

2024-04-09 17:34:34 313

原创 SpringBoot内容协商快速入门Demo

1.什么内容协商简单说就是服务提供方根据客户端所支持的格式来返回对应的报文,在 Spring 中,REST API 基本上都是以 json 格式进行返回,而如果需要一个接口即支持 json,又支持其他格式,开发和维护多套代码显然是不合理的,而 Spring 又恰好提供了该功能,那便是ContentNegotiation 在 Spring 中,决定一个数据是以 jso还是xml 分别如下:favor...

2024-04-08 17:12:53 435

原创 Spring Boot集成Debezium实现postgres增量同步

1.Debezium和postgres介绍Debezium是一个开源项目,为捕获数据更改(change data capture,CDC)提供了一个低延迟的流式处理平台。你可以安装并且配置Debezium去监控你的数据库,然后你的应用就可以消费对数据库的每一个行级别(row-level)的更改。只有已提交的更改才是可见的,所以你的应用不用担心事务(transaction)或者更改被回滚(roll ...

2024-04-07 17:31:35 908

原创 Spring Boot单元测试快速入门Demo

1.test介绍软件测试是一个应用软件质量的保证。开发者开发接口往往忽视接口单元测试。如果会Mock单元测试,那么你的bug量将会大大降低。spring提供test测试模块。整体上,Spring Boot Test支持的测试种类,大致可以分为如下三类:单元测试:一般面向方法,编写一般业务代码时,测试成本较大。涉及到的注解有@Test。切片测试:一般面向难于测试的边界功能,介于单元测试和功能测试之间...

2024-04-04 14:23:32 636

原创 Springboot集成hanlp快速入门demo

HanLP是一系列模型与算法组成的NLP工具包,目标是普及自然语言处理在生产环境中的应用。HanLP具备功能完善、性能高效、架构清晰、语料时新、可自定义的特点。内部算法经过工业界和学术界考验,配套书籍《自然语言处理入门》已经出版。目前,基于深度学习的HanLP 2.x已正式发布,次世代最先进的NLP技术,支持包括简繁中英日俄法德在内的104种语言上的联合任务。中文分词HMM-Bigram(速度与精度最佳平衡;一百兆内存)最短路分词N-最短路分词由字构词(侧重精度,全世界最大语料库,可识别新词;

2024-04-03 14:55:41 1087

原创 Spring Boot集成Spring Retry快速入门Demo

1.Retry介绍Spring Retry提供了自动重新调用失败的操作的功能。这在错误可能是暂时的(例如瞬时网络故障)的情况下很有用。从2.2.0版本开始,重试功能已从Spring Batch中撤出,成为一个独立的新库:Spring Retry使用场景在日常开发过程中,难免会与第三方接口发生交互,例如:短信发送、远程服务调用、争抢锁等场景,当正常调用发生异常时,例如:网络抖动,这些间歇性的异常在一...

2024-04-03 11:22:10 614

原创 Spring Boot集成AJ-Captcha实现滑动验证码功能

1.AJ-Captcha介绍行为验证码采用嵌入式集成方式,接入方便,安全,高效。抛弃了传统字符型验证码展示-填写字符-比对答案的流程,采用验证码展示-采集用户行为-分析用户行为流程,用户只需要产生指定的行为轨迹,不需要键盘手动输入,极大优化了传统验证码用户体验不佳的问题;同时,快速、准确的返回人机判定结果AJ-Captcha行为验证码AJ-Captcha行为验证码,包含滑动拼图、文字点选两种方式,...

2024-04-02 21:44:07 604

原创 Spring Boot集成JWT快速入门demo

1.JWT是什么?JWT,英文全称JSON Web Token:JSON网络令牌。为了在网络应用环境间传递声明而制定的一种基于JSON的开放标准(RFC 7519)。这个规范允许我们使用JWT在客户端和服务端之间传递安全可靠的信息。JWT是一个轻便的安全跨平台传输格式,定义了一个紧凑自包含的方式,用于通信双方之间作为 JSON 对象安全地传递信息。此信息可以通过数字签名进行验证和信任。紧凑:这个字...

2024-04-01 17:00:51 981

原创 Spring Boot集成disruptor快速入门demo

1.disruptor介绍什么是 Disruptor?Disruptor 是英国外汇交易公司 LMAX 开发的一个高性能的并发框架。可以认为是线程间通信的高效低延时的内存消息组件,它最大的特点是高性能。与 Kafka、RabbitMQ 用于服务间的消息队列不同,disruptor 一般用于一个 JVM 中多个线程间消息的传递。从功能上来看,Disruptor 实现了“队列”的功能,而且是一个有界队...

2024-03-29 14:43:17 466

原创 Spring Boot集成itext实现html生成PDF功能

1.itext介绍iText是著名的开放源码的站点sourceforge一个项目,是用于生成PDF文档的一个java类库。通过iText不仅可以生成PDF或rtf的文档,而且可以将XML、Html文件转化为PDF文件iText 的特点以下是 iText 库的显着特点 −Interactive − iText 为你提供类(API)来生成交互式 PDF 文档。使用这些,你可以创建地图和书籍。Addin...

2024-03-28 16:41:12 885

原创 Spring Boot集成hikari快速入门demo

1.hikari介绍Hikari是快速,简单,可靠和生产就绪的JDBC连接池。在Spring Boot 2.0版本中,默认数据库池技术已从Tomcat Pool切换到Hikari。这是因为Hikari提供了卓越的性能。现在自Spring Boot 2.0发布以来,spring-boot-starter-jdbc和spring-boot-starter-data-jpa默认解析Hikari依赖, s...

2024-03-27 11:31:12 598

原创 Spring Boot集成JPA快速入门demo

1.JPA介绍JPA(Java Persistence API) 是Sun官方提出的Java持久化规范。它为Java开发人员提供了一种对象/关联映射工具来管理Java应用中的关系数据。他的出现主要是为了简化现有的持久化开发工作和整合ORM技术,结束现在Hibernate,TopLink,JDO 等ORM框架各自为营的凌乱局面。JPA在充分吸收了现有Hibernate,...

2024-03-26 17:31:35 924

原创 Spring Boot集成JSch快速入门demo

1.JSch介绍JSch是SSH2的纯Java实现。JSch允许您连接到sshd服务器并使用端口转发,X11转发,文件传输等,并且可以将其功能集成到您自己的Java程序中。2.实现原理根据远程主机的IP地址,用户名和端口,建立会话(Session)设置用户信息(包括密码和Userinfo),然后连接session,getSession()只是创建一个session,需要设置必要的认证信息之后,调用...

2024-03-25 22:13:10 461

原创 Spring Boot集成zxing实现生成二维码功能

1.二维码介绍二维码QR Code(Quick Response Code)由Denso公司于1994年9月研制的一种矩阵二维码符号,它具有一维条码及其它二维条码所具有的信息容量大、可靠性高、可表示汉字及图象多种文字信息、保密防伪性强等优点。ZXing一个支持在图像中解码和生成条形码(如二维码、PDF 417、EAN、UPC、Aztec、Data Matrix、Codabar)的库。ZXing(...

2024-03-23 11:07:21 421

原创 Spring Boot集成chronicle queue快速入门demo

1.chronicle queue介绍Chronicle Queue使用一个内存映射文件来持久化每一条消息。这使我们能够在进程之间共享消息。它直接将数据存储到堆外内存,因此,使其没有GC开销。它被设计用来为高性能应用程序提供低延迟的消息框架。使用开源的Chronicle Queue可以创建巨大的持久队列,同时保持可预测和一致的低延迟。Chronicle Queue有三个概念的特点。Excerpt ...

2024-03-21 12:00:18 496

原创 Spring Boot集成Debezium快速入门demo

1.Debezium介绍Debezium是一个用来捕获数据库数据变更的分布式服务,你的应用可以看到这些数据变更,以及处理他们。Debezium以更改事件流的形式记录每张表的行级变更。然后应用可以以事件流产生的顺序读取事件流变更记录。目前支持的Source Connectors是Mysql,MongoDB,PostgresSQL、Oracle、SQL Server、Db2、Cassamdra、Vit...

2024-03-20 13:27:46 506

原创 Spring Boot集成mapstruct快速入门指南

1.mapstruct介绍在项目中经常会用到DO,BO,DTO,VO等对象的相互转化,这就需要一个高效通用的转化工具,毕竟每个字段get/set方法会很麻烦。MapStruct 就是这样的一个属性映射工具,只需要定义一个 Mapper 接口,MapStruct就会自动实现这个映射接口,避免了复杂繁琐的映射实现。2.代码工程pom.xml<?xml version="1.0" encoding...

2024-03-15 13:53:42 716

原创 Spring集成hazelcast实现分布式缓存

1.Hazelcast介绍Hazelcast是Hazelcast公司开源的一款分布式内存数据库产品,提供弹性可扩展、高性能的分布式内存计算。并通过提供诸如Map,Queue,ExecutorService,Lock和JCache等Java的许多开发人员友好的分布式实现。Hazelcast优势Hazelcast提供开源版本。Hazelcast无需安装,只是个极小jar包。Hazelcast提供开箱即...

2024-03-13 14:30:18 477

原创 Spring boot 集成python引擎快速入门demo

一、Python介绍Python 是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。Python 的设计具有很强的可读性,相比其他语言经常使用英文关键字,其他语言的一些标点符号,它具有比其他语言更有特色语法结构。Python 是一种解释型语言:这意味着开发过程中没有了编译这个环节。类似于PHP和Perl语言。Python 是交互式语言:这意味着,您可以在一个 Python 提示...

2024-03-12 10:13:51 591

原创 Spring Boot如何自定义自己的Starter组件?

一、为什么要自定义starter在我们的日常开发工作中,经常会有一些独立于业务之外的配置模块,我们经常将其放到一个特定的 包下,然后如果另一个工程需要复用这块功能的时候,需要将代码硬拷贝到另一个工程,重新集成一 遍,麻烦至极。如果我们将这些可独立于业务代码之外的功能配置模块封装成一个个starter,复用的时 候只需要将其在pom中引用依赖即可,SpringBoot为我们完成自动装配,简直不要太爽...

2024-03-11 11:07:54 1072

原创 Spring boot 集成netty实现websocket通信

一、netty介绍Netty 是一个基于NIO的客户、服务器端的编程框架,使用Netty 可以确保你快速和简单的开发出一个网络应用,例如实现了某种协议的客户、服务端应用。Netty相当于简化和流线化了网络应用的编程开发过程,例如:基于TCP和UDP的socket服务开发。快速”和“简单”并不用产生维护性或性能上的问题。Netty 是一个吸收了多种协议(包括FTP、SMTP、HTTP等各种二进制文本...

2024-03-08 13:27:07 764

原创 Spring boot 集成GraalVM JS引擎快速入门demo

一、GraalVM.js介绍是一款 JavaScript 解释器/编译器,能够在 JVM 上运行 Node.js 应用;主要应用场景因为JS是动态语言,不需要编译,因此可以通过JS动态改变程序执行逻辑,比如:风控规则,服务编排等等二、代码工程pom.xml<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://m...

2024-03-07 10:46:51 662

原创 spring boot集成neo4j实现简单的知识图谱

一、neo4j介绍随着社交、电商、金融、零售、物联网等行业的快速发展,现实社会织起了了一张庞大而复杂的关系网,传统数据库很难处理关系运算。大数据行业需要处理的数据之间的关系随数据量呈几何级数增长,急需一种支持海量复杂数据关系运算的数据库,图数据库应运而生。 世界上很多著名的公司都在使用图数据库,比如:社交领域:Facebook, Twitter,Linkedin用它来管理社交关系,实现好友推荐二、...

2024-03-06 15:53:15 1426

原创 spring boot集成flyway快速入门demo

一、flyway介绍我们都知道,Git/ SVN 是代码界的版本控制工具,那么,Flyway 就是一款数据库界的版本控制工具,它可以记录数据库的变化记录。可能很多公司都是通过人工去维护、同步数据库脚本,但经常会遇到疏忽而遗漏的情况,举个简单的例子:我们在开发环境对某个表新增了一个字段,而提交测试时却忘了提交该 SQL 脚本,导致出现 bug 而测试中断,从而影响开发、测试的工作效率。有了 Fly...

2024-03-05 14:29:13 474

原创 springboot集成logback打印彩色日志

一、logback介绍Logback是由log4j创始人设计的另一个开源日志组件,官方网站:logback.qos.ch。它当前分为以下三个模块:logback-core:其它两个模块的基础模块。logback-classic:它是log4j的一个改良版本,同时它完整实现了slf4j API使你可以很方便地更换成其它日志系统如log4j或JDK14 Logging。logback-access:...

2024-03-04 16:33:10 468

原创 sprintboot集成flink快速入门demo

一、flink介绍Flink是一个批处理和流处理结合的统一计算框架,其核心是一个提供了数据分发以及并行化计算的流数据处理引擎。它的最大亮点是流处理,是业界最顶级的开源流处理引擎。Flink最适合的应用场景是低时延的数据处理(Data Processing)场景:高并发pipeline处理数据,时延毫秒级,且兼具可靠性。二、环境搭建安装flinkhttps://nightlies.apache.or...

2024-03-01 13:59:25 855

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除