zoukankan      html  css  js  c++  java
  • JavaBean示例

    例1.通过非可视化的JavaBean,封装邮箱地址对象,通过JSP页面调用该对象来验证邮箱地址是否合法。

    (1)创建名称为Email的JavaBean对象,用于封装邮箱地址,关键代码如下:

    package com.cn.gao;
    import java.io.Serializable;
    
    public class Email implements Serializable {
        //serialVersionUID值
        private static final long serialVersionUID=1L;
        //Email地址
        private String mailAdd;
        //是否是一个标准的Email地址
        private boolean email;
        /**
         * 默认无参数的构造方法
         */
        public Email(){
            
        }
        
        public Email(String mailAdd){
            this.mailAdd=mailAdd;
        }
        /**
         * 是否是一个标准的Email地址
         * @return 布尔值
         */
        public boolean isEmail(){
            //正则表达式,定义邮箱格式
            String regex = "\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*";
            //matches()方法可判断字符串是否与正则表达式匹配
            if(mailAdd.matches(regex)){
                //email为真
                email=true;
            }
            return email;
        }
        
        public String getMailAdd(){
            return mailAdd;
        }
        
        public void setMailAdd(String mailAdd){
            this.mailAdd=mailAdd;
        }
    }

    说明:虽然在JavaBean的规范中,要求JavaBean对象提供默认无参的构造方法,但除默认无参构造方法外,JavaBean对象也可以根据相关属性提供构造方法,所以Email类为了实例化方便,还提供了使用mailAdd实现的一个构造方法。

    (2)创建名为index.jsp的页面,它是程序中的首页,用于放置验证邮箱的表单,该表单的提交地址为result.jsp页面。关键代码如下:

    <%@ page language="java" import="java.util.*" pageEncoding="GB18030"%>
    <%
    String path = request.getContextPath();
    String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
    %>
    
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
      <head>
        <base href="<%=basePath%>">
        
        <title>My JSP 'index.jsp' starting page</title>
        <meta http-equiv="pragma" content="no-cache">
        <meta http-equiv="cache-control" content="no-cache">
        <meta http-equiv="expires" content="0">    
        <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
        <meta http-equiv="description" content="This is my page">
        <!--
        <link rel="stylesheet" type="text/css" href="styles.css">
        -->
      </head>
      
      <body>
        <form action="result.jsp" method="post">
            <table align="center" width="300" border="1" height="150">
             <tr>
                 <td colspan="2" align="center">
                     <b>邮箱认证系统</b>
                 </td>
             </tr>
             <tr>
                 <td align="right">邮箱地址:</td>
                 <td><input type="text" name="mailAdd"/></td>
             </tr>
             <tr>
                 <td colspan="2" align="center">
                     <input type="submit" name="Submit" value="提交查询内容"/>
                 </td>
             </tr>
            </table>
        </form>
      </body>
    </html>

    (3)创建名称为result.jsp的页面,对index.jsp页面中的表单进行处理在此页面中实例化Email对象,对邮箱地址进行验证,并将验证结果输出到页面中。关键代码如下:

    <%@ page language="java" import="java.util.*" pageEncoding="GB18030"%>
    <%@page import="com.cn.gao.Email"%>
    <%
    String path = request.getContextPath();
    String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
    %>
    
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
      <head>
        <base href="<%=basePath%>">
        
        <title>My JSP 'result.jsp' starting page</title>
        
        <meta http-equiv="pragma" content="no-cache">
        <meta http-equiv="cache-control" content="no-cache">
        <meta http-equiv="expires" content="0">    
        <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
        <meta http-equiv="description" content="This is my page">
        <!--
        <link rel="stylesheet" type="text/css" href="styles.css">
        -->
    
      </head>
      
      <body>
        <div align="center">
            <%
                //获取邮箱地址
                String mailAdd=request.getParameter("mailAdd");
                //实例化Email,并对mailAdd赋值
                Email email=new Email(mailAdd);
                //判断是否是标准的邮箱地址
                if(email.isEmail()){
                    out.print(mailAdd + "<br>是一个标准的邮箱地址!<br>");
                }else{
                    out.print(mailAdd + "<br>不是一个标准的邮箱地址!<br>");
                }
             %>
             <a href="index.jsp">返回</a>
        </div>
      </body>
    </html>

    该页面通过JSP的内置对象request,接收表单传递的mailAdd值,然后通过该值来实例化Email对象,通过Email的isEmail()方法判断邮箱地址是否合法,并在页面中输出判断结果。

  • 相关阅读:
    POJ3320 Jessica's Reading Problem
    POJ3320 Jessica's Reading Problem
    CodeForces 813B The Golden Age
    CodeForces 813B The Golden Age
    An impassioned circulation of affection CodeForces
    An impassioned circulation of affection CodeForces
    Codeforces Round #444 (Div. 2) B. Cubes for Masha
    2013=7=21 进制转换
    2013=7=15
    2013=7=14
  • 原文地址:https://www.cnblogs.com/gaopeng527/p/4418583.html
Copyright © 2011-2022 走看看