专栏首页mySoulJava Bean + 注册验证
原创

Java Bean + 注册验证

概述

该技术已过时

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: ming
  Date: 19-3-14
  Time: 下午9:19
  To 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: ming
  Date: 19-3-14
  Time: 下午9:19
  To 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: ming
  Date: 19-3-15
  Time: 上午12:53
  To 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: ming
  Date: 19-3-15
  Time: 上午2:04
  To 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: ming
  Date: 19-3-15
  Time: 上午12:55
  To 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>
qrcode_for_gh_9901b36b3b0e_258.jpg

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 微信开发教程(一):服务器环境搭建

    如果只是个人开发测试使用,为了有完整权限,建议使用测试账号:  申请地址http://mp.weixin.qq.com/debug/cgi-bin/sandbo...

    肖哥哥
  • Android基础:最易懂的Activity启动模式详解

    启动模式有2种设置方式:在AndroidMainifest设置、通过Intent设置标志位

    Carson.Ho
  • Linux巩固记录(2) java项目的编译和执行

    以前只在linux上配置J2EE项目执行环境,无非配置下jdk,部署tomcat,再通过docker或者jenkins自动部署上去

    肖哥哥
  • Java开发中的23种设计模式详解(转)

                                      ——可复用面向对象软件的基础

    肖哥哥
  • Linux巩固记录(1) J2EE开发环境搭建及网络配置

    以前只在linux上配置J2EE项目执行环境,无非配置下jdk,部署tomcat,再通过docker或者jenkins自动部署上去

    肖哥哥
  • shiro权限管理框架与springmvc整合

    shiro是apache下的一个项目,和spring security类似,用于用户权限的管理‘

    肖哥哥
  • Android Studio 插件 GsonFormat :你还在烦恼 为 Json格式 生成 JavaBean实体类吗?

    Carson.Ho
  • 基于腾讯云对象存储跑hadoop任务实战一

    公司在腾讯云有一个大数据集群,用hdp的ambari部署管理的,hdp面有hadoop、hive、spark等常用的大数据组件,公司的报表都从这里...

    用户1311276
  • webService学习之路(三):springMVC集成CXF后调用已知的wsdl接口

    webService学习之路一:讲解了通过传统方式怎么发布及调用webservice

    肖哥哥
  • java 导出数据为word文档(保持模板格式)

    ①:设计好word文档格式,需要用数据填充的地方用便于识别的长字符串替换  如  aaaaaaaaaaaaaaaa

    肖哥哥

扫码关注云+社区

领取腾讯云代金券