.RememberMe简介
RememberMe并非简单保存用户名密码,而是服务器端实现的持久登录机制。传统Session在关闭浏览器后失效,而RememberMe通过安全令牌等方式,使用户重新打开浏览器后仍保持登录状态,提升体验的同时需防范潜在安全风险。
RBAC权限模型分类
RBAC0实现用户、角色、权限的多对多关系;RBAC1引入角色继承,形成上下级;RBAC2增加静态与动态职责分离,防止权限冲突;RBAC3融合RBAC1与RBAC2,兼具继承与职责分离机制,提升权限管理的安全性与灵活性。(238字)
泛型擦除与多态的冲突与解决方法
泛型类 `Pair<T>` 在类型擦除后,泛型参数变为 `Object`,导致子类 `DateInter` 重写 `setValue(Date)` 和 `getValue()` 时实际为桥接方法实现。尽管看似重写,实则编译器生成桥接方法以兼容多态,虚拟机通过方法签名(参数与返回类型)区分,实现泛型多态的“伪重写”。
【赵渝强老师】MySQL的数据约束
本文介绍了MySQL中的六种数据约束:主键、外键、唯一、检查、非空和默认值约束,通过示例讲解其作用与用法,帮助确保数据库数据的完整性与准确性。
即将开源 | 阿里云 Tair KVCache Manager:企业级全局 KVCache 管理服务的架构设计与实现
阿里云 Tair 联合团队推出企业级全局 KVCache 管理服务 Tair KVCache Manager,通过中心化元数据管理与多后端存储池化,实现 KVCache 的跨实例共享与智能调度。该服务解耦算力与存储,支持弹性伸缩、多租户隔离及高可用保障,显著提升缓存命中率与资源利用率,重构大模型推理成本模型,支撑智能体时代的规模化推理需求。
什么是泛型擦除后保留的原始类型
原始类型是泛型擦除后生成的字节码中的实际类型。定义泛型类时,若无限定则类型变量被Object替换;若有上界限定(如T extends Comparable),则擦除为该限定类型。例如,Pair<T> 擦除为Object,而Pair<T extends Comparable> 擦除为Comparable。
ArrayList扩容机制
ArrayList添加元素时,先调用ensureCapacityInternal()确保容量,首次添加时默认扩容至10。add方法实质是为数组赋值。ensureExplicitCapacity()判断是否需扩容,当容量不足时调用grow()。grow()将容量扩大1.5倍(old + (old >> 1)),并通过Arrays.copyOf()完成数组复制。size()用于集合元素计数,length为数组属性,length()为字符串方法。
简述关系型与非关系型数据库的区别
关系型数据库基于表结构,支持SQL和事务,易于维护但读写性能差、灵活性不足;非关系型数据库格式灵活、速度快、成本低,适用于高并发场景,但缺乏SQL支持与事务机制,复杂查询较弱。
04-Activiti框架拓展
Activiti数据库表以ACT_开头,分五类:ACT_RE(流程定义)、ACT_RU(运行时)、ACT_ID(身份信息)、ACT_HI(历史数据)、ACT_GE(通用数据),涵盖流程管理全过程。
第八章 Mybatis及MybatisPlus
本文介绍了MyBatis系统架构流程、结果集映射、Mapper传参、XML常用配置、缓存机制及分页插件等内容,涵盖SqlSessionFactory构建、Executor执行器、一级与二级缓存原理,并对比PageHelper与MyBatis Plus分页使用方式,同时介绍MyBatis Plus常用API,助力高效开发。
02-Activiti工程搭建
本教程介绍如何在Idea中创建Maven工程并安装ActiBPM插件,包含插件下载、版本兼容性修复、手动修改JAR配置及验证安装等步骤,同时引入Activiti相关依赖,完成Spring Boot项目集成流程引擎的初步搭建。
[Blog]SpringBootExcel导入(☆☆☆)
本任务要求实现博客系统的Excel导入功能,掌握SpringBoot、MySQL、Maven及EasyExcel/POI技术。预计AI辅助1小时,手动4小时。需自主分析需求,结合教程或AI完成,培养独立开发能力。
SpringCloud Alibaba诞生
阿里基于Spring Cloud打造Alibaba生态,推出Nacos、Sentinel、Seata等核心组件,覆盖服务发现、配置管理、流量控制与分布式事务,形成完整微服务解决方案,获Spring官方认可,推动Spring Cloud在企业级场景高效落地。
1.自定义认证前端页面
本文介绍Spring Security前后端整合配置:前端提供login.html登录页面,后端通过HelloController定义接口,SecurityConfig配置类实现表单登录认证,包括登录页、参数名、成功失败跳转等,并禁用CSRF。启动后访问/demo/index可验证登录拦截与跳转功能。
OAuth2.0实战案例
本教程介绍OAuth2四大授权模式实现:创建父工程及资源、授权模块,配置启动类与处理器;通过授权码、简化、密码及客户端模式测试,完成登录认证、权限授予、令牌申请与资源访问全流程,实现安全的分布式系统授权。
StringUtil
Java中字符串变量最大长度为Integer.MAX_VALUE,但字符串字面量受限于常量池,最大仅65534。超长字符串无法直接使用字面量接收,否则编译报错。解决方案:通过StringBuilder分段处理,将超长字符串拆分为多段拼接,避免超出限制,适用于HTTP、RPC等场景的数据接收与处理。
RememberMe简介及用法
RememberMe功能实现用户关闭浏览器后仍保持登录状态,非简单保存账号密码。通过Cookie存储令牌,服务端校验身份,避免重复登录。勾选“记住我”后,响应头生成remember-me Cookie,后续请求自动携带。但令牌泄露存在安全风险,可结合数据库持久化Token并增加二次校验,提升安全性。
【性能优化】拒绝性能瓶颈!数据库连接池配置详解与调优实战
本文深入讲解数据库连接池核心原理与调优技巧,涵盖HikariCP和Druid配置要点,解析四大关键参数、黄金连接数公式及Druid监控功能,助你科学设置连接池,避免性能瓶颈。
【技术选型】MongoDB vs MySQL:一场没有输家的“双雄对决”
本文深入对比MySQL与MongoDB的核心差异,从理念、性能到实战场景。MySQL严谨规范,适合高一致性业务;MongoDB灵活高效,契合多变需求。通过电商案例解析,揭示两者互补而非替代的关系,帮助开发者按场景选型,实现技术价值最大化。
【SQL优化】不再抓瞎!手把手教你读懂MySQL Explain执行计划
本文详解MySQL执行计划工具EXPLAIN,教你读懂其输出的“天书”表格。重点掌握四个核心指标:`type`(访问类型)、`key`(实际使用索引)、`Extra`(额外信息)和`rows`(扫描行数)。通过实战案例解析慢查询成因与优化方案,助你快速定位SQL性能瓶颈,写出高效数据库查询。
【数据库基础】转账100块怎么丢了?通俗讲解数据库事务ACID特性
本文深入浅出地讲解数据库事务的ACID四大特性。以转账场景为例,介绍事务“要么全成功,要么全失败”的核心思想。详解原子性(Undo Log回滚)、一致性(数据守恒)、隔离性(并发控制)与持久性(Redo Log保障),助你理解数据库可靠性的基石。
认识SpringSecurity
Spring Security 是基于过滤器链的全面安全框架,支持多种认证方式(如OAuth2、JWT等)与细粒度授权控制,具备强大且灵活的安全防护能力。
【数据库进阶】为什么你的SQL查询这么慢?索引失效的7个常见场景
本文总结MySQL索引失效的7大常见场景:模糊查询以%开头、索引列参与计算或函数、隐式类型转换、违背最左前缀法则、OR条件使用不当、不等号查询及全表扫描风险,并结合EXPLAIN工具教你如何诊断与优化,提升查询性能。
【数据库核心】MySQL架构解密:一文读懂InnoDB存储引擎
本文深入解析InnoDB存储引擎架构,对比MyISAM差异,涵盖事务、行锁、外键、缓冲池、Redo Log及聚集索引等核心机制,助你掌握MySQL高性能原理与调优关键。
认证源码分析与自定义后端认证逻辑
本文深入分析Spring Security认证流程,从UsernamePasswordAuthenticationFilter切入,详解AuthenticationManager、ProviderManager及AbstractUserDetailsAuthenticationProvider的认证机制,最终实现自定义UserDetailsService,完成基于数据库的用户认证逻辑。
整合Logback,滚动记录+多文件
`logback-spring.xml` 配置了多模块日志分离输出,按类别将支付、任务、SQL、错误等日志写入不同文件,支持滚动策略与UTF-8编码。通过 `LogProxy.getLogger("LOG_NAME")` 获取指定日志器,实现精准日志记录,便于问题追踪与系统监控。(236字符)
SpringBoot使用汇总
Spring Boot是Spring框架的延伸,旨在简化Spring应用的初始搭建与开发过程。它通过自动配置、内嵌服务器、开箱即用的依赖等方式,极大减少了项目配置和编码量,提升开发效率。支持快速构建微服务,是Java EE开发的主流趋势。
WebService
基于 Apache CXF 实现的 Dubbo WebService 协议,支持与标准 WebService 互操作,可用于跨语言系统集成。支持多连接、短连接、HTTP 同步传输,SOAP 文本序列化。需实现 Serializable,推荐使用基本类型和 POJO。支持 Jetty 和 Servlet 容器,可配置多端口、直连及 WSDL 访问。
异步消息组件MQ基础
本课程学习MQ应用场景及RabbitMQ入门使用,掌握同步与异步调用区别,理解消息队列的解耦、异步处理与流量削峰作用,熟悉RabbitMQ的安装配置、收发消息、工作模型及交换机类型(Fanout、Direct、Topic),并能应用于商城项目中解决消息堆积等问题。
1.集群容错架构设计
本文深入剖析Dubbo集群容错机制,围绕Directory、Router、LoadBalance三大核心组件,结合源码与执行时序图,逐步解析服务调用过程中的Invoker获取、路由筛选与负载均衡决策,帮助读者清晰理解Dubbo高可用架构的设计精髓。
什么是RESTful
RESTful是一种面向资源的API设计规范,通过统一标准实现接口的清晰化与标准化。它将系统中的数据抽象为“资源”,用唯一URI标识,结合HTTP动词(GET/POST/PUT/DELETE)对资源进行操作,避免在路径中使用动词,提升可读性与一致性。相比传统接口,RESTful结构清晰、易于理解与扩展,有效解决接口行为不统一、维护困难等问题,是现代Web API设计的最佳实践之一。(238字)
数据库
数据库领域前沿技术分享与交流