51工具盒子

依楼听风雨
笑看云卷云舒,淡观潮起潮落

软件教程

Spring Modulith 简介

Spring Modulith 简介

厉飞雨 阅读(12) 评论(0) 赞(2)

1、简介 {#1简介} ----------- 模块化单体(Modular Monolith)是一种架构风格,在这种风格中,我们的源代码按照模块的概念进行结构化。对于许多组织来说,模块化单体是一个很好的选择。它有助于保持一定程度的独立性,这有助于我们在需要时过渡到微服务架构。 [Spring Modulith](https://spring.io/projects/spri...

Spring Boot 应用中的事务处理

Spring Boot 应用中的事务处理

厉飞雨 阅读(10) 评论(0) 赞(3)

在 Spring 应用中,无论使用 [`JdbcTemplate`](/spring-boot-jdbctemplate-tutorial/) 还是 JPA/Hibernate 或 Spring Data JPA,都需要处理数据库事务。 数据库事务是一个事务单元,它要么全部完成,要么都不完成,并使数据库处于一致状态。在实现数据库事务时,需要考虑到 ACID(原子性、一致性、隔...

在 Spring 6 中使用虚拟线程(Virtual Threads)

在 Spring 6 中使用虚拟线程(Virtual Threads)

厉飞雨 阅读(9) 评论(0) 赞(4)

1、简介 {#1简介} ----------- 在这个简短的教程中,我们将了解如何在 Spring Boot 中使用虚拟线程(Virtual Threads)。 虚拟线程是 Java 19 的 [预览特性](https://openjdk.org/jeps/425),这意味着它们将在未来 12 个月内被纳入 JDK 的正式版本中。虚拟线程最初是由 Loom 项目引入的,在 ...

在 Spring Boot 中使用 OpenAI ChatGPT API

在 Spring Boot 中使用 OpenAI ChatGPT API

厉飞雨 阅读(16) 评论(0) 赞(2)

1、概览 {#1概览} ----------- 在本教程中,我们将学习如何在 Spring Boot 中调用 OpenAI ChatGPT API。我们将创建一个 Spring Boot 应用程序,通过调用 OpenAI ChatGPT API 来生成对提示的回复。 2、OpenAI ChatGPT API {#2openai-chatgpt-api} ----------...

在 Spring Boot 应用中把上传的图片编码为 WEBP 格式

在 Spring Boot 应用中把上传的图片编码为 WEBP 格式

厉飞雨 阅读(11) 评论(0) 赞(3)

WebP 是一种现代的图像格式,由 Google 开发。它采用了无损和有损的压缩算法,可以显著减小图像文件的大小,同时保持较高的视觉质量。WebP 图像通常比 JPEG 和 PNG 格式的图像更小,并且具有更快的加载速度,这对于 Web 应用程序和网页的性能优化非常有益。此外,WebP 还支持透明度和动画,使其成为一个多功能的图像格式。它已经得到了广泛的支持,包括主流的 Web...

在 Spring 应用中处理 CORS 跨域

在 Spring 应用中处理 CORS 跨域

厉飞雨 阅读(17) 评论(0) 赞(3)

1、概览 {#1概览} ----------- 在任何现代浏览器中,随着通过 REST API 获取数据的 HTML5 和 JS 客户端的出现,跨源资源共享 (CORS) 已成为一种相关规范。 通常,提供 JS 的主机(如 `example.com`)与提供数据的主机(如 `api.example.com`)不同。在这种情况下,CORS 可以实现跨域通信。 Spring ...

Spring Boot 整合 MyBatis

Spring Boot 整合 MyBatis

厉飞雨 阅读(14) 评论(0) 赞(3)

[MyBatis](https://mybatis.org/mybatis-3/zh/index.html) 是一个流行的 Java 持久层框架,它简化了与关系型数据库的交互。通过将 SQL 语句与 Java 代码进行映射,MyBatis 提供了一种方便、灵活的方式来执行数据库操作。它支持动态SQL、缓存机制和插件扩展,使得开发人员能够更高效地编写和管理数据库访问代码。作为一种...

在 Spring Boot 应用中使用 Grpc 进行通信

在 Spring Boot 应用中使用 Grpc 进行通信

厉飞雨 阅读(14) 评论(0) 赞(1)

在本文中,你将学习如何在 Spring Boot 应用程序中实现使用 gRPC 进行通信。gRPC 是一个现代的开源远程过程调用(RPC)框架,可以在任何环境中运行。默认情况下,它使用 Google 的 Protocol Buffer 来对结构化数据进行序列化和反序列化。当然,我们也可以切换到其他数据格式,比如 JSON。为了简化我们在 gRPC 和 Spring Boot 中...

使用 Spring Doc 为 Spring REST API 生成 OpenAPI 3.0 文档

使用 Spring Doc 为 Spring REST API 生成 OpenAPI 3.0 文档

厉飞雨 阅读(18) 评论(0) 赞(1)

1、概览 {#1概览} ----------- 文档是构建 REST API 的重要组成部分。在本教程中,我们将介绍 Spring Doc,它可简化 API 文档的生成和维护,这些文档基于 OpenAPI 3 规范,适用于 Spring Boot 3.x 应用程序。 2、设置 springdoc-openapi {#2设置-springdoc-openapi} ------...

Spring 中的事务管理器(TransactionManager)

Spring 中的事务管理器(TransactionManager)

厉飞雨 阅读(14) 评论(0) 赞(3)

**事务管理** ,一个被说烂的也被看烂的话题,还是面试中常问到的问题之一。 本文会从设计角度,一步步的剖析 Spring 事务管理的设计思路(都会设计事务管理器了,还能玩不转?)。 一、为什么需要事务管理? {#一为什么需要事务管理} -------------------------- 先看看如果没有事务管理器的话,如果想让多个操作(方法/类)处在一个事务里应该怎么做...