• Welcome to the world's largest Chinese hacker forum

    Welcome to the world's largest Chinese hacker forum, our forum registration is open! You can now register for technical communication with us, this is a free and open to the world of the BBS, we founded the purpose for the study of network security, please don't release business of black/grey, or on the BBS posts, to seek help hacker if violations, we will permanently frozen your IP and account, thank you for your cooperation. Hacker attack and defense cracking or network Security

    business please click here: Creation Security  From CNHACKTEAM

Recommended Posts

1.本案采用了环信提供的即时通信服务,并封装成春天的自动装配类

公共类更新模板{

私有EMService服务;

公共环信模板(环信地产属性){

EMP属性EMP属性=EMP属性。构建器()。setAppkey(properties.getAppkey())。设置clientid(属性。get clientid())。setClientSecret(属性。getclientsecret())。build();

service=新的em服务(EMP属性);

}

//创建环信用户

公共布尔createUser(字符串用户名,字符串密码){

尝试{

//创建环信用户

service.user().create(username.toLowerCase(),password)。block();

返回真实的

}catch(异常e) {

e。printstacktrace();

log.error('创建环信用户失败~');

}

返回错误的

}

//添加联系人

公共布尔addContact(字符串用户名1,字符串用户名2) {

尝试{

//创建环信用户

service.contact().添加(用户名1,用户名2)。block();

返回真实的

}catch(异常e) {

log.error('添加联系人失败~');

}

返回错误的

}

//删除联系人

公共布尔deleteContact(字符串用户名1,字符串用户名2) {

尝试{

//创建环信用户

service.contact().删除(用户名1,用户名2)。block();

返回真实的

}catch(异常e) {

log.error('删除联系人失败~');

}

返回错误的

}

//发送消息

公共布尔sendMsg(字符串用户名,字符串内容){

尝试{

//接收人用户列表

SetString set=collutil。新哈希表(用户名);

//文本消息

em文本消息message=新em文本消息().文字(内容);

//发送消息出发地:行政部门是管理员发送

service.message().发送('管理员','用户,

集合,消息,空)。block();

返回真实的

}catch(异常e) {

log.error('删除联系人失败~');

}

返回错误的

}

}

2.业务逻辑

2.1 新用户注册时,连接环形服务,注册环形账号

//注册环信用户

字符串hx用户=' hx '用户。getid();

boolean create=huanxintemplate。创建用户(hx用户、常量. INIT _密码);

如果(创建){

用户。sethxuser(hx用户);

user.setHxPassword(常量. INIT _密码);

userApi.update(用户);

}

2.2 老用户登录时,从关系型数据库数据库中拿到环信账号信息并登录环信服务器

@服务

公共类更新服务{

@DubboReference

私有用户Api用户Api

/**

* 查询当前用户的环信账号

* 1、获取用户id,根据账号规则拼接

* 2、获取用户id,查询用户对象

*/

public HuanXinUserVo find huanxinuser(){

long userId=用户持有者。获取userId();

用户用户=用户API。查找byid(userId);

if(user==null) {

返回空

}

返回新建HuanXinUserVo(用户。gethxuser()、用户。gethx password());

}

}

Link to comment
Share on other sites