概述
一、流程图解
二、相关数据表
tig_user–用户表
Uid 主键,自增
User_id 用户名(格式:用户注册账号@服务器域名)
Sha1_user_id 经过MD5加密后密码
User_pw 明文密码
Acc_create_time 注册时间(默认表数据插入时间)
Last_login 用户最近登录时间(默认0000-00-00 00:00:00)
Last_logout 用户最近退出登录时间(默认0000-00-00 00:00:00)
Online_status 用户上线次数(默认0)
Failed_logins 该用户账号登录失败次数(默认0)
Account_status 账号状态(1.正常 2.禁用(首次注册无密码,该账号就被置为禁用态)) (默认1)
tig_nodes–节点信息表
Nid 主键,自增,节点id
Parent_nid 父节点id
Uid 用户id,是tig_user表中uid的外键
Node 节点类型,可以自定义节点名称
Tig_pairs–用户节点信息表
Pid 主键,自增
Nid 节点id,是tig_nodes表中nid的外键
Uid 用户id,是tig_user表中uid的外键
Pkey 键
Pval 值,以xml格式存储
tig_pairs以(key,value)的形式存储节点的具体数据,例如上表中,
第4,5行,对应tig_nodes中的root节点,存储该用户的好友列表
第6行,对应tig_nodes中的last-start节点,记录该用户上次登录时间
三、源代码分析
A.注册账号检测
接口:
实现类:
注册方法:
注册参数说明:
BareJID对象:
BareJID对象内封装了4个参数:
domain:服务器域名
localpart:账号名
to_string:账号名@服务器域名
hashcode:根据hash算法生成的int类型的一串数字
String password:
用户注册密码(明文)
下一步:
调用存储过程:
1.调用TigAddUserPlanPw存储过程
经过TigAddUserPlanPw存储过程处理(when:哪些字段经过MD5加密,then:返还不同的结果),返回一个add_user字符串,该字符串包含user_id和user_pw
2.调用TigGetDBProperty存储过程
TigAddUserPlanPw存储过程中,调用了TigGetDBProperty存储过程,作用是查询出用户,对应节点下存储的信息(xml格式),再回来执行TigAddUserPlanPw存储过程。
验证失败:(账号已存在……),捕捉异常
B.验证通过,进入下一步,调用AuthRepository接口:
AuthRepository接口实现类AuthRepositoryMDImpl:
进入到addUser方法:
该方法是去查询该服务器中,是否有该用户的信息(单服务器忽略)
C.进入下一步:授权注册
最后
以上就是明亮心情为你收集整理的Tigase注册流程总结的全部内容,希望文章能够帮你解决Tigase注册流程总结所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复