从用户管理系统中复习javaweb知识9

2023-05-16

前面我们算是基本完成了用户注册这个功能,但是也是仅仅实现了这个功能,在实际应用中我们不能这么做,而且用户也不会接受我们这样做。我们要做的还有很多。比如,用户注册的时候填写用户名的时候我们得先验证这个用户名是否被别人用了,若已经有人用了,那我们就不能再使用这个名字,为了友好的交互,我们便需要用ajax来验证。

点击(此处)折叠或打开

  1. 注册<br/>
  2.     <form action="user?action=register" method="post">
  3.    用户名<input type="text" name="username" id="name" ><span id="namespan"> </span><br/>
  4.    密码<input type="password" name="passwd" id="password1"> <span id="password1span"></span> <br/>
  5.   确认密码<input type="password" name="passwd2" id="password2"> <span id="password2span"></span> <br/>
  6.    邮箱<input type="text" name="email" id="mail"><span id="em"> </span> <br/>
  7.         <input type="submit" id="submit" value="注册"/>
  8.     </form>

我在这里只是为了实现功能,并没有对表单进行美化。

实现的原理是当鼠标焦点离开“用户名”这个输入框时,实现局部刷新。将所填的“用户名”提交到后台,以用户名为条件查找用户,将用户是否存在的结果返回到前台,提示相应的信息。

先从底层看起:

1.首先实现以用户名为属性查找用户的方法,在UserTableDao方法添加这样的方法


2.service层内编写接口、实现接口

编写接口:



实现接口:

3.Servlet实现控制

在这里专门编写一个实现Ajax验证的类AjaxServlet



4.Jquery实现ajax验证

点击(此处)折叠或打开

  1. $(document).ready(function(){
  2. $("#name").focus(function(){
  3. $("#namespan").html("用户名应在3-12位之间");
  4. }).blur(function(){
  5.  var username = $("#name").val(); //获取在相应输入框内输入的内容
  6.  
  7.   $.ajax({
  8.                 async: false, //默认为true,即请求为异步请求
  9.                 timeout:5000, //设置请求超时时间(毫秒)
  10.                 dataType:"json", //返回的数据类型
  11.                 type: "post", //设置请求方式
  12.                 url: "test", //设置请求URL
  13.                  data: "word=name&username="+username, //设置传递的参数值
  14.                 success:function(msg){ //设置响应成功之后执行的回调函数
  15.                     if(username.length >= 3 && username.length <=12 && username!=''){
  16.                      /* $("#namespan").html(""); */
  17.                      if(msg.existName==true){
  18.                       $("#namespan").html("<b>名称可用</b>");
  19.                      }else{
  20.                      $("#namespan").html("<b>名称已被使用,换一个</b>");
  21.                      }
  22.                     }else{
  23.                      $("#namespan").html("<b>用户名应在3-12位之间</b>");
  24.                     }
  25.                 },
  26.                 error:function(){ //设置响应失败之后执行的回调函数
  27.                     alert("访问失败");
  28.                 }
  29.             });
  30. });
  31. });
到这里ajax验证的基本功能就结束了,把它好好美化一番就完美了。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/29876573/viewspace-1838531/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/29876573/viewspace-1838531/

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

