Java实现登录和注册案例

本文实例为大家分享了Java实现登录和注册的具体代码,供大家参考,具体内容如下

登录和注册案例的分析:

我们在完成一个需求时,需要面向对象,我们必须找到能完成某个功能的类,接着调用里面的方法来完成它。而这些类我们要进行分包,在不同包下实现,Java中的分包:
com.edu.domain — 标准的Java描述类
com.edu.dao — 存放的是接口
com.edu.daoimpl — 存放的是接口的实现类
com.edu.util — 对对象进行操作的工具类
com.edu.test — 测试类

登录和注册案例用到的类:

用户类:

成员变量:用户名,密码
成员方法:登录,注册功能

测试类:

main

登录和注册案例中用到的类的详细分解:

(1)用户类(User):用户名,密码,邮箱,电话号码等等各种注册时会用到的东西。我们在实现这个登录和注册案例的时候只需要用户名和密码就够了。这是一个标准Java描述类。

package com.edu.domain;

public class User {
    private String userName;
    private String passWord;
    public String getUserName() {
        return userName;
    }
    public void setUserName(String userName) {
        this.userName = userName;
    }
    public String getPassWord() {
        return passWord;
    }
    public void setPassWord(String passWord) {
        this.passWord = passWord;
    }
    public User(String userName, String passWord) {
        super();
        this.userName = userName;
        this.passWord = passWord;
    }
    public User() {
        super();
        // TODO Auto-generated constructor stub
    }

}

(2)我们需要定义一个接口(UserDao)来定义注册和登录功能。接口就是对类的功能的一种扩展,它的本质是用来定义规则的。

package com.edu.dao;

import com.edu.domain.User;

public interface UserDao {
    //这个接口保证两个功能

        //注册
        public abstract void regist(User user);
        //登录
        public abstract boolean isLogin(String userName,String passWord);

}

(3)用户操作类(UserDaoImpl),也就是之前定义的接口UserDao的实现类。

package com.edu.dao.impl;

import java.util.ArrayList;

import com.edu.dao.UserDao;
import com.edu.domain.User;

public class UserDaoImpl implements UserDao{

    //创建一个集合,定义为公有的
    static ArrayList<User> users=new ArrayList<User>();
    //注册方法:把用户信息存放到集合中
    @Override
    public void regist(User user) {
        // TODO Auto-generated method stub
        users.add(user);

    }

    //登录功能:校验用户名和密码是否正确,正确返回true,否则返回false
    @Override
    public boolean isLogin(String userName, String passWord) {
        // TODO Auto-generated method stub
        boolean flag = false;
        for (User user : users) {
            if(userName.equals(user.getUserName())&&passWord.equals(user.getPassWord())){
                flag = true;
                break;
            }
        }
        return flag;
    }

}

(4)在用户完成注册登录后,我们可以实现某种功能了,例如:猜数字小游戏。再建一个游戏类(GuessNumber)。

package com.edu.game;

import java.util.Scanner;

public class GuessNumber {
    public static void playGame() {
        //获取一个一到一百之间的随机数
        int random = (int) (Math.random()*100+1);

        //创建键盘录入对象,获取键盘录入数据
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入所猜测的数字:");
        int number = sc.nextInt();

        //创建while死循环
        while (true) {
            if (number>random) {
                System.out.println("大了,请重新输入:");
                number = sc.nextInt();
            }
            if (number<random) {
                System.out.println("小了,请重新输入:");
                number=sc.nextInt();
            }
            if (number==random) {
                System.out.println("恭喜你答对了!");
                break;
            }
        }

    }

}

(5)测试类(Test)。

package com.edu.test;

import java.util.Scanner;

import com.edu.dao.impl.UserDaoImpl;
import com.edu.domain.User;
import com.edu.game.GuessNumber;

public class Test {
    public static void main(String[] args) {
        while(true){
        //首先给出提示
        System.out.println("欢迎进入注册登录界面:");
        System.out.println("1.注册");
        System.out.println("2.登录");
        System.out.println("3.退出");

        //创建一个用户操作类
        UserDaoImpl udi = new UserDaoImpl();

        //创建键盘录入对象,并获取键盘录入数据
        Scanner sc = new Scanner(System.in);
        String choice = sc.nextLine();

        //利用switch循环来判断
        switch (choice) {
        case "1":
            System.out.println("欢迎来到注册界面!");
            System.out.println("请输入用户名:");
            String userName = sc.nextLine();
            System.out.println("请输入密码:");
            String passWord = sc.nextLine();
            //把用户名和密码封装成一个用户类对象
            User user = new User(userName,passWord);
            //通过用户操作类对象调用注册方法
            udi.regist(user);
            System.out.println("注册成功!");
            break;
        case "2":
            System.out.println("欢迎来到登录界面!");
            System.out.println("请输入用户名:");
            String inputUserName = sc.nextLine();
            System.out.println("请输入密码:");
            String inputPassWord = sc.nextLine();
            //通过用户操作类对象调用登录方法
            boolean flag = udi.isLogin(inputUserName,inputPassWord);
            if (flag) {
                System.out.println("登录成功,玩游戏吧!");
                GuessNumber.playGame();
            }else{
                System.out.println("登录失败!");
            }   
            break;
        case "3":
        default:
            //对于3或者其他数字的选择,都直接退出系统
            System.exit(0);
            break;
        }

    }
    }
}

