logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

spring security中记住我的实现逻辑

Spring Security Remember-Me 机制解析 Spring Security 的 Remember-Me 功能提供两种实现方式:简单哈希和持久化令牌。简单哈希方式无需服务器存储,通过用户名、密码和密钥生成令牌,但安全性较低且无法撤销。持久化令牌方式将令牌信息存储在数据库,采用系列标识符和随机令牌值,支持令牌轮换和主动撤销,安全性更高。

#spring#java#后端
spring security中的默认用户名密码登录逻辑

Spring Security 中默认用户名密码登录是一个非常核心的安全流程,理解它对于自定义和扩展 Spring Security 至关重要。整个认证流程可以比作一个精密的安检系统,涉及多个组件协同工作。我们将按照请求的处理顺序,逐一解析每个关键组件的角色和逻辑。(必须):@Bean// 内存中的用户,实际应从数据库加载.build();(必须):@BeanSpring Security 的默认

#spring#java#后端
spring security中httpSecurity构建DefaultSecurityFilterChain逻辑

是 Spring Security 中用于配置 Web 层安全的核心类,可以把它理解为整个安全过滤器链的“总设计师”和“建造指挥”。我们日常编写的等配置,本质上都是在与这个“总设计师”交互,指挥它如何组装和配置最终的安全防线——。: 是一个建筑总包公司。它不直接砌砖,但它拥有所有施工队()的名单和联系方式,并持有所有建筑材料()的仓库钥匙。: 是各个专业施工队(如水电队、泥工队、油漆队)。每个施工

#spring#java#后端
spring security中的webSecurity构建FilterChainProxy的逻辑

Spring Security 核心组件包括 DelegatingFilterProxy(Servlet 过滤器代理)、FilterChainProxy(核心过滤器)、SecurityFilterChain(过滤器链抽象)以及配置构建器 WebSecurity 和 HttpSecurity。@EnableWebSecurity 注解启动配置流程,通过 WebSecurity 创建 FilterCh

#spring#java#后端
Spring AI 核心概念详解:ChatModel、Embedding 与 VectorStore

ChatModel:与大语言模型对话的抽象,负责发送提示词并获取回复:将文本转换为向量表示的抽象,用于语义搜索和相似度计算:向量数据库的抽象,用于存储和检索向量数据一句话总结ChatModel负责"说",负责"理解",负责"记忆"——三者构成了 AI 应用的基础设施。Embedding 是将文本(单词、句子、文档)映射到高维向量空间的技术。语义相近的文本在向量空间中的距离也更近。ChatModel

#spring#java#后端
Spring AI 集成 OpenAI:实现智能对话与文本生成

对话补全,支持 GPT-4o、GPT-4、GPT-3.5 等模型:文本向量化,支持 text-embedding-3-small/large:图片生成,支持 DALL-E 系列模型:语音转文字,支持 Whisper 模型:函数调用,让 AI 可以调用外部工具一句话总结:Spring AI 将 OpenAI 的 REST API 封装为优雅的 Java 接口,使开发者可以用 Spring 的方式调用

#人工智能#spring#java
Spring AI 源码解析(一):自动配置与核心启动流程

当我们在项目中引入加载自动配置类:通过或发现配置类条件装配:根据 Classpath 中的依赖和配置属性决定是否创建Bean创建核心客户端:初始化客户端创建 Model Bean:构建等核心Bean注入高阶 API:构建供开发者使用Spring AI 的自动配置入口是条件装配 通过等注解实现灵活控制OpenAiApi 是对 OpenAI REST API 的 HTTP 客户端封装,使用 Sprin

#spring#人工智能#java
Spring AI 源码解析(四):Embedding 与 VectorStore 实现原理

的 upsert 语义——如果 Document 的 id 已存在,就覆盖。这个设计我在做增量更新时用到过:从数据库里读一批数据做 Embedding,如果文档内容变了,覆盖旧的向量就行,不需要先删再插。HNSW 的查询速度和精度都更好,虽然建索引慢一点,但建完之后优势明显。如果你的数据量很小(几千条),甚至可以不建索引,全表扫描就够快了。如果你在批处理大量文档,可以适当调大到 30-50,但要做

#spring#人工智能
Spring AI 源码解析(六):自动配置扩展机制与多模型适配器

Spring AI 最吸引人的地方不是它对某一家 AI 厂商的支持而是它用同一套接口屏蔽了十几家 AI 服务商的差异,并通过 Spring Boot 自动配置实现了"引入即用"。换厂商只需改几行配置,业务代码几乎不用动。这背后是框架做了大量适配工作——接口抽象、SPI 自动发现、条件注入、消息格式转换、配置分层。这篇从源码层面把这些机制彻底理清楚。核心目标:理解 Spring AI 如何通过Cha

#spring#人工智能#java
Spring AI 源码解析(七):RAG 管道设计理念

RAG(Retrieval-Augmented Generation)是 Spring AI 中最核心的工程化模式——将私有知识库与 LLM 结合,让大模型能够基于企业内部文档回答问题。文档加载(Document Loading):从文件系统、数据库等来源读取原始文档文档转换(Document Transformation):切分、清洗、元数据提取向量入库(Vector Ingestion):Em

#spring#人工智能#java
    共 38 条
  • 1
  • 2
  • 3
  • 4
  • 请选择