登录数据校验
代码实现
实体映射集
@Data
@AllArgsConstructor
@NoArgsConstructor
public class R<E> {
private Integer code; //状态码
private String msg; //处理信息
private E data; //实体数据
public static <E> R<E> success(E object) {
R<E> r = new R<E>();
r.data = object;
r.code = 1;
return r;
}
public static <E> R<E> error(E object){
R<E> r = new R<E>();
r.data = object;
r.code = 0;
return r;
}
}
请求控制
@Slf4j
@RestController
public class UserController {
@Autowired
UserMapper userMapper;
@RequestMapping("/login")
public R<String> login(String username) {
log.info("用户名{}",username);
//条件处理器
QueryWrapper<User> wrapper = new QueryWrapper<User>();
wrapper.eq("username", username);
wrapper.select();
//获取查询结果
User user = userMapper.selectOne(wrapper);
if (user != null) {
return R.success(user.getUsername());
} else {
//返回结果集
return R.error("error");
}
}
}
数据库实体
@Data
@AllArgsConstructor
@NoArgsConstructor
public class User {
private String username;
private String password;
private Integer ID;
}
前端请求
<script src="https://code.jquery.com/jquery-3.1.1.min.js"></script>
<script>
$(function () {
$("#username").change(function (){
$.post("http://localhost:8080/login",
{'username':$("#username").val()},
function (data) {
//判断结果集中的响应标志码
if (data.code==0){
document.getElementById("msg").innerHTML="用户名不存在";
}
});
})
})
</script>
执行流程
前端——>ajax——>后端——>响应请求——>查询数据库,返回结果集——>前端——>判断处理结果——>返回处理信息