概述

该技术已过时

jsp 已经过时,是因为代码杂糅在一起,没有做到完美的分离.不利于后期的维护

java bean 过时的原因在于面条代码的存在,即,各种代码杂乱的糅合在一起.

特点

组件式编程
步骤封装成为组件,需要那个的时候,直接调用组件即可.增加复用性

标准目录结构

WEB-INF

该目录为web目录中最安全的文件夹.保存各种类,第三方jar包,配置文件.

WEB-XML

web部署的描述符

classes

保存所有hacabean

lib

第上方jar包

tags

保存所有标签文件

jsp

保存jsp文件

css

保存样式表文件

images

保存图片文件

page导入JavaBean

package demo;public class demo {public String name;public String age;public demo(){}public void setName(String name){this.name = name;}public void setAge(String age){this.age = age;}public String getName(){return this.name;}public String getAge(){return this.age;}
}
<%--Created by IntelliJ IDEA.User: mingDate: 19-3-14Time: 下午9:19To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ page import="demo.demo" %>
<html>
<head><title>Title</title>
</head>
<body>
<%demo demo = new demo();demo.setAge("12");demo.setName("ming");
%>
<%=demo.getName()%>
<%=demo.getAge()%>
</body>
</html>

JavaBean与表单

同jsp
直接传参即可

jsp:useBean指令

使用jsp:useBean指令可以直接调用类

<%--Created by IntelliJ IDEA.User: mingDate: 19-3-14Time: 下午9:19To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<jsp:useBean id="demo" scope="page" class="demo.demo"/>
<html>
<head><title>Title</title>
</head>
<body>
<%demo.setName("ming");demo.setAge("12");
%>
<%=demo.getAge()%>
<%=demo.getName()%>
</body>
</html>

JavaBean范围

使用scope属性标记范围
当为post的时候,表示为只在本页生效.
当为request的时候,表示在一次页面跳转,不会重新实例化对象
当为session,表示对象的生命周期为整个会话
当为application的时候,表示为所有用户共同拥有这个对象.即为单例模式

栗子

注册验证

<%--Created by IntelliJ IDEA.User: mingDate: 19-3-15Time: 上午12:53To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head><title>用户注册页</title>
</head>
<body>
<jsp:useBean id="reg" scope="request" class="com.ming.Register"/>
<form action="./check.jsp" method="post">用户名<input type="text" name="name" value="<jsp:getProperty name="reg" property="name"/>"/><%=reg.getErrorMsg("errname")%>年龄<input type="text" name="age" value="<jsp:getProperty name="reg" property="age"/>"/><%=reg.getErrorMsg("errage")%>E-Mail<input type="text" name="email" value="<jsp:getProperty name="reg" property="email"/>"/><%=reg.getErrorMsg("erremail")%><input type="submit" value="注册"/><input type="reset" value="重置"/>
</form>
</body>
</html>
<%--Created by IntelliJ IDEA.User: mingDate: 19-3-15Time: 上午2:04To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head><title>Title</title>
</head>
<body>
<jsp:useBean id="reg" scope="request" class="com.ming.Register"/>
用户名 <jsp:getProperty name="reg" property="name"/>
年龄  <jsp:getProperty name="reg" property="age"/>
E-Mail <jsp:getProperty name="reg" property="email"/>
</body>
</html>
<%--Created by IntelliJ IDEA.User: mingDate: 19-3-15Time: 上午12:55To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head><title>信息验证中</title>
</head>
<body>
<jsp:useBean id="reg" scope="request" class="com.ming.Register"/>
<!-- 属性自动赋值 -->
<jsp:setProperty name="reg" property="*"/>
<%// 进行验证if(reg.isVaildate()){
%><jsp:forward page="sucess.jsp"/>
<%}else{
%><jsp:forward page="index.jsp"/>
<%}
%>
</body>
</html>

