当前位置: 首页 > article >正文

宠物管理系统(2):utils

        这篇文章介绍写这个系统中使用到的工具类。

        验证码生成器

package com.wzb.utils.captcha;

import java.util.Random;

public class CaptchaUtils {
    // 定义包含数字和大小写字母的字符集
    private static final String CHAR_POOL = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";

    // 生成指定长度的验证码
    public static String generateCode(int length) {
        StringBuilder code = new StringBuilder();
        Random random = new Random();

        // 从字符池中随机选取字符
        for (int i = 0; i < length; i++) {
            int index = random.nextInt(CHAR_POOL.length());
            code.append(CHAR_POOL.charAt(index));
        }

        return code.toString();
    }
}

        md5密码加密工具

package com.wzb.utils.md5;

import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;

public class MD5Util {

    // MD5加密方法
    public static String md5(String input) {
        try {
            // 创建 MessageDigest 实例,指定 MD5 算法
            MessageDigest md = MessageDigest.getInstance("MD5");

            // 更新 MessageDigest 实例,提供待加密的数据
            md.update(input.getBytes());

            // 进行加密,得到字节数组
            byte[] digest = md.digest();

            // 转换为十六进制字符串
            StringBuilder hexString = new StringBuilder();
            for (byte b : digest) {
                // 将每个字节转为两位的十六进制数
                String hex = Integer.toHexString(0xFF & b);
                if (hex.length() == 1) {
                    hexString.append('0');
                }
                hexString.append(hex);
            }

            // 返回加密后的结果
            return hexString.toString();
        } catch (NoSuchAlgorithmException e) {
            e.printStackTrace();
            return null; // 如果出现异常,返回 null
        }
    }
}

        控制台等待工具

package com.wzb.utils.wait;

public class Wait {
    public static void waitMoments() throws InterruptedException {
        for (int i = 0; i < 6; i++) {
            System.out.print(".");
            Thread.sleep(500);
        }
        System.out.println();
    }
}

        各种显示的菜单

        主菜单

package com.wzb.utils.menu;

public class MainMenu {

    public static void showMainMenu() {
        System.out.println("\t\t\t\t\tWelcome to pet system");
        System.out.println("\t\t\t************************************");
        System.out.println("\t\t\t\t\t     请输入数字选择:");
        System.out.println("\t\t\t\t\t     1.用户操作");
        System.out.println("\t\t\t\t\t     2.宠物操作");
        System.out.println("\t\t\t\t\t     0.退出系统");

        System.out.println("输入你的选择-->");
    }
}

         用户登录菜单

package com.wzb.utils.menu.user;

public class UserLoginMenu {
    public static void showUserLoginMenu() {
        System.out.println("\t\t\t\t\tWelcome to user login system");
        System.out.println("\t\t\t*******************************************");
        System.out.println("\t\t\t\t\t     请输入数字选择:");
        System.out.println("\t\t\t\t\t     1.登录");
        System.out.println("\t\t\t\t\t     2.注册");
        System.out.println("\t\t\t\t\t     0.返回上级");
        System.out.println("输入你的选择-->");
    }
}

        用户主菜单

package com.wzb.utils.menu.user;

public class UserMenu {
    public static void showUserMenu() {
        System.out.println("\t\t\t\t\tWelcome to User system");
        System.out.println("\t\t\t************************************");
        System.out.println("\t\t\t\t\t     请输入数字选择:");
        System.out.println("\t\t\t\t\t     1.个人信息");
        System.out.println("\t\t\t\t\t     2.浏览宠物");
        System.out.println("\t\t\t\t\t     3.账户充值");
        System.out.println("\t\t\t\t\t     4.修改密码");
        System.out.println("\t\t\t\t\t     5.配送地址");
        System.out.println("\t\t\t\t\t     6.注销账号");
        System.out.println("\t\t\t\t\t     0.退出登录");
        System.out.println("输入你的选择-->");
    }

}

        宠物主菜单

package com.wzb.utils.menu.pet;

