sa-token-spring-boot-starter 1.28 集成redis没
时间: 2023-09-03 13:08:22 浏览: 192
sa-token-spring-boot-starter 1.28 已经集成了 Redis,您可以在配置文件中配置 Redis 的连接信息,以便使用 Redis 进行 Token 存储。以下是相关的配置示例:
```
# Redis 配置
spring.redis.host=127.0.0.1
spring.redis.port=6379
spring.redis.password=123456
```
在使用 Redis 进行 Token 存储时,需要在 SaTokenConfig 配置类中进行相应的配置,示例如下:
```java
@Configuration
public class SaTokenConfig {
@Autowired
private RedisConnectionFactory redisConnectionFactory;
@Bean
public SaTokenDao saTokenDao() {
return new SaTokenDaoRedis(redisConnectionFactory);
}
}
```
以上代码中,我们在 Sa-Token 配置类中创建了一个 SaTokenDaoRedis 对象,该对象使用了 RedisConnectionFactory 连接工厂,来创建 Redis 数据库连接。这样就可以使用 Redis 存储 Token 了。
相关问题
sa-token-spring-boot-starter
C知道:“sa-token-spring-boot-starter”是一个基于Spring Boot的SA-Token的快速集成启动器。SA-Token是一个轻量级的Java权限认证框架,用于在Java Web应用程序中实现身份验证和授权功能。通过使用这个启动器,你可以很方便地将SA-Token集成到你的Spring Boot项目中,简化了配置和集成的过程。你可以在CSDN等开发社区中找到更多关于它的详细文档和使用示例。
spring boot集成sa-token
集成 sa-token 可以让 Spring Boot 应用快速实现权限认证、RBAC、SSO、踢人下线等功能。下面是集成的步骤:
1. 引入 sa-token 的依赖
在 pom.xml 文件中添加以下依赖:
```xml
<dependency>
<groupId>cn.dev33.satoken</groupId>
<artifactId>sa-token-spring-boot-starter</artifactId>
<version>1.22.1-RELEASE</version>
</dependency>
```
2. 配置 sa-token
在 application.properties 或 application.yml 文件中添加以下配置:
```yaml
# sa-token 配置
sa-token:
# token 持久化类型:0-内存版、1-redis版、2-mongodb版、3-jwt版
store-type: 1
# redis 配置
redis:
mode: standalone
host: 127.0.0.1
port: 6379
database: 0
timeout: 0
# 其他配置...
```
其中,store-type 表示 sa-token 的持久化类型,可以选择内存版、redis版、mongodb版或 jwt 版。此处选择了 redis 版。
3. 开启 sa-token
在 Spring Boot 应用启动类上加上 @SaTokenApplication 注解即可开启 sa-token 的功能:
```java
@SpringBootApplication
@SaTokenApplication
public class MyApplication {
public static void main(String[] args) {
SpringApplication.run(MyApplication.class, args);
}
}
```
4. 使用 sa-token
现在,我们可以在代码中使用 sa-token 提供的 API 来实现权限认证、RBAC、SSO、踢人下线等功能了。比如:
```java
@RestController
public class MyController {
// 登录接口
@PostMapping("/login")
public String login(String account, String password) {
// 模拟登录
if ("admin".equals(account) && "123456".equals(password)) {
// 登录成功,生成token
String token = SaTokenManager.createToken(account);
// 返回token
return token;
} else {
// 登录失败
return "账号或密码错误";
}
}
// 需要登录才能访问的接口
@GetMapping("/user")
public String user() {
// 获取当前登录账号
String account = SaTokenManager.getAccount();
// 返回当前登录账号
return "当前登录账号:" + account;
}
// 需要权限才能访问的接口
@GetMapping("/admin")
public String admin() {
// 检查是否具有admin角色
boolean isAdmin = SaTokenManager.hasRole("admin");
if (isAdmin) {
return "欢迎管理员访问";
} else {
return "没有访问权限";
}
}
// 注销登录接口
@PostMapping("/logout")
public String logout() {
// 注销登录
SaTokenManager.logout();
return "注销成功";
}
}
```
以上是使用 sa-token 的基本示例,你可以根据自己的需求,使用 sa-token 提供的更多 API 实现更复杂的功能。
阅读全文