Java版图书馆管理系统

java版图书馆管理系统

功能:

登录、用户添加图书、查看所有图书、删除图书、修改图书

增删改查用的是ArrayList,登录用HashMap实现

源代码:

实体类:Books.java

工具类:bookutill.java

实现类:BookMange.java

测试类:BookStore.java

下面是Books.java的源代码:

package cn.hkd.entity;

public class Books {

    //图书ID
    private int bookid;
    //图书名称
    private String bookName;
    //作者
    private String bookAutor;
    //图书类别
    private String bookType;
    //图书价格
    private double bookPrice;

    @Override
    public String toString() {
        return "Books{" +
                "bookid=" + bookid +
                ", bookName='" + bookName + '\'' +
                ", bookAutor='" + bookAutor + '\'' +
                ", bookType='" + bookType + '\'' +
                ", bookPrice=" + bookPrice +
                '}';
    }

    public Books() {
    }

    public Books(int bookid, String bookName, String bookAutor, String bookType, double bookPrice) {
        this.bookid = bookid;
        this.bookName = bookName;
        this.bookAutor = bookAutor;
        this.bookType = bookType;
        this.bookPrice = bookPrice;
    }

    public void setBookid(int bookid) {
        this.bookid = bookid;
    }

    public void setBookName(String bookName) {
        this.bookName = bookName;
    }

    public void setBookAutor(String bookAutor) {
        this.bookAutor = bookAutor;
    }

    public void setBookType(String bookType) {
        this.bookType = bookType;
    }

    public void setBookPrice(double bookPrice) {
        this.bookPrice = bookPrice;
    }

    public int getBookid() {
        return bookid;
    }

    public String getBookName() {
        return bookName;
    }

    public String getBookAutor() {
        return bookAutor;
    }

    public String getBookType() {
        return bookType;
    }

    public double getBookPrice() {
        return bookPrice;
    }
}

下面是bookutill.java的源代码:

package cn.hkd.utill;

import cn.hkd.dao.BookMange;

import java.util.Scanner;

public class bookutill {

    BookMange bookMange=new BookMange();
    //如何连续执行
    public void returnmenu(){
        Scanner scanner = new Scanner(System.in);
        System.out.println("执行成功是否继续执行(Y/N)");
        String next = scanner.next();
        if ("Y".equals(next)){
            bookMange.menu();
        }else {
            System.exit(0);
        }
    }
}

下面是BookMange.java的源代码:

package cn.hkd.dao;

import cn.hkd.entity.Books;


import java.util.*;

public class BookMange {
    /**
     * 图书集合
     */
    List<Books> booksList=new ArrayList<Books>();

    /**
     * 用户集合
     */
    Map<String,String> mapUsers=new HashMap<>();

    public void init(){
        /**
         * 添加用户
         */
        mapUsers.put("admin","123");
        mapUsers.put("zs","123");
        mapUsers.put("ls","456");

    }

    /**
     * 主菜单
     */

    public void menu(){

        System.out.println("\t\t欢迎进入图书管理系统");

        System.out.println("1.添加图书");
        System.out.println("2.查看所有图书");
        System.out.println("3.删除图书");
        System.out.println("4.修改图书");
        System.out.println("5.退出系统");
        System.out.println("请选择:");
        Scanner input = new Scanner(System.in);
        int num = input.nextInt();
        switch (num){
            case 1:
                System.out.println("添加图书");
                addBook();
                break;
            case 2:
                System.out.println("查看图书");
                showBook();
                break;
            case 3:
                System.out.println("删除图书");
                delBook();
                break;
            case 4:
                System.out.println("修改图书");
                xgBook();
                break;
            case 5:
                System.out.println("退出系统");
                break;
        }

    }

    /**
     * 添加图书
     */
    public void addBook(){

        Scanner scanner = new Scanner(System.in);
        Books books=new Books();
        System.out.println("请输入编号:");
        books.setBookid(scanner.nextInt());
        System.out.println("名称:");
        books.setBookName(scanner.next());
        System.out.println("作者:");
        books.setBookAutor(scanner.next());
        System.out.println("类别:");
        books.setBookType(scanner.next());
        System.out.println("价格:");
        books.setBookPrice(scanner.nextDouble());
        booksList.add(books);
        returnmenu();

    }

    /**
     * 查看图书
     */
    public void showBook(){

        System.out.println("\t\t查看所有图书界面");
        System.out.println("图书编号\t\t图书名称\t\t作者\t\t类别\t\t价格");
        for (Books book: booksList) {
            System.out.println(book.getBookid()+"\t\t"+book.getBookName()+"\t\t"+book.getBookAutor()+"\t\t"+book.getBookType()+"\t\t"+book.getBookPrice());
        }

        returnmenu();
    }
    /**
     * 删除图书
     */
    public void delBook(){

        Scanner scanner = new Scanner(System.in);
        System.out.println("请输入图书编号");
        int bookid= scanner.nextInt();
        Iterator<Books> iterator = booksList.iterator();
        while (iterator.hasNext()){
            Books b=iterator.next();

            if (b.getBookid()==bookid){

                iterator.remove();
            }

        }
        returnmenu();
    }

    public void xgBook(){

        System.out.println("请输入你要修改的选项:1.图书名称\t\t2.作者\t\t3.图书类别\t\t4.图书价格");

        Scanner scanner = new Scanner(System.in);
        int sw = scanner.nextInt();
        switch (sw){
            case 1:
                xgmc();
                System.out.println("修改图书名称");
                break;

        }
        returnmenu();
    }

    /**
     * 修改图书名称
     */
        public void xgmc(){
            System.out.println("请输入你的id:");
            Scanner scanner = new Scanner(System.in);
            int id = scanner.nextInt();
            System.out.println("请输入你要修改后的图书名称:");
            String bookname = scanner.next();
            for (Books b: booksList) {
                if (b.getBookid()==id){
                    b.setBookName(bookname);

                }
            }
            showBook();

        }


    /**
     * 登录
     */

    public  void login(){
        Scanner input =new Scanner(System.in);
        System.out.println("\t\t图书管理系统登录界面");
        System.out.println("用户名:");
        String username = input.next();
        System.out.println("密码:");
        String userPwd = input.next();
        //判断用户名是否存在
        if (!mapUsers.containsKey(username)){
            System.out.println("用户不存在");
        }else {
            //根据键获取值
            String mappwd = mapUsers.get(username);
            //值不为空并且值和密码正确
            if (mappwd!=null&&mappwd.equals(userPwd)){
                System.out.println("登录成功");
            }else {
                System.out.println("密码错误,登录失败");
            }
        }


    }

    public void returnmenu(){
        Scanner scanner = new Scanner(System.in);
        System.out.println("执行成功是否继续执行(Y/N)");
        String next = scanner.next();
        if ("Y".equals(next)){
            menu();
        }else {
            System.exit(0);
        }
    }

}

下面是test类

package cn.hkd.test;

import cn.hkd.dao.BookMange;

public class BookStore {
    public static void main(String[] args) {
        BookMange bm=new BookMange();
     /*   bm.init();
        bm.login();*/
        bm.menu();
    }
}

本章完…有问题请留言!!

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值