import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class RegisterBean {
    private String userName = "";
    private String errorName = "";
    
    private String age = "";
    private String errorAge = "";
    
    private String email = "";
    private String errorEmail = "";
    
    public String getUserName() {
        return userName;
    }
    public void setUserName(String userName) {
        this.userName = userName;
    }
    public String getErrorName() {
        return errorName;
    }
    public void setErrorName(String errorName) {
        this.errorName = errorName;
    }
    public String getAge() {
        return age;
    }
    public void setAge(String age) {
        this.age = age;
    }
    public String getErrorAge() {
        return errorAge;
    }
    public void setErrorAge(String errorAge) {
        this.errorAge = errorAge;
    }
    public String getEmail() {
        return email;
    }
    public void setEmail(String email) {
        this.email = email;
    }
    public String getErrorEmail() {
        return errorEmail;
    }
    public void setErrorEmail(String errorEmail) {
        this.errorEmail = errorEmail;
    }
    
    
    public  boolean nameChecked(){
        //验证
        String regex ="^[a-zA-Z0-9]{6,15}$";
        Pattern pattern = Pattern.compile(regex);
        Matcher matcher =pattern.matcher(this.userName);        
        if ( matcher.matches()) {
            this.errorName="";
            return true;
        }else{
            this.errorName="用户名必须是6-15个字母或数字组成";
            this.userName="";
        }
        
        return false;
    }

public  boolean emailChecked(){
        
        String regex ="^[A-z0-9]{1,}@[A-z]{1,}.(com|org)$";
        Pattern pattern = Pattern.compile(regex);
        Matcher matcher =pattern.matcher(this.email);
        if (matcher.matches()) {
            this.errorEmail="";
            return true;
        }
        else{
            this.errorEmail="邮箱不合法";
        this.email="";
        }
        return false;
    }

//验证年龄
    public   boolean ageChecked(){    
        String regex ="^[0-9]{2}$";
        Pattern pattern = Pattern.compile(regex);
        Matcher matcher =pattern.matcher(this.age);
        if (matcher.matches()) {
            this.errorAge="";
            return true;
        }
        else{
            this.errorAge="年龄必须是0-9 的一到两位数";
        this.age="";
        }
        return false;
    }

public boolean check(){
        boolean a = false ;
        boolean b = false ;
        boolean c = false ;
        a=nameChecked();
        b=emailChecked();
        c=ageChecked();
        
        if(a&&b&&c){
            return true;
        }else {
            return false;
        }
                
    }
}
______Register.jsp_____________________________________________________________________________

<%@ page language= "java" contentType="text/html;charset=UTF-8" %>
<jsp:useBean id = "register"  scope="session" class="com.lovo.javaBean.RegisterBean"/>
<html>
    <head>
        <meta charset="utf-8">
        <title>注册</title>
    </head>
    <body>
    
            <!-- 计算器表单数据填写 -->
        <form action="RegisterServlet.do" method="post" >
            <table>
                    
                <tr>
                    <td>用户名:</td>
                    <td><input type="text" name="userName" value=<%=register.getUserName()%>></td>
                    <td><%=register.getErrorName() %></td>
                    
                </tr>
                
                <tr>
                    <td>年&nbsp;龄:</td>
                    <td><input type="text" name="age" value=<%=register.getAge() %>></td>
                    <td><%=register.getErrorAge() %></td>
                </tr>
                
                <tr>
                    <td>邮&nbsp;箱:</td>
                    <td><input type="text" name="email"  value=<%=register.getEmail() %>></td>
                    <td><%=register.getErrorEmail() %></td>
                </tr>
                <br>
                <tr>
                    <td><input type="submit" value="注册"></td>
                    <td><input type="submit" value="重置"></td>
                </tr>
            </table>
        </form>
    
    </body>

</html>

__________RegisterServlet_______________________________________________________________________

import java.io.IOException;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

import com.lovo.javaBean.RegisterBean;

/**
 * Servlet implementation class RegisterServlet
 */
@WebServlet("/RegisterServlet.do")
public class RegisterServlet extends HttpServlet {
    private static final long serialVersionUID = 1L;
       
    /**
     * @see HttpServlet#HttpServlet()
     */
    public RegisterServlet() {
        super();
        // TODO Auto-generated constructor stub
    }

/**
     * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
     */
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        doPost(request, response);
    }

/**
     * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
     */
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        request.setCharacterEncoding("UTF-8");
        String userName=request.getParameter("userName");
        String age=request.getParameter("age");
        String email= request.getParameter("email");
        
        RegisterBean registerBean= new RegisterBean();
        registerBean.setUserName(userName);
        registerBean.setAge(age);
        registerBean.setEmail(email);
        
        HttpSession session = request.getSession();
        session.setAttribute("register", registerBean);
        
        if (registerBean.check()) {
            request.getRequestDispatcher("RegisterSuccess.jsp").forward(request, response);
        }else {
            request.getRequestDispatcher("Register.jsp").forward(request, response);
        }
    }

}
__RegisterSuccess.jsp_____________________________________________________________________________

<%@ page language= "java" contentType="text/html;charset=UTF-8" %>
<jsp:useBean id = "register"  scope="session" class="com.lovo.javaBean.RegisterBean"/>
<html >
<head>
    <meta charset="UTF-8">
    <title>注册成功</title>
