Java实现用户管理系统

基于Java的简单的用户管理系统,供大家参考,具体内容如下

此系统功能和方法都比较简单

本次系统通过控制台输入商品的基本信息,加入管理员的登录与对是否为管理员进行操作

对于功能的实现,分别定义了3个类

用户基本属性类

此类包含用户id、账号、密码、年龄、角色(是否为管理员)、邮箱、办事处、账户状态

private int id;// id号
private String username;// 账号
private String password;// 密码
private int age;// 年龄
private String role;// 角色
private String email;// 邮箱
private String officeID;// 办事处
private String status;// 账户状态

通过快捷键方法快速生成其属性get/set方法与构造器

@Override
public String toString() {
        return id + "\t" + username + "\t" + password + "\t" + age + "\t" + role + "\t" + email + "\t" + officeID + "\t"
                + status;
    }

public User(int id, String username, String password, int age, String role, String email, String officeID,
            String status) {
        super();
        this.id = id;
        this.username = username;
        this.password = password;
        this.age = age;
        this.role = role;
        this.email = email;
        this.officeID = officeID;
        this.status = status;
    }

    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    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 int getAge() {
        return age;
    }

    public void setAge(int age) {
        this.age = age;
    }

    public String getRole() {
        return role;
    }

    public void setRole(String role) {
        this.role = role;
    }

    public String getEmail() {
        return email;
    }

    public void setEmail(String email) {
        this.email = email;
    }

    public String getOfficeID() {
        return officeID;
    }

    public void setOfficeID(String officeID) {
        this.officeID = officeID;
    }

    public String getStatus() {
        return status;
    }

    public void setStatus(String status) {
        this.status = status;
    }

完成对用户属性的定义

在新类中对用户属性进行修饰和功能的实现

通过ArrayList动态数组能够对数组的基本信息进行存储

Scanner方法来使用控制台输入功能,结合方法来输入对应的信息

static int i = 0;
    String[] admin = { "admin", "admin123" };
    static ArrayList<User> list = new ArrayList<>();
    private Scanner sc = new Scanner(System.in);

用简单的if/else语句和for循环结合来实现增删改查功能
用户的增添与密码的修改实习了控制台输入与修改信息的能力

/**1-用户添加*/
    public void add(User u) {
        list.add(u);
    }
    
    /** 2-密码修改(根据Id修改密码) */
    public boolean modifypassword(int id, String password) {
        User user = findById(id);
        if (user != null) {
            user.setPassword(password);
            return true;
        }

        return false;
    }
    /** 3-根据ID查看个人信息 */
    public User findById(int id) {
        User us = null;
        for (User u : list) {
            if (u.getId() == id) {
                us = u;
                break;
            }
        }
        return us;
    }
    /** 4-根据ID修改账号状态(禁用0、启用1)*/
    public boolean modifystatus(int id, String status) {
        User user = findById(id);
        if (user != null) {
            user.setStatus(status);
            return true;
        }

        return false;
    }
    /** 5-用户登录*/
    public void register() {
        System.out.println("请输入用户名:");
        if (sc.next().equals(admin[0])) {
            System.out.println("请输入密码:");
            if (sc.next().equals(admin[1])) {
                System.out.println("登录成功!");
            } else {
                System.out.println("密码错误!请重新输入!");
                register();
            }
        } else {
            System.out.println("用户名错误!请重新输入!");
            register();
        }
    }
    /** 6-修改用户角色(设置取消管理员) */
    public boolean modifyrole(int id, String role) {
        User user = findById(id);
        if (user != null) {
            user.setRole(role);
            return true;
        }
        return false;
    }
    /** 7-用户列表*/
    public ArrayList<User> findAll() {
        return list;
    }
    /** 8-删除用户*/
    public boolean delete(int id) {
        User user = findById(id);
        if (user != null) {
            return list.remove(user);
        }
        return false;
    }

由此就通过方法对一些必要的功能进行了完成
再通过另一个主窗口类对其他类进行功能的调用与界面信息的完成

创建main程序入口类,并且在类中完成输入界面与指令

输入窗口的指令界面

