QQ登录

只需要一步,快速开始

APP扫码登录

只需要一步,快速开始

手机号码,快捷登录

手机号码,快捷登录

查看: 1967|回复: 0

[JAVA/JSP] AJAX实现注册验证用户名

[复制链接]

等级头衔

积分成就    金币 : 2851
   泡泡 : 1516
   精华 : 6
   在线时间 : 1301 小时
   最后登录 : 2024-12-4

丰功伟绩

优秀达人突出贡献荣誉管理论坛元老活跃会员

联系方式
发表于 2021-4-10 23:05:56 | 显示全部楼层 |阅读模式
功能说明
( u* P! X- v& ?+ [. I; V7 L- J7 O       当用户在注册页面输入用户名并且鼠标焦点离开输入框时,到数据表中去验证该用户名是否已经存在,如果存在提示不可用,否则,提示可用。
7 i( }9 b8 m; G8 I6 T6 g7 D接口
  G5 s# m- e+ H
public interface UserDao {
 public User findName(String name);
}
接口实现类2 o9 p5 D( I& ]; V% R
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;

public class UserDaoImpl implements UserDao {

 @Override
 public User findName(String name) {
  User user =null;
  Connection conn = DBHelper.getConn();
  String sql = "select * from user where name=?";
  try {
   PreparedStatement ps = conn.prepareStatement(sql);
   ps.setString(1,name);
   ResultSet rs = ps.executeQuery();
   if (rs.next()){
    user = new User();
    user.setId(rs.getInt(1));
    user.setName(rs.getString(2));
    user.setPassword(rs.getString(3));
   }
  } catch (SQLException e) {
   e.printStackTrace();
  }
  return user;
 }
}
servlet
) @0 M1 \3 i5 F) a0 J8 M+ k3 Z
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;

@WebServlet("/findName")
public class FindNameServlet extends HttpServlet {
 protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
  request.setCharacterEncoding("utf-8");
  response.setContentType("text/html;charset=utf-8");
  String name = request.getParameter("name");
  UserDao userDao = new UserDaoImpl();
  User name1 = userDao.findName(name);
  if (name1!=null){
   response.getWriter().write("1");
  }else {
   response.getWriter().write("2");
  }
 }

 protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
  this.doPost(request, response);
 }
}
JSP页面
# }9 V1 E8 X9 {+ z/ u1 I1 O
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
 <head>
 <title>AJAX实际操作注册验证用户名</title>
 <script src="js/jquery-1.8.3.js"></script>
 </head>
 <body>
 <form action="#" method="post">
 <script type="text/javascript">
  $(function () {
   $("[name=userName]").blur(function () {
    $.ajax({
     type:"get",
     url:"findName?name="+$("[name=userName]").val(),
     dataType:"text",
     success:function (data) {
      //alert(data);
      if (data=="1"){
       $("#show").html("用户已存在!!!")
      }else {
       $("#show").html("用户名可用")
      }
     }
    })
   })
  });
 </script>
 账号<input type="text" name="userName"><span id="show"></span></br>
 密码<input type="password" name="password"></br>
 <input type="submit" value="提交">
 </form>
 </body>
</html>
数据库如下:
4 Y3 n* |# Y0 T7 u  d 1.jpg 9 I0 R* a1 n9 O
运行结果如下:
9 a( Q9 c9 @3 U5 Y5 w* L 2.jpg
( c5 L% j9 J! Q1 V" p* t 3.jpg
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|paopaomj.COM ( 渝ICP备18007172号|渝公网安备50010502503914号 )

GMT+8, 2024-12-4 01:19

Powered by paopaomj X3.5 © 2016-2025 sitemap

快速回复 返回顶部 返回列表