</head>
<body>
   <h3>注册成功</h3>
   <jsp:setProperty property="*" name="register" /><%--获取表单数据 --%>
        <h3>用户名:<%=register.getUserName()%></h3>
        <h3>年龄:<%=register.getAge() %></h3>
        <h3>邮箱:<%=register.getEmail()%></h3>
</body>
</html>

JSP开发模式2_JSP/Servlet/JavaBean(简单注册功能)的更多相关文章

  1. JSP内置标签 JSP中JavaBean标签 JSP开发模式 EL和JSTL快速入门

    2 JSP内置标签(美化+业务逻辑)   1)为了取代<%%>脚本形式,使用JSP标签/JSP动作,目的:与JSP页面的美化,即JSP面页都是由标签组成,不再有其它的内容   2)JSP内 ...

  2. JSP运行过程 JSP脚本 静态动态包含 jsp指令 jsp内置对象jsp四大作用域 jsp动作元素 EL表达式 JSTL 设计模式 JSP开发模式 EL内置对象

    Day38 JSP JSP的运行过程具体如下: (1)客户端发出请求,请求访问JSP文件. (2)JSP容器先将JSP文件转换成一个Java源文件(Java Servlet源程序),在转换过程中,如果 ...

  3. 十五 JSP开发模式&MVC设计模式

    JSP开发模式: JavaBean + JSP  : 缺点:页面代码过多,不利于维护,JSP页面代码变得臃肿 Servlet + JavaBean + JSP :MVC设计模式 M:model   模 ...

  4. Python Django 实现简单注册功能

    Python Django 实现简单注册功能 项目创建略,可参考前期文档介绍. 目录结构如下 编辑views.py from django.shortcuts import render # Crea ...

  5. MVC开发模式之Servlet+jsp+javaBean

    Servlet+jsp+JavaBean组合开发是一种MVC开发模式,控制器Controller采用Servlet.模型Model采用JavaBean.视图View采用JSP. 1.Web开发的请求- ...

  6. Tip: JSP开发模式

    SUN公司推出JSP技术后,同时也推荐了两种web应用程序的开发模式,一种是JSP+JavaBean模式,一种是Servlet+JSP+JavaBean模式. JSP+JavaBean模式适合开发业务 ...

  7. JavaEE——JSP开发模式(model1)

    model1开发模式 工作流程: ①浏览器请求,JSP页面接收 ②JSP根据请求和JavaBean进行交互 ③JavaBean进行业务处理,JDBC操纵数据库 ④JSP将请求结果返回浏览器页面 利用m ...

  8. JSP开发模式1(简单注册功能)

    ———————————————————————————————————————————————— import java.util.regex.Matcher;import java.util.reg ...

  9. JavaBean+jsp开发模式 --结合form表单 实例

    1.创建form表单 <%@ page language="java" contentType="text/html; charset=UTF-8" pa ...

随机推荐

  1. Python基础篇【第6篇】: Python装饰器

    装饰器 装饰器模式(Decorator Pattern)允许向一个现有的对象添加新的功能,同时又不改变其结构.这种类型的设计模式属于结构型模式,它是作为现有的类的一个包装. 这种模式创建了一个装饰类, ...

  2. Centos 7 在VBox下不能联网

    摘要: 在Virtual Box下选择了Bridge Adaptor模式,安装CENTOS 7,网络连接一直都没有问题,后来不知道什么缘故就突然不能联网,很是烦恼,查询了很多网络方面的配置信息,也做了 ...

  3. 高斯模糊算法的 C++ 实现

    2008 年在一个 PS 讨论群里,有网友不解 Photoshop 的高斯模糊中的半径是什么含义,因此当时我写了这篇文章: 对Photoshop高斯模糊滤镜的算法总结: 在那篇文章中,主要讲解了高斯模 ...

  4. Python-5 数据类型、操作符

    #1 数值类型: 整型int.浮点型float(科学记数法 e 或 E).布尔型bool #2 字符串: 与整型.浮点型转化:int()--截断处理 float() str() #3 获取数据类型: ...

  5. js的事件的绑定

    js的绑定事件 绑定事件有什么用,当你一个按钮点击时需要执行2个函数,就可以用绑定事件,一般只有没绑定事件增加两个onclick函数,第二会覆盖第一个函数的. <!DOCTYPE html> ...

  6. java httpclient cookie

    BasicCookieStore cookieStore = new BasicCookieStore();BasicClientCookie cookie = new BasicClientCook ...

  7. MCV之行为

    在Controller中的方法都称为行为,所以的公共方法都可以在浏览器中调用,返回值为:ActionResult的类型或其子类,这个类为抽象类,所以这为抽象编程,方法的结果返回为直接或间接继承自Act ...

  8. MS AX 技术相关网站收藏

    Microsoft Dynamics AX Developer Centerhttps://msdn.microsoft.com/en-us/dynamics/ax/default.aspx From ...

  9. Ubuntu下使用SVN

      SVN作为日常开发中不可缺少的工具,今天终于开始在Ubuntu下使用了. 1.首先需要安装SVN.Ubuntu下的SVN安装十分简单,sudo apt-get install subversion ...

  10. go语言环境搭建+sublime text3(windows环境下)

    感觉有点坑,整了一下午~搞定 go语言环境搭建+sublime text3(windows环境下) 1.安装sublime text3 2.安装go语言程序包 3.测试go语言是否安装成功     键 ...