Spring Security 是一个功能强大且高度可定制的认证和访问控制框架,是保护基于 Spring 的应用程序的事实标准。
📖 内容
- SpringBoot 之安全 - 关键词:
认证、授权、Spring Security、JWT、Session
Spring Security 是一个功能强大且高度可定制的认证和访问控制框架,是保护基于 Spring 的应用程序的事实标准。
认证、授权、Spring Security、JWT、Session🎯 目标等级:L2 | ⏱ 建议用时:8 min | 🏷 标签:Netty / I/O 模型
BIO 同步阻塞、一连接一线程;NIO 同步非阻塞、靠 I/O 多路复用一线程管多连接;AIO 异步非阻塞、内核完成后回调通知。Java 网络编程以 NIO 为主流,Netty 正是基于 NIO 构建;AIO 在 Linux 生态应用很少。
🎯 目标等级:L1 | ⏱ 建议用时:5 min | 🏷 标签:SpringBoot / 概述
SpringBoot 是基于 Spring 的开箱即用脚手架,核心理念是约定优于配置:自动配置按依赖推断并装配 Bean,starter 将相关依赖打包成整体,内嵌容器支持 java -jar 直接运行,Actuator 提供生产监控。它没有替代 Spring,而是消除了 Spring 应用的样板配置。
🎯 目标等级:L2 | ⏱ 建议用时:10 min | 🏷 标签:SpringCloud / 生态总览
Spring Cloud 核心组件按职责分九类:注册发现(Eureka/Consul/Nacos)、负载均衡(LoadBalancer)、配置中心(Config/Apollo/Nacos)、服务调用(OpenFeign)、熔断限流(Sentinel/Resilience4j)、网关(Gateway)、消息驱动(Stream)、链路追踪(Sleuth 系)、监控(Boot Admin)。国内主流组合已切换为 Spring Cloud Alibaba:Nacos + Sentinel + Gateway + OpenFeign。
Shiro、认证、授权、Realm、会话管理Spring Security、安全框架、认证授权、FilterChain、OAuth2🎯 目标等级:L1 | ⏱ 建议用时:5 min | 🏷 标签:MyBatis / 概述
MyBatis 是半自动 ORM 框架:SQL 手写但映射自动化。优点是 SQL 灵活可控、支持动态 SQL、轻量易上手;缺点是 SQL 编写量大、数据库移植性差。适合需要精细化 SQL 优化的互联网业务场景。
Spring MVC 中视图技术的使用是可插拔的。无论决定使用 Thymeleaf、Groovy 等模板引擎、JSP 还是其他技术,都可以通过配置来更改。
Spring MVC 的视图位于该应用程序的内部信任边界内。 视图可以访问应用程序上下文的所有 bean。 因此,不建议在模板可由外部源编辑的应用程序中使用 Spring MVC 的模板支持,因为这可能会产生安全隐患。
Thymeleaf 是一个现代服务器端 Java 模板引擎,它强调自然的 HTML 模板,可以通过双击在浏览器中预览,而无需运行服务器,这对于 UI 模板的独立工作(例如,由设计师)非常有帮助。
Spring MVC 支持跨域处理(CORS)。
出于安全原因,浏览器禁止对当前源之外的资源进行 AJAX 调用。例如,可以在一个选项卡中使用您的银行帐户,而在另一个选项卡中使用 evil.com。来自 evil.com 的脚本不应该能够使用您的凭据向您的银行 API 发出 AJAX 请求——例如从您的账户中取款!
Spring MVC 提供了一种基于注解的编程模型,@Controller 和 @RestController 组件使用注解来表达请求映射、请求输入、异常处理等。注解控制器具有灵活的方法签名,并且不必扩展基类或实现特定接口。以下示例显示了一个由注解定义的控制器:
@Controller
public class HelloController {
@GetMapping("/hello")
public String handle(Model model) {
model.addAttribute("message", "Hello World!");
return "index";
}
}