随笔分类 - Java
Java
摘要:在本文中,我将介绍 Caffeine — 一个高性能的 Java 缓存库。缓存和 Map 之间的一个根本区别在于缓存可以回收存储的 item。回收策略为在指定时间删除哪些对象。此策略直接影响缓存的命中率 —— 缓存库的一个重要特性。Caffeine 因使用了 Window TinyLfu 回收策略,提供了一个近乎最佳的命中率...
阅读全文
摘要:使用 JPA 和 Hibernate 的其一好处是它提供了数据库特定方言和功能抽象。因此,理论上,你可以实现一个应用程序,将其连接到一个受支持的数据库,并且它可以在不用更改任何代码的情况下运行。
阅读全文
摘要:依赖管理一直是复杂项目的关键部分。使用手动的方式来实现依赖管理不太现实,你得花更多时间,同时你在项目的其他方面能付出的时间就会变得越少。
阅读全文
摘要:在本文中,我们将探讨前端应用与单独部署的 REST API 之间的通信,解决 CORS 和浏览器的同源策略限制,允许 UI 调用 API,即使它们不是同源。基本上,我们将创建两个独立的应用程序 — 一个 UI 应用程序和一个简单的 REST API,我们将使用 UI 应用程序中的 Zuul 代理来代理对 REST API 的调用。
阅读全文
摘要:在本教程中,我们将使用 OAuth 来保护 REST API,并以一个简单的 AngularJS 客户端进行示范。我们要建立的应用程序将包含了四个独立模块:授权服务器、资源服务器、 UI implicit ( 一个使用 Implicit Flow 的前端应用)和 UI password ( 一个使用 Password Flow 的前端应用)。
阅读全文
摘要:或许您正在使用 REST 端点(endpoint)来摆脱 Web 服务和客户端。如果您是一名 Java 开发人员,您可能已经尝试过 JAX-RS、Spring REST 或者两者。但哪一个好用呢?在这篇文章中,我将介绍两者之间的差异,使用大体相同的代码进行对比。在之后的博文中,我将向您展示如何轻松地使用 Apache Shiro 和 Okta 来保护这些 REST 端点。
阅读全文
摘要:在之前的博文《为什么是 Spring Boot》中,我们已经介绍了如何创建一个 Spring Boot 应用程序。但是,你可能还不了解它幕后究竟发生了什么,你想了解 SpringBoot AutoConfiguration 背后的原理。但在此之前,你应该先了解 Spring @Conditional 的特性,所有 Spring Boot AutoConfiguration 魔法都是基于它...
阅读全文
摘要:本文将介绍各种 Spring 的配置方式,帮助你了解配置 Spring 应用的复杂性。Spring 是一个非常受欢迎的 Java 框架,它用于构建 Web 和企业应用。不像许多其他框架只关注一个领域,Spring 框架提供了各种功能,通过项目组合来满足当代业务需求...
阅读全文