学习淘淘商城第八十五课(单点登录用户注册--Service层)
来源:互联网 发布:2016淘宝卖家避开同款 编辑:程序博客网 时间:2024/06/17 00:54
首先我们还是看关于单点登录手册中关于注册的说明,如下图所示。请求方式是POST类型,URL为我们明确指定好了,参数有四个,需要校验完合法性之后再提交。
下面我们先在taotao-sso-interface工程添加注册接口,如下图所示
接口内容如下:
//注册TaotaoResult register(TbUser tbUser);下面实现接口, UserServiceImpl.java类所有代码如下:
package com.taotao.sso.service.impl;import java.util.Date;import java.util.List;import org.apache.commons.lang3.StringUtils;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.stereotype.Service;import org.springframework.util.DigestUtils;import com.taotao.common.pojo.TaotaoResult;import com.taotao.mapper.TbUserMapper;import com.taotao.pojo.TbUser;import com.taotao.pojo.TbUserExample;import com.taotao.pojo.TbUserExample.Criteria;import com.taotao.sso.service.UserService;@Servicepublic class UserServiceImpl implements UserService {@Autowiredprivate TbUserMapper tbUserMapper;@Overridepublic TaotaoResult checkUserData(String data, int type) {//设置查询条件TbUserExample example = new TbUserExample();Criteria criteria = example.createCriteria();//1.判断用户名是否可用if(type == 1){criteria.andUsernameEqualTo(data);} else if(type == 2){//2.判断电话是否可用criteria.andPhoneEqualTo(data);} else if(type == 3){//3.判断邮箱是否可用criteria.andEmailEqualTo(data);} else {return TaotaoResult.build(400, "所传参数非法!");}List<TbUser> list = tbUserMapper.selectByExample(example);if(list != null && list.size() > 0){return TaotaoResult.ok(false);} return TaotaoResult.ok(true);}@Overridepublic TaotaoResult register(TbUser tbUser) {//检查数据有效性if(StringUtils.isBlank(tbUser.getUsername())){return TaotaoResult.build(400, "用户名不能为空!");}TaotaoResult taotaoResult = checkUserData(tbUser.getUsername(), 1);if(!(Boolean)taotaoResult.getData()){return TaotaoResult.build(400, "用户名不能重复!");}if(StringUtils.isBlank(tbUser.getPassword())){return TaotaoResult.build(400, "密码不能为空!");}if(StringUtils.isNotBlank(tbUser.getPhone())){//如果电话不为空,那么接着判断是否重复,电话是不能重复的taotaoResult = checkUserData(tbUser.getPhone(), 2);if(!(Boolean)taotaoResult.getData()){return TaotaoResult.build(400, "电话不能重复!");}}if(StringUtils.isNotBlank(tbUser.getEmail())){//如果邮箱不为空,那么接着判断是否重复,邮箱也是不能重复的taotaoResult = checkUserData(tbUser.getEmail(), 3);if(!(Boolean)taotaoResult.getData()){return TaotaoResult.build(400, "邮箱不能重复!");}}//填充属性tbUser.setCreated(new Date());tbUser.setUpdated(new Date());//密码要进行Md5加密,我们不用添加额外的jar包,只需要使用Spring自带的包就可以了String md5Str = DigestUtils.md5DigestAsHex(tbUser.getPassword().getBytes());tbUser.setPassword(md5Str);//添加tbUserMapper.insert(tbUser);return TaotaoResult.ok();}}
阅读全文
0 0
- 学习淘淘商城第八十五课(单点登录用户注册--Service层)
- 学习淘淘商城第八十六课(单点登录用户注册Controller层实现及测试)
- 学习淘淘商城第八十七课(单点登录用户登录流程分析及用户登录Service层)
- 学习淘淘商城第八十八课(单点登录用户登录--Controller层及测试)
- 学习淘淘商城第八十三课(单点登录接口文档分析及Service层接口开发并发布)
- 学习淘淘商城第八十四课(单点登录检查数据是否可用---Controller层及测试)
- 学习淘淘商城第八十九课(单点登录之通过token获取用户信息)
- 学习淘淘商城第九十一课(单点登录、注册页面展示)
- 淘淘商城系列——单点登录之用户注册
- 淘淘商城系列——单点登录之用户注册页面实现
- 学习淘淘商城第九十课(单点登录之安全退出)
- 学习淘淘商城第八课(SSM框架整合之Dao层整合)
- 淘淘商城系列——单点登录之用户登录
- 学习淘淘商城第九课(SSM框架整合之Service层整合)
- 学习淘淘商城第四十二课(导入商品数据-service层)
- 学习淘淘商城第三十五课(Solr的安装)
- 学习淘淘商城第五十五课(ActiveMQ的安装)
- 学习淘淘商城第九十二课(用户注册页面实现)
- excel相关函数
- 解决VBS文件双击不能运行的问题
- JQuery动画效果
- 用jericho jar包来解析HTML页面示例
- scrapy+spynner获取ajax中的内容(以微信公众号为例)
- 学习淘淘商城第八十五课(单点登录用户注册--Service层)
- 关于JNDI浅谈(tomcat为例)
- C语言以数据块的形式读写文件
- C#172课的主要内容
- butterknife 黄油刀 学习记录
- leetcode 7 Reverse Integer golang实现
- 终于要长大了吗?是的,你毕业了。
- PHP中赋值运算符.=的使用方法与技巧
- Live555服务端与客户端的交互解析