使用 Spring Security 构建 OAuth 2.0 资源服务器
1、概览 {#1概览} ----------- 本文将带你了解如何使用 Spring Security 构建 OAuth 2.0 资源服务器(使用 JWT 和 Opaque Token,这两种由 Spring Security 支持的 Bearer Token)。 2、背景介绍 {#2背景介绍} --------------- ### 2.1、JWT 和 Opaque T...
1、概览 {#1概览} ----------- 本文将带你了解如何使用 Spring Security 构建 OAuth 2.0 资源服务器(使用 JWT 和 Opaque Token,这两种由 Spring Security 支持的 Bearer Token)。 2、背景介绍 {#2背景介绍} --------------- ### 2.1、JWT 和 Opaque T...
1、概览 {#1概览} ----------- 本文将带你了解 Spring 中 `@PathVariable` 注解的作用和用法。 简单地说,`@PathVariable` 注解可用于处理请求 URI 映射中的模板变量,并将其绑定到 Controller 方法参数。 2、示例映射 {#2示例映射} --------------- `@PathVariable` 注解的...
1、概览 {#1概览} ----------- Flyway 迁移并不总是一帆风顺行,本文将带你了解迁移失败后的恢复方案。 2、设置 {#2设置} ----------- 从基本的 Spring Boot 配置 Flyway 开始。它依赖 [`flyway-core`](https://mvnrepository.com/artifact/org.flywaydb/fly...
1、概览 {#1概览} ----------- 在 Spring 3.0 之前,XML 是定义和配置 Bean 的唯一方法。Spring 3.0 引入了 [JavaConfig](https://docs.spring.io/spring-javaconfig/docs/1.0.0.M4/reference/html/),允许我们使用 Java 类配置 Bean。不过,如今有...
1、概览 {#1概览} ----------- 通过 Cron 表达式,我们可以安排任务在特定日期和时间定期运行。Cron 表达式在 Unix 中推出后,其他基于 Unix 的操作系统和软件库(包括 [Spring](/spring/))都采用了它的任务调度方法。 本文将带你了解基于 Unix 操作系统的 Cron 表达式与 Spring Cron 之间的区别。 2、Un...
1、概览 {#1概览} ----------- 随着越来越多的企业转向使用容器,Docker 在软件开发中的地位也越来越重要。为此,[Spring Boot](/spring-boot/) 2.3 的一大新功能就是为 Spring Boot 应用轻松创建 Docker 镜像提供了支持。 本文将带你了解如何为 Spring Boot 应用创建 Docker 镜像。 2、传统...
1、概览 {#1概览} ----------- 本文将带你详细了解 [Spring](/spring/) 中的 `ApplicationContext` 接口。 2、ApplicationContext 接口 {#2applicationcontext-接口} ------------------------------------------------- Spring...
1、概览 {#1概览} ----------- 在应用开发中,尤其是在企业级 Web 和移动应用领域,安全是一个首要问题。 本文将带你了解、比较两种流行的 Java 安全框架 - [Apache Shiro](https://shiro.apache.org/) 和 [Spring Security](/spring-security/)。 2、背景 {#2背景} ---...
本文将带你了解如何在 [Spring Boot](/spring-boot/) 应用中使用 WebSocket 构建一个在线的日志系统。通过该系统,不需要登录服务器,即可在 HTML 页面上通过 WebSocket 长连接预览到服务器的即时日志。 创建 Spring Boot 应用 {#创建-spring-boot-应用} --------------------------...
[Spring Initializr](https://start.spring.io)(start.spring.io)是由 Spring Boot 官方提供的一个开源的 Spring Boot 项目初始化器。它提供了一个简单易用的界面来创建和配置 Spring 项目的初始代码。通过这个网站,开发者可以选择所需的 Spring Boot 版本、语言、构建工具(如 Maven ...