private UserModule um = new UserModule();
private Scanner sc = new Scanner(System.in);

    /** 输入窗口的指令界面 */
    public void menu() {
        msg("=====================================");
        msg("======SOFTEEM用户管理系统================");
        msg("======【1】用户添加======================");
        msg("======【2】密码修改======================");
        msg("======【3】个人信息查看===================");
        msg("======【4】账号状态修改(禁用0、启用1)========");
        msg("======【5】用户登录=======================");
        msg("======【6】修改用户角色(设置取消管理员)=======");
        msg("======【7】用户列表======================");
        msg("======【8】删除用户======================");
        msg("======【0】退出系统======================");
        msg("请输入操作指令: ");
        start();
    }

通过基础语句switch完成程序按键的入口

 /** 程序按键入口 */
private void start() {
        sc = new Scanner(System.in);
        int i = sc.nextInt();
        switch (i) {
        case 1:
            add();
            break;
        case 2:
             alter();
            break;
        case 3:
            queryById();
            break;
        case 4:
            thestatus();
            break;
        case 5:
            enter();
            break;
        case 6:
            update();
            break;
        case 7:
            list();
            break;
        case 8:daima
            delete();
            break;
        case 0:
            exit();
            break;
        default:
            msg("请输入正确的操作指令!!!");
            break;
        }
        menu();
    }

此方法能够处理经常使用输出窗口的代码麻烦,直接调用此内部方法实现输出语句,更简洁的完成输出语句

 /** 能够兼容输入的属性 */
    public void msg(Object obj) {
        System.out.println(obj);
    }

结合上一个类中的方法完成对用户的添加功能,后续的功能与此功能一样,再switch语句中有输入窗口能够调用此类方法

/** 1-用户添加的客户端实现 */
private void add() {
        msg("请输入用户信息:((按以下格式:Id/账号/密码/年龄/角色/邮箱/办事处/账户状态))");
        sc = new Scanner(System.in);
        String s = sc.nextLine();
        // 根据"/"截取用户信息
        String[] info = s.split("/");
        if (um.findById(Integer.parseInt(info[0])) != null) {
            msg("该ID用户已存在,请重新输入");
            add();
            return;
        } else {
            User u = new User(Integer.parseInt(info[0]), info[1], info[2], Integer.parseInt(info[3]), info[4], info[5],
                    info[6], info[7]);
            um.add(u);
            msg("添加成功!");
        }
    }

根据用户ID修改其密码,简单的判断语句对密码信息确认与修改

/** 2-根据ID修改密码 */
private void alter() {
        sc = new Scanner(System.in);
        msg("请输入用户的ID:");
        int id = sc.nextInt();
        msg("密码修改为:");
        String passwor = sc.next();
        if (um.modifypassword(id, passwor)) {
            msg("修改成功!");
        } else {
            msg("修改失败!");
        }
    }

通过ID来查看用户的个人信息

/** 3-个人信息查看 */
    private void queryById() {
        sc = new Scanner(System.in);
        msg("请输入需要查询的用户ID");
        int id = sc.nextInt();
        User u = um.findById(id);
        if (u == null) {
            msg(id + "号不存在,请重新输入");
            queryById();
            return;
        }
        msg("Id\t账号\t密码\t\t年龄\t角色\t邮箱\t\t办事处\t账户状态\t");
        msg(u);
    }

输入用户ID后对其状态(是否禁用)进行修改

/** 4-账号状态修改(禁用0、启用1)*/
private void thestatus() {
        sc = new Scanner(System.in);
        msg("请输入用户ID:");
        int id = sc.nextInt();
        msg("账号状态修改(0/1):");
        String status = sc.next();
        if (um.modifystatus(id, status)) {
            msg("修改成功!");
        } else {
            msg("修改失败!");
        }
    }

结合之前定义的用户信息,实现简单的用户登录功能

/** 5-用户登录*/
    private void enter(){
        UserModule um = new UserModule();
        um.register();
    }

