2021SC@SDUSC
DophinScheduler dao模块下实体代码详情分析
AccessToken 安全令牌实体:
![]()
1.首先文档导入了com.baomidou.mybatisplus.annotation.包中的四个类,分别是IdType、TableField、TableId、TableName。这四个类提供了返回对应类型数据的方法。

* 其中mybatisplus是一个 MyBatis 的增强工具,在MyBatis的基础上做了一些增强,包括使用起来非常简便的条件构造器、分页插件、SERVICE和MAPPER层的CRUD接口定义,当然还有一些别的扩展插件。用来操作数据库。
然后引入了util包中的data日期类。
![]()
2.映射数据库表t_ds_access_token
![]()
定义类AccessToken
![]()
类的数据成员有:
id 作为主键

其中@TableId设置主键映射,value 映射主键字段名id,type 设置主键类型,主键的生成策略 IdType.AUTO,默认就是数据库自增,开发者无需赋值。
访问用户id,string类型的令牌token


其中@TableField映射非主键字段,value 映射字段名
Data类型的到期时间expireTime、创建时间createTime、更新时间updateTime



一个string类型userName存放用户名
![]()
3.定义了获取和设置所有数据成员的get*()、set*()的函数,例:

定义了返回一个bool值的比较相等的函数

还定义了一个哈希编码的函数

编码规则为result=(((id*31+userId)*31+userName)*31+token)*31+.....
还有一个输出所有数据成员作为一个字符串的函数

输出结果为 AccessToken{id=...,userId=...,token=...\userName=...\expireTime=...,createTime=...,updateTime=...}
与此实体内容类似的有:
Alert实体 ![]()
AlertGroup实体 ![]()
CommandCount实体![]()
DefinitionGroupByUser实体
等等
本文详细分析了DolphinScheduler DAO模块中的AccessToken实体,讲解了其与MyBatisPlus的集成,如@TableId和@TableField的使用,以及数据成员包括id、token、expireTime、createTime、updateTime和userName的定义。此外,还介绍了AccessToken类中的equals()、hashCode()和toString()方法。
493

被折叠的 条评论
为什么被折叠?



