引入niceValidator看这篇博客入门
实现效果:
为了演示简单 后台将已存在的用户名 固定设置为jerry
参考niceValidator官方文档
JSON解析器: (Json和ajax相关知识看这篇)
常见的解析器:Jsonlib,Gson,fastjson,jackson
jackson解析器jar包下载
链接:https://pan.baidu.com/s/1ClAjP3cM4oQ7-l8D1ZcM-Q
提取码:9yo7
代码示例:
前台:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>注册页面</title>
<!--引入插件相关文件-->
<link href="./validator/jquery.validator.css" rel="stylesheet">
<script src="./validator/jquery-3.3.1.min.js"></script>
<script src="./validator/jquery.validator.min.js"></script>
<!--中文国际化文件-->
<script src="./validator/local/zh-CN.js"></script>
</head>
<body>
<form data-validator-option="{theme:'yellow_right_effect',stopOnError:true}">
<input type="text" id="username" name="username" data-rule="用户名:required;remote[registerServlet]" placeholder="请输入用户名">
<span id="s_username"></span>
<br>
<input type="password" name="password" placeholder="请输入密码"><br>
<input type="submit" value="注册"><br>
</form>
</body>
</html>
后台:
package cn.kinggm520.web;
import com.fasterxml.jackson.databind.ObjectMapper;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.util.HashMap;
import java.util.Map;
/**
* 作者: kinggm Email:731586355@qq.com
* 时间: 2020-03-04 22:26
*/
@WebServlet("/registerServlet")
public class RegisterServlet extends HttpServlet {
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
//解决response数据乱码
response.setContentType("application/json;charset=utf-8"); //设置返回json格式
// 获取用户名
String username = request.getParameter("username");
// 定义返回数据
Map<String, String> map = new HashMap<>();
// 判断用户名是否存在
// 这里设置已存在的用户名为jerry
if ("jerry".equals(username)) {
// 用户名已存在
map.put("error", "用户名已存在,请换个用户名");
ObjectMapper objectMapper = new ObjectMapper();
// Map转Json输出到页面 方式一
// String string = objectMapper.writeValueAsString(map);
// response.getWriter().write(string);
// Map转Json输出到页面 方式二
objectMapper.writeValue(response.getWriter(),map);
} else {
map.put("ok", "用户名可用");
ObjectMapper objectMapper = new ObjectMapper();
objectMapper.writeValue(response.getWriter(),map);
}
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
this.doPost(request, response);
}
}