- 博客(24)
- 收藏
- 关注
原创 041-若依pro(ruoyi-vue-pro)幂等性(防重复提交)
yudao-spring-boot-starter-protection 技术组件,由它的 idempotent 包,提供声明式的幂等特性,可防止重复请求。例如说,用户快速的双击了某个按钮,前端没有禁用该按钮,导致发送了两次重复的请求。
2023-09-19 22:32:09
661
原创 040-若依pro(ruoyi-vue-pro)分布式锁
yudao-spring-boot-starter-protection 技术组件,使用 Redis 实现分布式锁的功能,它有 2 种使用方式:编程式锁:基于 Redisson 框架提供的各种 分布式锁声明式锁:基于 Lock4j 框架的 @Lock4j 注解。
2023-09-19 22:00:48
724
原创 032-若依pro(ruoyi-vue-pro)异步任务
yudao-spring-boot-starter-job 除了提供定时任务的功能,还提供了 Async 异步任务的能力。
2023-09-19 21:23:36
606
原创 031-若依pro(ruoyi-vue-pro)Redis 缓存
编程式缓存:基于 Spring Data Redis 框架的 RedisTemplate 操作模板声明式缓存:基于 Spring Cache 框架的 @Cacheable 等等注解。
2023-09-18 23:13:55
1203
原创 030-若依pro(ruoyi-vue-pro)多数据源(读写分离)
③ 使用 Dynamic Datasource 提供的 @DSTransactional (opens new window)注解,支持多数据源的切换,不提供绝对可靠的多数据源的事务一致性(强于 ① 弱于 ②),可学习 《DSTransactional 实现源码分析 》 (opens new window)文章。在方法上添加 @Master (opens new window)注解,使用名字为 master 的数据源,即使用【主】库,一般适合【写】场景。
2023-09-18 22:30:31
1467
原创 029-若依pro(ruoyi-vue-pro)MyBatis 联表&分页查询
对于需要链表查询的场景,建议也是写 MyBatis XML,使用方法比较简单,可以看下 《MyBatis学习总结(三)—— 多表关联查询与动态 SQL》 (opens new window)文章。一般情况下,建议采用方案二:MyBatis Plus XML,因为它开发效率更高,并且在分页数量为 0 时,就不多余查询分页的列表,一定程度上可以提升性能。① 创建 AdminUserDetailDO 类,继承 AdminUserDO 类,并添加 dept 部门。
2023-09-18 22:29:43
2211
原创 028-若依pro(ruoyi-vue-pro)MyBatis 数据库
继承 MyBatis Plus 的条件构造器,拓展了 LambdaQueryWrapperX (opens new window)和 QueryWrapperX (opens new window)类,主要是增加 xxxIfPresent 方法,用于判断值不存在的时候,不要拼接到条件中。另外,如果你后续要拓展自定义的 TypeHandler 实现,可以添加到 cn.iocoder.yudao.framework.mybatis.core.type (opens new window)包下。
2023-09-18 22:29:00
1617
原创 027-若依pro(ruoyi-vue-pro)的系统日志
模块yudao-spring-boot-starter-biz-operatelog。配合 丝袜哥 的注解来使用的, 根据 PUT POST 等来做的。
2023-09-18 22:22:04
485
原创 015-若依pro(ruoyi-vue-pro)的OAuth 2.0(SSO 单点登录)未学习
② 绿色的“内部登录”:管理后台的登录接口,还是采用传统的 /admin-api/system/auth/login (opens new window)账号密码登录,并没有使用【密码模式】,主要考虑降低大家的学习成本,如果没有将用户授权给其它系统的情况下,这样做已经可以很好的满足业务的需要。而接入方的后端,使用接收到的 code 授权码,通过调用 ruoyi-vue-pro 项目的后端,获取到 accessToken 访问令牌,并最终返回给接入方的前端。
2023-09-14 22:02:19
4580
3
原创 014-若依pro(ruoyi-vue-pro)的三方登录[未学习]
此时,会调用 /admin-api/system/auth/social-login (opens new window)接口,尝试「快捷登录」。此时,会调用 /admin-api/system/auth/social-auth-redirect (opens new window)接口,获得第三方平台的登录地址,并进行跳转。此时,会调用 /admin-api/system/auth/social-auth-redirect (opens new window)接口,获得第三方平台的登录地址,并进行跳转。
2023-09-14 22:00:35
945
1
原创 013-若依pro(ruoyi-vue-pro)的用户体系
AdminUser 管理员用户,前端访问 yudao-ui-admin (opens new window)管理后台,后端访问 /admin-api/** RESTful API 接口。MemberUser 会员用户,前端访问 yudao-ui-user (opens new window)用户 App,后端访问 /app-api/**RESTful API 接口。
2023-09-14 21:56:25
786
1
原创 012-若依pro(ruoyi-vue-pro)的数据权限学习
每次对数据库操作时, 自动拼接 WHERE data_column =?条件来进行数据的过滤。但是要处理的逻辑比较复杂, 涉及到复杂sql语句, 比如join, 子查询, with语句等等。#processSelect(…) 方法:处理 SELECT 语句的 WHERE 条件。#processUpdate(…) 方法:处理 UPDATE 语句的 WHERE 条件。#processDelete(…) 方法:处理 DELETE 语句的 WHERE 条件。部门领导可以看整个部门。普通员工只能看自己的。
2023-09-12 23:06:03
619
1
原创 011-若依pro(ruoyi-vue-pro)的功能权限RBAC学习
AuthorizeRequestsCustomizer的实现比如各个module里的XxxSecurityConfiguration的配置的bean, return new AuthorizeRequestsCustomizer(), 重写customize方法可以看cn.iocoder.yudao.module.infra.framework.security.config.SecurityConfiguration#authorizeRequestsCustomizer方法@Override。
2023-09-05 22:34:23
2138
1
原创 010-若依pro(ruoyi-vue-pro)的security 模块学习
config: 用来配置安全相关的权限等core: 一些安全的业务逻辑META-INF: 配置spring的自动import类学习流程org.springframework.boot.autoconfigure.AutoConfiguration.imports 知道自动导包的类cn.iocoder.yudao.framework.security.config.YudaoSecurityAutoConfiguration 这个看注释, 知道有什么类被注入。
2023-09-03 22:23:43
1168
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人