diff --git a/pom.xml b/pom.xml index 974baeb..a5391f0 100644 --- a/pom.xml +++ b/pom.xml @@ -55,16 +55,21 @@ cn.dev33 - sa-token-spring-boot-starter + sa-token-spring-boot3-starter 1.37.0 + cn.dev33 sa-token-redis-jackson 1.37.0 + + org.springframework.boot + spring-boot-starter-actuator + diff --git a/src/main/java/org/aohe/ssotoken/config/RedisConfig.java b/src/main/java/org/aohe/ssotoken/config/RedisConfig.java new file mode 100644 index 0000000..0275a6e --- /dev/null +++ b/src/main/java/org/aohe/ssotoken/config/RedisConfig.java @@ -0,0 +1,22 @@ +package org.aohe.ssotoken.config; + +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.data.redis.connection.RedisConnectionFactory; +import org.springframework.data.redis.core.RedisTemplate; +import org.springframework.data.redis.serializer.GenericJackson2JsonRedisSerializer; +import org.springframework.data.redis.serializer.StringRedisSerializer; + +@Configuration +public class RedisConfig { + + @Bean + public RedisTemplate redisTemplate(RedisConnectionFactory connectionFactory) { + RedisTemplate template = new RedisTemplate<>(); + template.setConnectionFactory(connectionFactory); + template.setKeySerializer(new StringRedisSerializer()); + template.setValueSerializer(new GenericJackson2JsonRedisSerializer()); + return template; + } +} + diff --git a/src/main/java/org/aohe/ssotoken/controller/LoginController.java b/src/main/java/org/aohe/ssotoken/controller/LoginController.java new file mode 100644 index 0000000..d88c9e5 --- /dev/null +++ b/src/main/java/org/aohe/ssotoken/controller/LoginController.java @@ -0,0 +1,17 @@ +package org.aohe.ssotoken.controller; + +import cn.dev33.satoken.stp.StpUtil; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +@RequestMapping("api") +@RestController +public class LoginController { + + @PostMapping("login") + public String login(String username, String password){ + StpUtil.login(username); + return "success"; + } +} diff --git a/src/main/java/org/aohe/ssotoken/controller/RedisController.java b/src/main/java/org/aohe/ssotoken/controller/RedisController.java index 9f4027e..d1fe6af 100644 --- a/src/main/java/org/aohe/ssotoken/controller/RedisController.java +++ b/src/main/java/org/aohe/ssotoken/controller/RedisController.java @@ -1,6 +1,7 @@ package org.aohe.ssotoken.controller; import org.aohe.ssotoken.utils.RedisUtil; +import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; @@ -13,20 +14,20 @@ public class RedisController { public RedisController(RedisUtil redisUtil) { this.redisUtil = redisUtil; } - - @RequestMapping("add") - public String addKey(String key, String value) { - redisUtil.set(key, value, 60); + + @PostMapping("add") + public String addKey(String key, String value, Long time) { + redisUtil.set(key, value, time); return "success"; } - @RequestMapping("get") + @PostMapping("get") public String getKey(String key) { redisUtil.get(key); return "success"; } - @RequestMapping("del") + @PostMapping("del") public String delKey(String key) { redisUtil.del(key); return "success"; diff --git a/src/main/java/org/aohe/ssotoken/entity/UserDO.java b/src/main/java/org/aohe/ssotoken/entity/UserDO.java new file mode 100644 index 0000000..f4e35e8 --- /dev/null +++ b/src/main/java/org/aohe/ssotoken/entity/UserDO.java @@ -0,0 +1,108 @@ +package org.aohe.ssotoken.entity; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import java.util.Date; +import lombok.Data; + +/** + * + * @TableName t_user + */ +@TableName(value ="t_user") +@Data +public class UserDO implements Serializable { + /** + * 自增主键 + */ + @TableId + private Integer id; + + /** + * 姓名 + */ + private String name; + + /** + * 密码 + */ + private String password; + + /** + * 创建人 + */ + private String createdBy; + + /** + * 创建时间 + */ + private Date createdTime; + + /** + * 更新人 + */ + private String updatedBy; + + /** + * 更新时间 + */ + private Date updatedTime; + + @TableField(exist = false) + private static final long serialVersionUID = 1L; + + @Override + public boolean equals(Object that) { + if (this == that) { + return true; + } + if (that == null) { + return false; + } + if (getClass() != that.getClass()) { + return false; + } + UserDO other = (UserDO) that; + return (this.getId() == null ? other.getId() == null : this.getId().equals(other.getId())) + && (this.getName() == null ? other.getName() == null : this.getName().equals(other.getName())) + && (this.getPassword() == null ? other.getPassword() == null : this.getPassword().equals(other.getPassword())) + && (this.getCreatedBy() == null ? other.getCreatedBy() == null : this.getCreatedBy().equals(other.getCreatedBy())) + && (this.getCreatedTime() == null ? other.getCreatedTime() == null : this.getCreatedTime().equals(other.getCreatedTime())) + && (this.getUpdatedBy() == null ? other.getUpdatedBy() == null : this.getUpdatedBy().equals(other.getUpdatedBy())) + && (this.getUpdatedTime() == null ? other.getUpdatedTime() == null : this.getUpdatedTime().equals(other.getUpdatedTime())); + } + + @Override + public int hashCode() { + final int prime = 31; + int result = 1; + result = prime * result + ((getId() == null) ? 0 : getId().hashCode()); + result = prime * result + ((getName() == null) ? 0 : getName().hashCode()); + result = prime * result + ((getPassword() == null) ? 0 : getPassword().hashCode()); + result = prime * result + ((getCreatedBy() == null) ? 0 : getCreatedBy().hashCode()); + result = prime * result + ((getCreatedTime() == null) ? 0 : getCreatedTime().hashCode()); + result = prime * result + ((getUpdatedBy() == null) ? 0 : getUpdatedBy().hashCode()); + result = prime * result + ((getUpdatedTime() == null) ? 0 : getUpdatedTime().hashCode()); + return result; + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append(getClass().getSimpleName()); + sb.append(" ["); + sb.append("Hash = ").append(hashCode()); + sb.append(", id=").append(id); + sb.append(", name=").append(name); + sb.append(", password=").append(password); + sb.append(", createdBy=").append(createdBy); + sb.append(", createdTime=").append(createdTime); + sb.append(", updatedBy=").append(updatedBy); + sb.append(", updatedTime=").append(updatedTime); + sb.append(", serialVersionUID=").append(serialVersionUID); + sb.append("]"); + return sb.toString(); + } +} \ No newline at end of file diff --git a/src/main/java/org/aohe/ssotoken/mapper/UserDOMapper.java b/src/main/java/org/aohe/ssotoken/mapper/UserDOMapper.java new file mode 100644 index 0000000..6dd520d --- /dev/null +++ b/src/main/java/org/aohe/ssotoken/mapper/UserDOMapper.java @@ -0,0 +1,12 @@ +package org.aohe.ssotoken.mapper; + +import org.aohe.ssotoken.entity.UserDO; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +public interface UserDOMapper extends BaseMapper { + +} + + + + diff --git a/src/main/java/org/aohe/ssotoken/service/LoginService.java b/src/main/java/org/aohe/ssotoken/service/LoginService.java new file mode 100644 index 0000000..5b56a52 --- /dev/null +++ b/src/main/java/org/aohe/ssotoken/service/LoginService.java @@ -0,0 +1,4 @@ +package org.aohe.ssotoken.service; + +public class LoginService { +} diff --git a/src/main/java/org/aohe/ssotoken/service/UserService.java b/src/main/java/org/aohe/ssotoken/service/UserService.java new file mode 100644 index 0000000..6cbda81 --- /dev/null +++ b/src/main/java/org/aohe/ssotoken/service/UserService.java @@ -0,0 +1,17 @@ +package org.aohe.ssotoken.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.aohe.ssotoken.entity.UserDO; +import org.aohe.ssotoken.mapper.UserDOMapper; +import org.springframework.stereotype.Service; + +@Service +public class UserService extends ServiceImpl + implements IService { + +} + + + + diff --git a/src/main/resources/mapper/UserDOMapper.xml b/src/main/resources/mapper/UserDOMapper.xml new file mode 100644 index 0000000..5bb812c --- /dev/null +++ b/src/main/resources/mapper/UserDOMapper.xml @@ -0,0 +1,22 @@ + + + + + + + + + + + + + + + + id,name,password, + created_by,created_time,updated_by, + updated_time + +