Skip to content

steadon/sutils

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

39 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Sutils

License Maven Central

一个神奇的springboot项目工具包,目前包含注解式jwt及注解式方法测速工具。

使用

你可以通过maven导入以下依赖进而使用该工具:

<dependency>
    <groupId>io.github.steadon</groupId>
    <artifactId>sutils</artifactId>
    <version>3.0.1</version>
</dependency>

通过以下方式配置签名、有效时间和密钥:

  • sign:签发jwt所用的签名,默认值为root
  • keyStr:加密载荷所使用的密钥(16/24/32位字符),默认不加密
  • time:有效时间(单位:秒),支持除了括号运算符以外的二元表达式,默认15天
token:
  sign: wbrprivate
  key-str: secretkeyofmyaes
  time: 15 * 24 * 60 * 60

使用 @Token 注解标记需要放入载荷中的字段:

public class LoginParam {
    @Token
    private String username;
    @Token
    private String password;
}

初始化方式如下所示(支持自动注入):

@Autowired
private TokenUtils tokenUtils;

相关方法如下所示:

//创建LoginParam模拟登录传参
LoginParam loginParam=new LoginParam();
loginParam.setUsername("steadon");
loginParam.setPassword("123456");

//生成token
String token=tokenUtils.createToken(loginParam);
log.info("token: "+token);

//校验token
if(tokenUtils.checkToken(token))log.info("success");

//解析token
LoginParam param=tokenUtils.parseToken(token, LoginParam.class);
log.info("username: "+param.getUsername());
log.info("password: "+param.getPassword());

为加密载荷时同普通token无差别,启用加密后将会得到形如以下加密token:

{
  "token": "tFMPYVYxYkLoq2hGVE9AIw==:HMu0WvHyBDn56yjBATKvS/9dI4ljwqfTtvW2gzGuuFqlVrRGr4PQePhNbe5+Dh1Ii9flM2cjcqh9ITb3jmKuI7q7zJ5BhCPl/sjfNWcSDELi7X9SgVXJVLHIRQuDmB4SykAw09dgKbmpDATliuX5CXKtBt8bVS+fAtL3+p5CapoyG8SDjuz3Fwt6S7kVz+pc4yR6iU2E9IPuS1gRGUcelg=="
}

该工具持续更新中,请保持关注!你的star就是我的动力!

About

An amazing Spring Boot develop kit

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages