学习淘淘商城第八十五课(单点登录用户注册--Service层)
2017-06-07 22:57
447 查看
首先我们还是看关于单点登录手册中关于注册的说明,如下图所示。请求方式是POST类型,URL为我们明确指定好了,参数有四个,需要校验完合法性之后再提交。
下面我们先在taotao-sso-interface工程添加注册接口,如下图所示
接口内容如下:
下面我们先在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; @Service public class UserServiceImpl implements UserService { @Autowired private TbUserMapper tbUserMapper; @Override public 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); } @Override public 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(); } }
相关文章推荐
- 学习淘淘商城第八十六课(单点登录用户注册Controller层实现及测试)
- 学习淘淘商城第八十七课(单点登录用户登录流程分析及用户登录Service层)
- Android基于XMPP Smack Openfire下学习开发IM(一)实现用户注册、登录、修改密码和注销等
- Android基于XMPP Smack Openfire下学习开发IM(一)实现用户注册、登录、修改密码和注销等
- openfire Android学习(一)----实现用户注册、登录、修改密码和注销等
- 学习淘淘商城第八十三课(单点登录接口文档分析及Service层接口开发并发布)
- 基于Smack3.0.4+ Openfire3.10.2下学习开发IM(一)实现用户登录、修改密码、删除指定用户和注册新用户等
- MVC3学习第十二章 佟掌柜第一弹----利用MVC3实现用户的注册登录和了解MVC中的分部视图、用户控件
- Android基于XMPP Smack Openfire下学习开发IM(一)实现用户注册、登录、修改密码和注销等
- Android基于XMPP Smack Openfire下学习开发IM(一)实现用户注册、登录、修改密码和注销等
- Apache-mina框架学习之简单的用户登录与注册(MySql数据库)
- CDI系列学习--用户注册用户登录与数据库的结合使用
- python学习之最简单的用户注册及登录验证小程序
- Asp.net2.0身份验证技术学习入门---新用户注册,登录,显示用户信息
- Android基于XMPP Smack Openfire下学习开发IM(一)实现用户注册、登录、修改密码和注销等
- Asp.net2.0身份验证技术学习入门---新用户注册,登录,显示用户信息
- Android基于XMPP Smack Openfire下学习开发IM(一)实现用户注册、登录、修改密码和注销等
- Android基于XMPP Smack Openfire下学习开发IM(一)实现用户注册、登录、修改密码和注销等
- Android基于XMPP Smack Openfire下学习开发IM(一)实现用户注册、登录、修改密码和注销等
- 【J2EE核心开发学习笔记 010】struts2的搭建及连接数据库实现用户注册与登录