public class PetMenu {
    public static void showPetMenu() {
        System.out.println("\t\t\t\t\tWelcome to pet system");
        System.out.println("\t\t\t************************************");
        System.out.println("\t\t\t\t\t     请输入数字选择:");
        System.out.println("\t\t\t\t\t     1.查看所有宠物");
        System.out.println("\t\t\t\t\t     2.新增一个宠物");
        System.out.println("\t\t\t\t\t     3.删除一个宠物");
        System.out.println("\t\t\t\t\t     4.修改一个宠物");
        System.out.println("\t\t\t\t\t     5.查看一个宠物");
        System.out.println("\t\t\t\t\t     0.返回上一级");
        System.out.println("输入你的选择-->");
    }
}

        商店菜单

package com.wzb.utils.menu.shop;

public class ShopMenu {
    public static void showShopMenu() {
        System.out.println("\t\t\t\t\tWelcome to shop system");
        System.out.println("\t\t\t************************************");
        System.out.println("\t\t\t\t\t     请输入数字选择:");
        System.out.println("\t\t\t\t\t     1.查看所有宠物");
        System.out.println("\t\t\t\t\t     2.添加购物车");
        System.out.println("\t\t\t\t\t     3.查看购物车");
        System.out.println("\t\t\t\t\t     4.结算");
        System.out.println("\t\t\t\t\t     0.返回上一级");
        System.out.println("输入你的选择-->");
    }
}

        管理员菜单

package com.wzb.utils.menu.admin;

public class AdminMenu {
    public static void showAdminMenu() {
        System.out.println("\t\t\t\t\tWelcome to admin system");
        System.out.println("\t\t\t************************************");
        System.out.println("\t\t\t\t\t     请输入数字选择:");
        System.out.println("\t\t\t\t\t     1.查看所有用户");
        System.out.println("\t\t\t\t\t     2.删除一个用户");
        System.out.println("\t\t\t\t\t     3.禁用一个用户");
        System.out.println("\t\t\t\t\t     4.修改一个用户");
        System.out.println("\t\t\t\t\t     5.查看一个用户");
        System.out.println("\t\t\t\t\t     6.查看管理员信息");
        System.out.println("\t\t\t\t\t     0.退出登录");

        System.out.println("输入你的选择-->");
    }
}

 

 

 

 

 

 

 


http://www.kler.cn/a/446873.html

相关文章:

  • Redis篇--常见问题篇5--热Key(Hot Key,什么是热Key,服务降级,一致性哈希)
  • P1305 新二叉树
  • 国家认可的人工智能从业人员证书如何报考?
  • 台球助教平台系统开发APP和小程序信息收藏功能需求解析(第十二章)
  • MVVM、MVC、MVP 的区别
  • CPU性能优化--函数分组
  • LeetCode136. 只出现一次的数字(2024冬季每日一题 38)
  • 基于SpringBoot+layui+html实现电影院售票系统【源码+数据库文件+包部署成功+答疑解惑问到会为止】
  • 相机(Camera)成像原理详解
  • JavaScript中,常用crypto模块进行rsa加密,crypto-js模块进行md5算法
  • 【数据库】SQL语句基础
  • Java中正则表达式的介绍、使用场景及示例代码
  • Java学习,输出数组元素
  • 31.设计模式
  • Element@2.15.14-tree checkStrictly 状态实现父项联动子项,实现节点自定义编辑、新增、删除功能
  • Java基础面试题17:GenericServlet和HttpServlet有什么区别?
  • 【Java】mac安装Java17(JDK17)
  • 前端数据持久化指南:LocalStorage、SessionStorage 等的区别与应用
  • 从零用java实现 小红书 springboot vue uniapp (4)个人主页优化
  • 首个!艾灵参编的工业边缘计算国家标准正式发布
  • Epic游戏使用mod
  • MySQL通过日志恢复数据的步骤
  • Java中的方法重写:深入解析与最佳实践
  • debian linux 连网自动调整时间 (报错 Unit systemd-timesyncd.service could not be found.)
  • .NET周刊【12月第2期 2024-12-08】
  • pytorch离线安装步骤