修改用户角色(是否为管理员),给其权限

 /** 6-修改用户角色*/
 private void update() {
        sc = new Scanner(System.in);
        msg("请输入用户ID:");
        int id = sc.nextInt();
        msg("角色修改(是否为管理员):");
        String role = sc.next();
        if (um.modifyrole(id, role)) {
            msg("修改成功!");
        } else {
            msg("修改失败!");
        }
    }

将已存入的用户信息列表化输出

/** 7-用户列表*/
    private void list() {
        msg("Id\t账号\t密码\t\t年龄\t角色\t邮箱\t\t办事处\t账户状态\t");
        for (User u : um.findAll()) {
            msg(u);
        }
    }

删除功能,根据ID删除存入数组的用户信息

/** 8-根据ID删除用户*/
private void delete() {
        sc = new Scanner(System.in);
        msg("请输入用户ID:");
        int id = sc.nextInt();
        if (um.delete(id)) {
            msg("删除成功!");
        } else {
            msg("删除失败!");
        }
    }

外加一个简单的退出系统的功能,不用鼠标关闭Console窗口

/** 0-体统退出 */
private void exit() {
        sc = new Scanner(System.in);
        msg("是否确定退出?(Y/N)");
        String op = sc.next();
        if (op.equalsIgnoreCase("Y")) {
            msg("谢谢使用,再见!");
            System.exit(1);
        }
    }

此类的程序执行入口,调用系统用户登录方法和主窗口方法,调用的方法中再实现所有功能

public static void main(String[] args) {
        TestUser tu = new TestUser();
        tu.enter();
        tu.menu();
    }

技术含量不高的完成了一个有用户登录,对用户信息进行增删改查功能的系统

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

(0)

相关推荐

  • java实现航空用户管理系统

    本文实例为大家分享了java实现航空用户管理系统的具体代码,供大家参考,具体内容如下 题目内容: 某航空公司在其航班到达的不同的国家的不同地方设有不同的办事处,这个项目要求开发一个自动化软件系统,该系统将提供给这些办事处的管理者(role=1)和普通用户(role=0)用于管理航班信息.根据以上描述,要求实现系统的用户模块和办事处模块,包含以下功能(注:系统存在一个默认管理员admin/admin123): 用户模块: 1. 用户添加 2. 密码修改 3. 个人信息查看 4. 账号状态修改(禁用

  • 详解Java快速上手用户后台管理系统

    目录 主要功能 登录功能 管理员列表 用户列表 订单管理 主要功能 管理员登录功能.管理员列表操作.用户列表操作.订单管理 登录功能 设计思路:前端页面获取输入的数据,然后发送Ajax请求,在servlet中获取数据并调用service层中的方法进行处理,service层中调用dao层的实现方法,最终servlet返回一个结果集,判断登录是否成功. login.html主要功能代码: <script> $(function () { $("#btn_login").clic

  • Java毕业设计之多用户宿舍管理系统的实现

    目录 介绍 开发技术 运行环境 开发工具 功能介绍 效果图 核心代码 介绍 项目编号:BS-GX-033 开发技术 后台:jsp+servlet+jdbc 前台:jsp+bootstrap 运行环境 数据库:mysql5.7 JDK: 1.8 Maven: 3.9 开发工具 IDEA /Eclipse 本系统基于jsp实现了一个宿舍管理系统,功能完整,界面美观大方,交互简洁方便,比较适合做毕业设计使用.主要分为三个角色用户:管理员,宿舍管理员,学生 功能介绍 系统管理员:用户管理.宿舍楼管理.楼

  • Java实现用户管理系统

    基于Java的简单的用户管理系统,供大家参考,具体内容如下 此系统功能和方法都比较简单 本次系统通过控制台输入商品的基本信息,加入管理员的登录与对是否为管理员进行操作 对于功能的实现,分别定义了3个类 用户基本属性类 此类包含用户id.账号.密码.年龄.角色(是否为管理员).邮箱.办事处.账户状态 private int id;// id号 private String username;// 账号 private String password;// 密码 private int age;//

  • Java版水果管理系统源码

    水果管理系统Java版分享给大家. 主类 FruitsDemo /** * 功能: * 1. 查看所有的水果 * 2. 添加新的水果(添加的时候判断水果名是否有重复) * 3. 对所有的水果进行排序(价格排序.库存排序) * 4. 删除指定的水果 * 5. 退出系统 * * 注意: * 1. 每种水果都必须有水果id,水果名,水果数量,水果价格 * 2. 添加水果时,要由用户输入水果名.数量和价格 * 3. 删除水果时要二次确认 * * 评分依据: 功能实现的情况,代码规范性(命名规范.格式规范

  • Java实现购物管理系统

    本文实例为大家分享了Java实现购物管理系统的具体代码,供大家参考,具体内容如下 重点内容 JAVA分支结构练习 动态数组 注册表读写删 代码: package Endless; import java.util.ArrayList; import java.util.Random; /** * @JAVA01.person1.java * @author 当前用户:Endless作者 :Endless * @version 创建时间:2017年7月26日 下午6:29:16 * //实现商品及

  • java实现酒店管理系统

    本文实例为大家分享了java实现酒店管理系统的具体代码,供大家参考,具体内容如下 编写环境:MyEclipse2014+sql server2014 系统功能: 1.登录验证 2.房态统计显示 3.预定登记并入库 4.入住登记并入库 5.换房登记并入库 6.客人信息查询 7.退房并入库 运行界面如下: =====登录界面====== =====主界面===== =====为每个房间设置弹出菜单====== =====登记界面====== =====换房界面===== =====退房界面=====

  • java实现图书馆管理系统

    本文实例为大家分享了java实现图书馆管理系统的具体代码,供大家参考,具体内容如下 思路:所有包都在book_manage包里 利用面向对象的多态特性去除了很多if-else的判断,不同的子类在父类所对应的方法不同. 1.首先建立一个book包 包里面有2个类,一个是Book,这个类里面包含一本书的全部信息 另外一个类是BookList,这个类是用来管理每一个书,通过这个类来寻找每一本书. private Book[] books = new Book[100]; Book数组里面存放所有的书.

  • java实现银行管理系统

    本文实例为大家分享了java实现银行管理系统的具体代码,供大家参考,具体内容如下 Bank类 package First; import java.util.TreeSet; //银行类 public class Bank { private String Bankname = "坑对对银行"; //银行名称 TreeSet<User> holder = null; //银行存储的信息 private static Bank INSTANCE = new Bank(); p

  • java实现通讯录管理系统

    本文实例为大家分享了java实现通讯录管理系统的具体代码,供大家参考,具体内容如下 完成项目的流程: 1.根据需求,确定大体方向 2.功能模块分析 3.界面实现 4.功能模块设计 5.coding 6.代码测试 下面是源代码: import java.awt.Container; import java.awt.GridLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import j

  • Java中文件管理系统FastDFS详解

    什么是FastDFS 很多以文件为载体的在线服务,如相册网站.视频网站等,都需要对文件进行管理,包括文件的存储.同步.访问(文件上传.文件下载)等,同时肯定会伴随着大容量存储和负载均衡的问题. 在日常的一些项目中,比如做用户的KYC认证等,也需要存储文件.图片.视频等.此时可以选择使用OSS云服务,也可以自己构建相对专业的文件管理系统. FastDFS是一个开源的轻量级分布式文件系统,用于解决大数据量存储和负载均衡等问题,并需要通过专有API进行访问.满足大容量文件存储问题,并保证高性能和高扩展

  • java实现图书管理系统

    本文通过实例为大家分享了java实现图书管理系统的具体代码,供大家参考,具体内容如下 一.背景介绍 通过一段时间java编程的学习,需要一个比较综合的实例来进行编程的练习,是一个对前段时间所学内容进行总合提升的一个契机.选择了图书管理系统,会用到的javaSE知识有:变量.包.继承.类.接口.循环结构等.是一个很综合的典例. 二.核心需求 1.用户可以登录到系统上 分为 管理员.普通用户两种角色,这两种不同的角色根据自己的身份可以实现不同的操作. 普通用户 a)查阅某个书籍的信息 b)借阅书籍

随机推荐