- 博客(112)
- 收藏
- 关注
原创 【SpringSecurity】SpringSecurity安全框架 Token置换 双Token机制
从 JWT 的全称可以看出,JWT 本身也是 Token,一种规范化之后的 JSON 结构的 Token。并且, 使用 JWT 认证可以有效避免 CSRF 攻击,因为 JWT 一般是存在在 localStorage 中,使用 JWT 进行身份验证的过程中是不会涉及到 Cookie 的。这显然增加了系统的可用性和伸缩性,大大减轻了服务端的压力。访问令牌用于用户每次请求受保护资源时,进行身份验证的操作,通常直接包含在 api 请求头或者是 URL 地址参数之中,用于证明客户端其实是有权限去访问特定的资源的。
2025-01-15 17:15:00
749
原创 【SpringSecurity】SpringSecurity安全框架认证流程
文章目录SpringSecurity安全框架认证流程原理及准备工作FastJsonRedisSerializer:Redis 使用 FastJson 序列化RedisConfig:Redis 工具类ResultJSON:结果返回类JwtUti:JWT 工具类RedisCache:Redis 缓存WebUtils:Web工具类核心逻辑密码加密存储登录接口认证过滤器退出登录SpringSecurity安全框架认证流程通常情况下,用户通过提交用户名和密码来进行认证。 UsernamePasswordAuth
2025-01-15 16:45:00
1095
原创 【SpringSecurity】SpringSecurity安全框架授权
所以我们在项目中只需要把当前登录用户的权限信息也存入 Authentication,然后设置我们的资源所需要的权限即可。写 UserDetailsServiceImzho 中,在查询出用户后还要获取对应的权限信息,封装到 UserDetails 中返回。在后台进行用户权限的判断,判断当前用户是否有相应的权限,必须具有所需权限才能进行相应的操作。修改 UserDetails 的实现类 LoginUser,让其能封装权限信息。基于角色的权限控制。把权限信息写死封装到 UserDetails 中进行测试。
2025-01-14 12:08:27
685
原创 【SpringSecurity】SpringSecurity安全框架登录校验流程与登录配置示例
跨站请求伪造(Cross-site request forgery)是一种对网站的恶意利用,也被称为 one-click attack 或者 session riding,通常缩写为 CSRF 或者 XSRF, 是一种挟制用户在当前已登录的Web应用程序上执行非本意的操作的攻击方法。适用于不需要与 Spring 框架集成的应用程序,或者对安全框架的轻量级有要求的场景。跟 XSS 相比,XSS 利用的是用户对指定网站的信任,CSRF 利用的是网站对用户网页浏览器的信任。随机生成的密码每次启动时都会变。
2025-01-14 11:57:57
978
原创 【Spring】Redis缓存+ehcache
基于Spring的Redis+ehcacheRedis 缓存配置@Cacheable 注解@CacheEvict 注解缓存配置
2025-01-08 16:25:09
1035
原创 【Spring】Mybatis缓存+ehcache
基础缓存:Mybatis一级缓存、二级缓存基于Spring的Mybatis缓存+ehcache注解:@Cacheable、@CachePut、@CacheEvict、@Caching
2025-01-08 16:23:08
1237
原创 【SpringBoot】日志处理-异常日志(Logback)
使用 Logback 作为日志框架时,可以通过配置文件来设置日志的输出格式、输出位置以及日志级别。以下是如何配置 Logback 以实现异常日志在控制台打印以及写入日志文件。可以直接使用 SLF4J(Simple Logging Facade for Java)的 API 来记录日志,Logback 会作为其实现。文件夹下,可以看到已经按照我们设定的命名规则生成了 log 文件。去到日志文件存储地址,已经生成了以日期为文件名的文件夹。日志文件存储地址为 D 盘的 logs 文件夹下。
2025-01-07 16:43:40
534
原创 【SpringBoot】日志处理-操作记录日志(AOP+自定义注解)
在Java开发中,常使用AOP(面向切面编程)结合自定义注解来实现操作记录日志并存储到数据库(用于在Controller层使用注解标注哪个方法需要增加日志)@interface:注解类,自定义注解@Target:用来说明该注解可以被声明在那些元素之前说明该注解只能被声明在一个类的方法前@Retention:用来说明该注解类的生命周期。注解保留在程序运行期间,此时可以通过反射获得定义在某个类上的所有注解。
2025-01-07 16:41:25
1072
原创 【Redis】万字整理 Redis 非关系型数据库的安装与操作
Redis 非关系型数据库的简介与安装、常用命令操作字符串、操作列表、操作集合、操作有序集合StringRedisTemplate 以及 Redis 工具类
2024-12-30 10:22:55
1483
原创 【SpringBoot】常用注解 配置文件加载顺序 全局异常
1、SpringBoot常用注解:配置类注解、属性源与绑定注解、组件扫描与注册注解、特定功能启用注解、2、配置文件加载顺序3、全局异常与自定义异常
2024-12-16 17:29:29
1159
原创 【SpringMVC】参数传递 重定向与转发 REST风格
Spring MVC 是 Spring 框架的一部分,专为构建 Web 应用程序而设计。遵循模型-视图-控制器(MVC)架构模式,这种模式有助于将应用程序的输入逻辑、业务逻辑和UI逻辑分离。
2024-12-05 14:39:29
1279
原创 【Spring】Spring整合Mybatis项目 Mybatis+Spring
之前使用mybatis整合了javaweb的smbms项目,现在将mybatis项目与spring整合。
2024-12-03 09:55:03
897
原创 【Spring】介绍一下 Spring 的 xml 标签以及 Bean 的常用配置
介绍一下 Spring 的 xml 标签以及 Bean 的常用配置
2024-12-02 17:15:51
1035
原创 【Spring】一文看懂IoC&DI--控制反转&依赖注入
Spring 框架最初由Rod Johnson编写,并于2003年6月首次在Apache 2.0许可下发布。Rod Johnson在其著作《Expert One-on-One J2EE Design and Development》中阐述了Spring框架的设计理念,即简化企业级Java应用的开发。特点:Spring 框架被称为轻量级,主要是因为它具有较小的内存占用和启动时间。基础版本的Spring框架确实非常小,这使得它在资源有限的环境中也能高效运行。三大核心容器Beans。
2024-12-02 09:13:20
838
原创 【Mybatis】@Param注解 resultMap手动映射
- `association` 用于处理一对一的关系映射,可以嵌套另一个`resultMap`来进一步细化映射规则。`javaType` 指定了集合中元素的类型。- `collection` 用于处理一对多的关系映射,同样支持嵌套`resultMap`以定义子元素的映射规则。`ofType` 指定了集合中元素的类型。- `resultType`:自动映射。查询结果直接映射到一个简单的 Java 对象(POJO)- `resultMap`:手动映射。更复杂的映射逻辑,比如处理一对一、一对多的关系映射,或
2024-11-22 14:57:20
1180
原创 【MyBatis】全局配置文件—mybatis.xml 创建xml模板
本文介绍了如何创建一个mybatis全局配置文件的模板并简要介绍了全局文件的配置元素。
2024-11-22 14:54:18
1075
原创 【Mybatis】ORM对象关系映射框架Mybatis开发步骤
MyBatis 的前身是 iBatis。iBatis 是由 Clinton Begin 创建的一个开源项目,最初是在 Apache Software Foundation 下进行的。iBatis简化了 Java 应用程序与数据库之间的交互,MyBatis 保留了 iBatis 的核心特性,比如 SQL 映射文件、动态 SQL 和缓存机制等,同时也引入了一些新的特性和改进,比如增强了对动态 SQL 的支持、提供了更多的配置选项以及更好的性能优化等。
2024-11-21 14:43:30
987
原创 【Maven】IDEA创建Maven项目 Maven配置
Maven 是一个非常流行的项目管理和构建自动化工具,主要应用于 Java 项目的构建、依赖管理和项目信息管理。它是由 Apache 软件基金会维护的开源项目。Maven 的设计理念是通过一个项目对象模型(Project Object Model, POM)来描述项目,并使用声明式的方式定义构建过程。
2024-11-21 14:38:01
1793
1
原创 【Java Web】Log4j介绍
Log4j 是一个非常流行的开源 Java 日志框架,由 Apache Software Foundation 开发。它允许开发者在应用程序中插入日志记录语句,这些语句可以输出到多个目的地,比如控制台、文件、数据库等。Log4j 提供了灵活的日志记录机制,可以通过配置文件轻松地控制日志的格式、级别和目标。
2024-11-16 17:15:00
1061
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人