运行结果:

注册和登录的运行结果:

猜数字游戏结束后退出系统:

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • Servlet+JavaBean+JSP打造Java Web注册与登录功能

    采用Java Web所实现的MVC结构图如下,其中控制器部分采用Servlet来实现,模型部分采用JavaBean来实现,而大部分的视图采用Jsp页面来实现. 思想基础 JSP+JavaBean两层结构工作原理应该是比较熟悉的,也比较好理解. 但是有一点必须要清楚就是用户通过浏览器来发送网页的请求,此请求到达服务器后在服务器端查找对应的网页,如果是首次请求(第二次就不用解释执行了),对于JSP来说要生成Servlet,然后通过Servlet引擎来执行 Servlet,把调用JavaBean的结果

  • Java实现登录与注册页面

    用java实现的登录与注册页面,实现了客户端(浏览器)到服务器(Tomcat)再到后端(servlet程序)数据的交互.这里在注册页面加入了验证码验证. 注册的html代码,页面非常丑!!请见谅.. <body> <fieldset id="">   <legend>注册页面</legend>   <form action="/day02/register2" method="post" id

  • Java+mysql用户注册登录功能

    最近刚刚开始学习mysql,所以就写了这个很基本的用户注册登录的功能来练练手.虽然这个很简单,但是我还是看到了自己学习的进步,很开心.哈哈哈. 这里要注意数据表的建立: 直接上代码吧,里面注释很详细了. package client; import java.sql.*; import java.util.*; public class Client { /** * 用以实现用户的注册和登录 */ private static String username;//用户登录注册的姓名 privat

  • JavaWeb简单用户登录注册实例代码(有验证码)

    需求 编写login登录界面(用户名,密码,验证码,登陆按钮,注册按钮) 设计关系数据库(编号,用户名,密码) 编写注册功能,将数据存储在数据库中.(姓名不能重复,设为主键,重复会注册失败) 编写登录功能 .首先获取验证码,先判断验证码是否正确,不正确则显示验证码错误.验证码正确后再获取用户名和密码,进行数据库的搜索比对,若正确则重定向到成功的界面,并且将用户名显示. jar包 技术选型 Servlet + JSP + Mysql + JDBCTemplate + Druid + BeanUti

  • JavaWeb实现用户登录注册功能实例代码(基于Servlet+JSP+JavaBean模式)

    下面通过通过图文并茂的方式给大家介绍JavaWeb实现用户登录注册功能实例代码,一起看看吧. 一.Servlet+JSP+JavaBean开发模式(MVC)介绍 Servlet+JSP+JavaBean模式(MVC)适合开发复杂的web应用,在这种模式下,servlet负责处理用户请求,jsp负责数据显示,javabean负责封装数据. Servlet+JSP+JavaBean模式程序各个模块之间层次清晰,web开发推荐采用此种模式. 这里以一个最常用的用户登录注册程序来讲解Servlet+JS

  • Java实现简单登录注册

    本文实例为大家分享了Java实现简单登录注册的具体代码,供大家参考,具体内容如下 一.登录 1. 内容介绍 定义一个内置的账号和密码,写好账号输入.密码输入.随机验证码生成.验证码输入方法(3个输入方法没有使用重载)以及账号密码验证码比较方法.调用这些方法实现简单的控制台登录. 2. 思路解析 方法调用.优先判断验证码,在判断账号最后判断密码. 3. 代码实现 import java.util.Random; import java.util.Scanner; public class Logi

  • JAVA简单实现MD5注册登录加密实例代码

    开发环境:jdk1.7,eclipse 框架:springmvc,mybatis 工具:maven 以下代码复制即可实现MD5加密 创建一个mave项目,加web.不懂得可以搜索一下就有了. 注册用户的JSP页面代码如下. <%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%> <!DOCTYPE html PU

  • Java基于IO流实现登录和注册功能

    案例分析: 我们之前做过的登录注册案例是把用户信息存进集合里,要用IO流实现的话,就是要把用户信息存入文件中.登录注册两个功能的具体实现是在用户操作类中,所以我们只需要在用户操作类中把之前用户信息存进集合改为存进文件就可以了. 用到的类的详细分解: (1)用户类(User):用户名,密码,邮箱,电话号码等等各种注册时会用到的东西.我们在实现这个登录和注册案例的时候只需要用户名和密码就够了.这是一个标准Java描述类. package com.edu.domain; public class Us

  • Java使用IO模拟注册登录

    本文实例为大家分享了Java使用IO模拟注册登录的具体代码,供大家参考,具体内容如下 user的pojo类 package cn.lg.pojo; public class User {     private String username;     private String password;     public String getUsername() {         return username;     }     public void setUsername(Strin

  • Java简易登录注册小程序

    登录注册小代码,将学过的一些小知识融合在一起进行了使用,加深印象.本例中如果有注释不详细的地方,详见其它博客. 功能介绍:简单的登录注册系统,使用了数据库sqlserver.单例模式.正则表达式以及图形化开发等知识. 1.在登录界面,可以登录或者注册用户. 注册用户界面,按照正则表达式规定的格式要求来输入信息,若有误,则重新输入. 2.点击注册,首先连接SQLserver数据库,连接成功则会判断该用户名是否已经存在,若存在,则给出提示.反之则进行注册. 3.登录界面,点击登录按钮时,首先与数据库

随机推荐