Java Bean + 注册验证相关推荐

  1. java bean 验证_Java Bean验证基础

    java bean 验证 这篇文章总结了一些简单,快速的示例,这些示例说明了您想使用Java Beans Validation API(JSR 349,JSR 303)进行的最常见操作. 记住,Bea ...

  2. java实现邮箱注册验证

    java实现邮箱验证的功能 在日常生活中,我们在一个网站中注册一个账户时,往往在提交个人信息后,网站还要我们通过手机或邮件来验证,邮件的话大概会是下面这个样子的: 用户通过点击链接从而完成注册,然后才 ...

  3. Java实现注册时发送激活邮件验证

    在很多网站注册的时候,为了验证用户信息的真实合法,往往需要验证用户所填邮件的准确性.形式为:用户注册时填写邮箱,注册完成后,网站会向用户所填邮箱发送一封激活邮件,用户点击激活邮件中的链接后,方可完成注 ...

  4. Java 使用邮箱进行注册验证

    1.Springboot 使用邮箱进行注册验证需要导入依赖,如果是Java项目则需要导入email.jar <!--email--> <dependency><group ...

  5. 使用java实现注册登录信息验证

    编写java工具包,用来验证字符串格式和获取登录注册验证码.然后再编写注册窗口,实现注册验证功能. 一.编写工具包 1.编写字符串验证类 考虑到进行字符串验证时,用户会根据不同需求从而需要不同的验证方 ...

  6. Windows下安装nacos2与springboot服务注册验证

    本文章是nacos2服务注册发现入门级文章,重点介绍了如何安装部署nacos2,如何选择spring boot版本.spring cloud版本,如何开发spring boot服务,如何注册到naoc ...

  7. Java Bean详解

    JavaBean(是java类)是一种JAVA语言写成的可重(chong)用组件(Component).为写成JavaBean,类必须是具体的和公共的,并且具有无参数的构造器.JavaBean 通过提 ...

  8. JAVA Bean和XML之间的相互转换 - XStream简单入门

    JAVA Bean和XML之间的相互转换 - XStream简单入门 背景介绍 XStream的简介 注解简介 应用实例 背景介绍 我们在工作中经常 遇到文件解析为数据或者数据转化为xml文件的情况, ...

  9. JSR303—Bean Validation验证

    JSR-303 Bean Validation 是 JAVA EE 6 中的一项子规范 官方参考实现是Hibernate Validator 此实现与 Hibernate ORM 没有任何关系 Bea ...

最新文章

  1. SAP QM 事务代码QA11里的to New Material
  2. 记得ajax中要带上AntiForgeryToken防止CSRF攻击
  3. linux下IO口模拟I2C的一些总结
  4. boost::spirit模块利用 std::tuple 将多个属性包装成一个的测试程序
  5. 数论基础_欧几里德算法
  6. 注解@resource的作用_Bean基于Annotation(注解)的装配方式
  7. cefsharp重写默认js弹窗(alert/confirm/prompt)
  8. atlas 200 简单确认驱动与固件版本的方法
  9. 关于GDAL180中文路径不能打开的问题分析与解决
  10. php判断值和类型,php如何判断某变量的类型?
  11. [解决方案]在Sql Server 2008/2005 数据库还原出现 3154错误
  12. FCKEditor报java.lang.NullPointerException
  13. 关于Java字符串的几个重点
  14. 螃蟹保存方法保存时间_螃蟹吃不完怎么保存?学会这4招,不论是海蟹、河蟹通通都不愁...
  15. 语音助手的涅槃关头,我们应该完全抛弃屏幕还是选择“语音+图形界面”?
  16. 511遇见易语言文本处理寻找文本
  17. 2022年11月网络工程师考试知识点分布
  18. 数说故事2022年中国预制菜行业趋势及营销创新洞察报告
  19. 高校体育场地预约管理系统(Java Web毕业设计)
  20. mysql list database_Navicat Premium 操作MySQL数据库

热门文章

  1. 从零开始编写自己的C#框架(23)——上传组件使用说明
  2. 使用keytool生成密钥对
  3. Lock,LockFree,MemoryBarrier,ConcurrentCollection
  4. Progress Control控件的使用
  5. Python中的操作符重载
  6. PowerDesigner(九)-模型文档编辑器(生成项目文档)
  7. Spring Boot系列教程六:日志输出配置log4j2
  8. 数据结构---树,堆排序
  9. mysql 触发器 sql日志_触发器实现记录操作表的日志
  10. Ubuntu扩大boot空间