从用户管理系统中复习javaweb知识9 的相关文章

  • 实现serializable序列化接口

    1 什么是序列化和反序列化 Serialization 序列化 是一种将对象以一连串的字节描述的过程 反序列化deserialization是一种将这些字节重建成一个对象的过程 2 什么情况下需要序列化 a 当你想把的内存中的对象保存到一个
  • 知识分享系统

    开发工具 eclipse idea vscode等 数据库 sqlite mysql sqlserver等 功能模块 请用文字描述 至少200字
  • 使用idea创建java web项目

    创建web项目有很多方法 就说一个最简单的方法吧 创建一个java项目 点击创建 右击项目选择添加框架支持 勾选上web应用程序 点击确定 再点击当前文件 编辑配置 点击加号 选择Tomcat服务器 本地 也可以选择其他服务器 点击配置 选
  • JavaScript(7)本地存储,函数深入理解

    1 本地存储 1 1本地存储特性 数据存储在用户浏览器中 设置和读取数据方便 而且页面刷新不丢失数据 容量较大 sessionStorage约5M localStorage约20M 只能存储字符串 可以将对象JSON stringify 编
  • 重新学javaweb---ServletContext

    WEB容器在启动时 它会为每个WEB应用程序都创建一个对应的ServletContext对象 它代表当前web应用 这个对象创建出来之后就一直在内存中驻留 代表当前的web应用 它可以通过我们上一篇介绍的ServletConfig对象获取
  • mybatis中关于example类详解mybatis的Example[Criteria]的使用

    一 什么是example类 mybatis generator会为每个字段产生如上的Criterion 如果表的字段比较多 产生的Example类会十分庞大 理论上通过example类可以构造你想到的任何筛选条件 在mybatis gene
  • MySQL数据库入门超级详细教程

    文章目录 MySQL 1 数据库软件安装 2 为什么要用数据库 3 什么是数据库 4 数据库管理系统 DBMS 5 MySQL 介绍 6 SQL 6 1 SQL 语句概述 6 2 SQL 基本操作 7 表结构操作 7 1 创建数据表 7 2
  • 数据库设计DDL

    DDL 数据定义语言 用来定义数据库对象 数据库 表 DDL 数据库操作 查询 查询所有数据库 show databases 查询当前数据库 select database 使用 使用数据库 use 数据库名 创建 创建数据库 create
  • 前端三剑客---HTML&CSS&JavaScript

    HTML CSS JavaScript 1 HTML 1 1 介绍 1 2 快速入门 1 3 基础标签 1 3 1 标题标签 1 3 2 hr标签 1 3 3 字体标签 1 3 4 换行标签 1 3 5 段落标签 1 3 6 加粗 斜体 下
  •  使用jsp实现留言板功能

    使用jsp实现留言板功能 一 开发环境 本项目使用eclipse MySQL8 0进行开发 在开发的过程中使用了一个jar包 mysql connector java 8 0 16 jar 点我下载 二 项目结构 1 index jsp
  • errcode = 40163; errmsg = "code been used"(提供一种解决思路)

    最近在做微信开发 就在开发完毕测试的时候 遇到一个大问题 每次新用户进入的时候就报错 错误基本上就是code been used 我去百度了好久 没有找到合适的方案 后来我仔细的看了一下微信开发文档 终于解决了 注 该方法不一定对所有人有效
  • 利用MVC做一个 常见的管理系统

    登陆的部分 gt 数据库 gt 表 admin id name pass regtime 表与类的映射关系 基于面向对象 转换成对象的操作 gt 登陆页面
  • Tomcat——IDEA & Eclipse部署Web项目

    目录 IDEA部署Web项目 IDEA配置Tomcat 部署web项目 IDEA与tomcat的相关配置 Eclipse部署Web项目 Eclipse配置Tomcat 部署web项目 IDEA部署Web项目 跳转到目录 一 IDEA配置To
  • idea中Java Web项目的访问路径问题

    说明 这里只以 servlet 为例 没有涉及到框架 但其实路径的基本原理和框架的关系不大 所以学了框架的同学如果对路径有疑惑的也可以阅读此文 项目结构 在 idea 中新建一个 Java Web 项目 项目的初始结构如下 不同版本的 id
  • WEB-7-多线程

    多线程 一 背景 二 认识线程 Thread 1 理解 2 进程和线程的区别 高频面试题 3 使用代码创建多线程 三 线程的相关操作 1 创建线程 1 方法一 继承 Thread 类 2 方法二 实现 Runnable 接口 3 其它方法
  • Servlet接口实现类

    JavaWeb 03 Servlet 02 Servlet接口实现类 1 什么是Servlet接口 有什么用 Servlet接口来自于Servlet规范中的一个接口 这个接口存在于Http服务器所提供的jar包中 Servlet接口的具体位
  • form表单中使用fileUpLoad上传文件

    在最近的项目中 需要对用户的头像就行上传 这里了解到使用appche的 大家可自行到mvn库搜索jar包名进行下载 这里需要注意的是代码中对参数的读取 正常情况下我么使用getparameter方法进行读取表单数据 但是因为在form中我们
  • 【封装】实体类(entity)

    实体类entity 一 ORM 1 1 ORM 实体类 entity 零散数据的载体 1 1 1 ORM应用 一 ORM ORM Object Relational Mapping 从数据库查询到的结果集 ResultSet 在进行遍历时
  • JDK 8 List集合使用记录

    JDK8 的新特性给我们开发带来了很大的便利性 先声明 我没有系统的去学习 JDK8的这些所有新特性 本文只是记录一些我个人日常开发中常遇到的一些 JDK8 的新特性方法 1 提取对象集合中的某一属性集合 List lt 对象 gt gt
  • JavaWeb的高级、Listener监听器--Servlet事件

    一 学习目标 1 Listener监听器 2 Listener监听器作用 3 Listener监听器的创建与销毁 二 重点知识 1 Listener监听器 Filter和Listener是Servlet规范中的两个高级特性 不同于Servl

随机推荐