Java Web基础:第十六讲 客户端验证的例子

Java Web基础入门第十六讲 Servlet开发——通过Servlet生成验证码图片 BufferedImage类介绍生成验证码图片主要用到了一个BufferedImage类,如下: 创建一个ResponseDemo4 Servlet,用来生成验证码图片。public class ResponseDemo4 extends HttpServlet { public static final int WIDTH = 120; // 生成的图片的宽度 public s 阅读详情

 

本文内容摘自:《Java Web开发教程——入门与提高篇(JSP+Servlet)》第58-60页。
下面介绍一个客户端验证的例子,页面代码参考 Java Web基础:第十一讲基本表单元素 ,调用验证方法的代码参考 Java Web基础:第十二讲 form元素的使用 。
    function isValidate(form)
    {
        // 得到用户输入的信息
        userid = form.userid.value;
        username = form.username.value;
        userpass = form.userpass.value;
        userpass2 = form.userpass2.value;
        birthday = form.birthday.value;
        email = form.email.value;
        address = form.address.value;
        phone = form.phone.value;
 
        // 判断用户ID 长度
        if(!minLength(userid,6))
        {
            alert(" 用户ID 长度小于6 位!");
            form.userid.focus();
            return false;
        }
        if(!maxLength(userid,8))
        {
            alert(" 用户ID 长度大于8 位!");
            form.userid.focus();
            return false;
        }
 
        // 判断用户名长度
        if(!minLength(username,2))
        {
            alert(" 用户名长度小于2 位!");
            form.username.focus();
            return false;
        }
        if(!maxLength(username,10))
        {
            alert(" 用户名长度大于10 位!");
            form.username.focus();
            return false;
        }
 
        // 判断口令长度
        if(!minLength(userpass,6))
        {
            alert(" 口令长度小于6 位!");
            form.userpass.focus();
            return false;
        }
        if(!maxLength(userpass,8))
        {
            alert(" 口令长度大于8 位!");
            form.userpass.focus();
            return false;
        }
 
        // 判断用户ID 和口令是否相同
        if(userid==userpass)
        {
            alert(" 用户ID 和口令不能相等!");
            form.userpass.focus();
            return false;
        }
 
        // 验证两次口令是否相同
        if(userpass != userpass2)
        {
            alert(" 两次输入的口令不相同!");
            form.userpass.focus();
            return false;
        }
 
        // 验证生日的格式是否正确
        if(!isDate(birthday))
        {
            alert(" 生日的格式不正确!");
            form.birthday.focus();
            return false;
        }
 
        // 验证email 的格式是否正确
        if(!isEmail(email))
        {
            alert("Email 格式不正确!");
            form.email.focus();
            return false;
        }
 
        // 验证电话号码的格式是否正确
        if(!isDigital(phone))
        {
            alert(" 电话号码的格式不正确");
            form.phone.focus();
            return false;
        }
        // 验证地址的长度是否正确
        if(!maxLength(address,50))
        {
            alert(" 地址长度大于50 位!");
            form.address.focus();
            return false;
        }
        return true;
    }
经过客户端验证之后,信息就可以提交给服务器了,服务器如何接收和处理这些信息呢?请看下回讲解。
 
李绪成 优快云 Blog : http://blog.youkuaiyun.com/javaeeteacher
2、21 天学会 Java 6:从入门到进阶 本博文提供了一个21天系统学习Java的详细计划,适合编程新手、早期Java版本使用者及其他语言开发者。内容涵盖Java语言基础、实用类和高级主题,包括面向对象编程、Swing图形界面、数据库连接、XML处理、Web服务等。通过每天的实践和示例,帮助读者从零开始掌握Java开发技能,并介绍了Java在多个领域的应用场景。 阅读详情

相关推荐

极空间NAS小白也能搞定的Gitea部署:Docker+MySQL避坑全记录

本文为极空间NAS用户提供了一份详尽的Gitea私有代码仓库部署指南。针对极空间ARM架构和图形化Docker管理的特殊性,文章重点讲解了如何通过Docker和MySQL容器进行部署,并提供了三种获取兼容镜像的实战策略,特别是利用第三方镜像站转录的方法,帮助小白用户成功搭建并初始化Gitea服务,实现私有Git托管。

weixin_28318011的博客 365

第一次冲刺 03

昨天主要做了对注册用户注册的一些条件,今天准备做登陆的页面。 下面是昨天写的一些代码: <script language="JavaScript"> function isValidate(form) { // 得到用户输入的信息 useid = form.useid....

aiqibao0776的博客 122

扫地机器人全场景测试实战:从实验室到真实家庭的可靠性验证

本文深入探讨了扫地机器人从实验室到真实家庭的全场景测试方法,揭示了软硬件测试中的关键挑战。通过分析场景化测试的重要性,文章详细介绍了硬件耐久性、软件稳定性和环境适应性三大测试维度,并提供了真实家庭测试的实用方法论。消费者可重点关注清洁率、覆盖率等核心指标,同时了解测试工程师的私房建议,帮助选择更可靠的扫地机器人产品。

hhh00的博客 1075

java web 学习(2)

今天突然想到写的测试代码最好随时取出来,在不同的机器上不用老是拷来拷去,还真找着了免费的Svn, svn://www.svn999.com/luhouxiang.javastudy,暂时学习的工程代码都放在此处 一个注册的程序,结果编译的时候一直说form1是错误的,搞不清楚怎么回事 <%@ page contentType="text/html;charset=gb23...

dicuzhaoqin8950的博客 135

【Lua面试】2021年Lua面试题分享(4.25更新)

lua深拷贝和浅拷贝的区别?如何实现深拷贝? lua中ipairs和pairs的区别? 链接: link.

qq_21407523的博客 2万+

高通平台N4单路输入的720P相机预览

N4的一路720P Camera作为MIPI摄像头使用

llw21680的专栏 165

Java Web基础:第十七讲 业务处理概述

李绪成的一亩三分地 3465

PCIE的MSI中断处理机制与优化策略

PCIe设备的。

xiaoheshang_123的博客 515

Java web学习第十六天——HTTP协议

Day 16软件体系结构:常见的软件体系结构B/S,C/SC/S:客户端/服务器(client/Server)例如QQ,有独立的客户端,APP  优点:安全性高,不与本地连接  缺点:软件更新需要客户端和服务器两端,比较麻烦B/S:浏览器/服务器 :  优点:只需要编写服务器程序  缺点:安全性差Web资源:静态资源:HTML动态资源:jsp/Servlet动态资源需要先转化为静态资源才可以访问浏...

swh18337397695的博客 267

点云配准3:3d-ndt算法在pcl上的实现以及参数设置

3d-ndt算法在pcl上的使用方法以及参数设置

诺有缸的高飞鸟的博客 7891

韩版传奇 2 源码分析与 Unity 重制(一)服务端 TCP 状态管理

该专题将会分析 LOMCN 基于韩版传奇 2,使用 .NET 重写的传奇源码(服务端 + 客户端),分析数据交互、状态管理和客户端渲染等技术,此外笔者还会分享将客户端部分移植到 Unity 和服务端用现代编程语言重写的全过程。本文重点介绍了服务端的启动链路、网络初始化和连接处理这三个过程,并简要分析的游戏循环的实现与数据包处理,在下一篇文章中,我们会从客户端角度分析从游戏启动、登录、游戏开始和基础游戏交互的全流程。

东方猫的博客 2496

学做毕设 2022 第十六讲 JWT集成

<!--引入JWT依赖--> <dependency> <groupId>com.auth0</groupId> <artifactId>java-jwt</artifactId> <version>3.10.3</version> </dependency> 生成工具类 tokenUtils package com.yinming.sprintboot.utils; i.

mm_816的专栏 520

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

一起学习Spring boot 2.1.X | 第十六篇:JSON Web Tokens

1.POM依赖 <dependency> <groupId>io.jsonwebtoken</groupId> <artifactId>jjwt</artifactId> <version>0.9.0</version> </dependency> 2.JwtUti.jav...

qq_41920732的博客 628

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

大本营半年总结(115篇文章)

去年9月21日加入学生大本营,今天3月21日,刚好半年。 快啊! 有太多想说的话,......,下面是这些本年来文章的目录。   1、Java基础系列   Java基础:第四十一讲 this和super Java基础:第四十讲 向上转型和强制类型转换 Java基础:第三十九讲 多态 Java基础:第三十八讲 抽象类与抽象方法 Java基础:第三十七讲 成员方法的继承与覆盖 J...

李绪成的一亩三分地 2625

JavaWeb 30 天入门:第十六天 —— 过滤器与监听器

本文介绍了JavaWeb中的过滤器和监听器两大核心组件。过滤器(Filter)用于拦截请求和响应,实现预处理和后处理,常见应用包括字符编码转换、登录验证、敏感词过滤等。监听器(Listener)用于监听Web应用中的各类事件,如ServletContext、Session和Request的创建/销毁以及属性变化等,可用于统计在线人数、初始化资源等场景。

m0_73803300的博客 968

株洲所实习的第十六天(SpringBoot,事务,数据库,java8)

记录12.4日的学习内容 1.--------事务-------- 特指数据库的事务,是指作为单个逻辑工作单元执行的一系列操作,要么完全地执行,要么完全地不执行。 MySQL中InnoDB支持事务,而默认的MyISAM不支持事务 在SpringBoot中使用@Transactional 简单来说,事务就是两个事情要么同时执行出来,要么就都执行不出来,2或者是0。 2.--------Spri...

qq_37814739的博客 235

不愧是 GitHub 上标星 130K 的手册,内容不多,只讲重点

今天日常摸鱼的时候在 GitHub 上发现了这份标星 130K 的 软件测试 手册

自动化软件测试 355

【Java代码审计 | 第十六篇】项目审计思路:第三方组件、配置文件、正逆向排查

1、数据库信息泄露:是否存储了明文数据库密码?2、拦截器(Interceptor) 需要在 springmvc.xml 配置文件中定义,仅适用于 Spring MVC,通常用于权限控制、日志记录、全局数据处理等。2、分析外部可控参数 —— 检查 @RequestParam、@PathVariable、@RequestBody 等方式接收的参数,确定哪些参数是外部可控的。1、过滤器(Filter) 需要在 web.xml 中进行配置,适用于所有 Java Web 应用,可用于请求过滤、编码处理、安全检查等。

等风来 2726

使用Struts2开发Java Web应用程序

使用Struts2开发Java Web应用程序(目录) 收藏 配套源代码网站:https://teamware.dev.java.net 第一部分 Struts入门 第一章 Struts2 概览(beta) 第二章 一个简单的Login 应用程序(beta) Struts 2 概要 第三章Struts配置(beta) 第三章 Struts配置(第一节 struts.propertie...

绝影メ之殇 209

15:00面试,15:08就出来了,问的问题有点变态。。。

整份文档一共有将近 200 页,全部为大家展示出来肯定是不太现实的,为了不影响大家的阅读体验就只展示了部分内容,还望大家海涵,希望能帮助到您面试前的复习且找到一个好的工作,也节省大家在网上搜索资料的时间来学习!

qq_48811377的博客 2万+

Rust Web 编程(一)

你是否希望将你的 Web 应用程序推向极限,以实现速度和低能耗,同时仍然保持内存安全?Rust 使你能够在没有垃圾回收和与 C 编程语言相似的能量消耗的情况下实现内存安全。这意味着你可以相对容易地创建高性能和安全的应用程序。本书将带你经历 Web 开发的每个阶段,最终部署使用 Rust 构建并打包在 distroless Docker 中的高级 Web 应用程序,在 AWS 上使用我们创建的自动化构建和部署管道,生成的服务器镜像大小约为 50MB。

龙哥盟 558

VS2013创建和调用Web服务

说到Web服务,我们主要有两种途径去创建和调用它,一种是基于Java的web服务,主要是JAX为主的;另一种是ASP.NET的方式去实现;相比之下,笔者更喜欢后者的实现方式,所以推出了Visual Studio的webservice教程。 第一步:先创建一个工程 第二步:选择Visual C#下面的Web项目,基于.NET4.5 第三步:创建服务方法 第四步:发布这个项目 第五步:配置发

心灵港 7133

第十六天:跨域-cookie-session

第十六天:跨域-cookie-session 跨域 这是个安全策略,只能我允许的域名才能访问 前后端分离 通过这样的方式后,我们的项目打不开,前端解析会出现问题,这就是跨域的问题 同源策略 浏览器有个同源策略(Same-Origin Policy) 它规定了:默认情况下,AJAX请求只能发送给同源的URL 同源是指3个相同:协议、域名(IP)、端口 但是img vidio等图片不受同源策略的影响 所以我们俩不同源,所以访问不到数据 当我们通过这样的方式去访问时,就是跨域访问,我们怎么去解决这个问题

qq_45750691的博客 381
上一篇: Java基础:第二十七讲 类的定义
下一篇: 三道Java题,看看自己能不能作出来
老李-大连
博客等级 码龄20年 3206粉丝 308原创
评论 4
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值