一、检查数据是否可用
1.1 功能分析
请求的url:/user/check/{param}/{type}
参数:从url中取参数1、String param(要校验的数据)2、Integer type(校验的数据类型)
响应的数据:json数据。e3Result,封装的数据校验的结果true:成功false:失败。
业务逻辑:
1、从tb_user表中查询数据
2、查询条件根据参数动态生成。
3、判断查询结果,如果查询到数据返回false。
4、如果没有返回true。
5、使用e3Result包装,并返回。
编写对应的interface和service
@Service
public class RegisterServiceImpl implements RegisterService {
@Autowired
private TbUserMapper userMapper;
@Override
public E3Result checkData(String param, int type) {
// 根据不同的type生成不同的查询条件
TbUserExample example = new TbUserExample();
Criteria criteria = example.createCriteria();
// 1:用户名 2:手机号 3:又想
if (type == 1) {
criteria.andUsernameEqualTo(param);
} else if (type == 2) {
criteria.andPhoneEqualTo(param);
} else if (type == 3) {
criteria.andEmailEqualTo(param);
} else {
return E3Result.build(400, "数据类型错误");
}
// 执行查询
List<TbUser> list = userMapper.selectByExample(example);
// 判断结果中是否包含数据
if (list != null && list.size() > 0) {
return E3Result.ok(false);
}
// 如果有数据,返回false;没有数据,返回true;
return E3Result.ok(true);
}
}
注册服务:
web层引用服务
web层代码:
e3-sso maven intsall
启动e3-sso, e3-sso-web