国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

圖書管理系統(tǒng)(借還圖書)--Java實(shí)現(xiàn)(附源碼)

這篇具有很好參考價(jià)值的文章主要介紹了圖書管理系統(tǒng)(借還圖書)--Java實(shí)現(xiàn)(附源碼)。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

目錄

圖書管理系統(tǒng)權(quán)限

圖書管理系統(tǒng)程序框圖

圖書管理系統(tǒng)架構(gòu)

管理員執(zhí)行流程

學(xué)生執(zhí)行流程

詳細(xì)代碼

源碼獲取

畢設(shè)專欄


圖書管理系統(tǒng)(借還圖書)--Java實(shí)現(xiàn)(附源碼)

圖書管理系統(tǒng)權(quán)限

  • 管理員:具有? 1、查找圖書 2、增加圖書 3、刪除圖書 4、顯示圖書 等功能
  • 學(xué)生:具有? 1、查找圖書 2、借閱圖書 3、歸還圖書 4、顯示圖書 等功能

圖書管理系統(tǒng)程序框圖

圖書管理系統(tǒng)(借還圖書)--Java實(shí)現(xiàn)(附源碼)

圖書管理系統(tǒng)架構(gòu)

圖書管理系統(tǒng)(借還圖書)--Java實(shí)現(xiàn)(附源碼)

管理員執(zhí)行流程

圖書管理系統(tǒng)(借還圖書)--Java實(shí)現(xiàn)(附源碼)

學(xué)生執(zhí)行流程

圖書管理系統(tǒng)(借還圖書)--Java實(shí)現(xiàn)(附源碼)

詳細(xì)代碼

Book

package book;

public class Book {
    /*一本書的屬性包括書名,作者,價(jià)格,類型,編號(hào),以及狀態(tài)*/
    private String name;
    private String author;
    private int price;
    private String type;
    private int num;
    private boolean status;

    //提供構(gòu)造方法
    public Book(String name, String author, int price, String type, int num) {
        this.name = name;
        this.author = author;
        this.price = price;
        this.type = type;
        this.num = num;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getAuthor() {
        return author;
    }

    public void setAuthor(String author) {
        this.author = author;
    }

    public int getPrice() {
        return price;
    }

    public void setPrice(int price) {
        this.price = price;
    }

    public String getType() {
        return type;
    }

    public void setType(String type) {
        this.type = type;
    }

    public int getNum() {
        return num;
    }

    public void setNum(int num) {
        this.num = num;
    }

    public boolean isStatus() {
        return status;
    }

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

    //toString 方法打印
    @Override
    public String toString() {
        return "Book{" +
                "name='" + name + '\'' +
                ", author='" + author + '\'' +
                ", price=" + price +
                ", type='" + type + '\'' +
                ", num=" + num +
                ((status == true) ? " 已借出 " : " 未借出 ") +
                '}';
    }
}

BookList

package book;

public class BookList {
    //書都是同一類型的元素,創(chuàng)建一個(gè)Book類型的數(shù)組
    private Book[] books;
    private int size;

    //先給書架放三本書
    public BookList() {
        this.books = new Book[10];
        books[0] = new Book("狂人日記","魯迅",10,"小說",1);
        books[1] = new Book("將進(jìn)酒","李白",23,"詩",3);
        books[2] = new Book("清明上河圖","張擇端",20,"書法",2);
        this.size = 3;
    }


    public int getSize() {
        return size;
    }

    public void setSize(int size) {
        this.size = size;
    }

    public void setBooks(int pos, Book book) {
        this.books[pos] = book;
    }

    public Book getBook(int pos) {
        return this.books[pos];
    }
}

AddOperation

package operation;

import book.Book;
import book.BookList;

import java.util.Scanner;

public class AddOperation implements IOperation {
    @Override
    public void work(BookList bl) {
        Scanner sc = new Scanner(System.in);
        System.out.println("添加圖書");
        System.out.println("請(qǐng)輸入圖書的名字:");
        String name = sc.nextLine();
        System.out.println("請(qǐng)輸入圖書的作者:");
        String author = sc.nextLine();
        System.out.println("請(qǐng)輸入圖書價(jià)格:");
        int price = sc.nextInt();
        System.out.println("請(qǐng)輸入圖書的類型:");
        String type = sc.next();
        System.out.println("請(qǐng)輸入圖書的編號(hào):");
        int num = sc.nextInt();

        Book book = new Book(name,author,price,type,num);
        int curSize = bl.getSize();//拿到長(zhǎng)度
        bl.setBooks(curSize,book);
        bl.setSize(curSize+1);
        System.out.println("添加成功!");
    }
}

BorrOperation

package operation;

import book.Book;
import book.BookList;

import java.util.Scanner;

public class BorrOperation implements IOperation{
    @Override
    public void work(BookList bl) {
        System.out.println("借閱書籍");
        System.out.println("請(qǐng)輸入需要借閱的書籍名字:");
        Scanner sc = new Scanner(System.in);
        String name = sc.nextLine();
        for (int i = 0; i < bl.getSize(); i++) {
            Book book = bl.getBook(i);
            if(book.getName().equals(name)) {
                System.out.println("請(qǐng)取走您要的書籍!");
                book.setStatus(true);
                System.out.println(book);
                return;
            }
        }
        System.out.println("沒有你需要的書籍!");
    }
}


DelOperation

package operation;

import book.Book;
import book.BookList;

import java.util.Scanner;

public class DelOperation implements IOperation{
    @Override
    public void work(BookList bl) {
        System.out.println("刪除圖書");
        System.out.println("請(qǐng)輸入需要?jiǎng)h除的書籍名字:");
        Scanner sc = new Scanner(System.in);
        String name = sc.nextLine();
        int i = 0;
        for (; i < bl.getSize(); i++) {
            Book book = bl.getBook(i);
            if(book.getName().equals(name)){
                break;
            }
        }
        if(i >= bl.getSize()){
            System.out.println("沒有找到此書籍");
            return;
        }
        int j = i;
        for(; j < bl.getSize() - 1; j++){
            Book book = bl.getBook(j + 1);
            bl.setBooks(j,book);
        }
        int cueSize = bl.getSize();
        bl.setSize(cueSize-1);
        System.out.println("成功刪除此書籍!");
    }
}

DisOperation

package operation;

import book.Book;
import book.BookList;

public class DisOperation implements IOperation{
    @Override
    public void work(BookList bl) {
        System.out.println("顯示圖書");
        for (int i = 0; i < bl.getSize(); i++) {
            Book book = bl.getBook(i);
            System.out.println(book);
        }
    }
}

ExiOperation

package operation;

import book.BookList;

public class ExiOperation implements IOperation{
    @Override
    public void work(BookList bl) {
        System.out.println("退出系統(tǒng)");
        System.exit(0);
    }
}

Finoperation

package operation;

import book.Book;
import book.BookList;

import java.util.Scanner;

public class FinOperation implements IOperation{
    @Override
    public void work(BookList bl) {
        System.out.println("查找書籍");
        Scanner sc = new Scanner(System.in);
        System.out.println("請(qǐng)輸入要查找的書籍名字:");
        String name = sc.next();
        for (int i = 0; i < bl.getSize(); i++) {
            Book book = bl.getBook(i);
            if(book.getName().equals(name)){
                System.out.println("有此書籍!");
                System.out.println(book);
                return;
            }
        }
        System.out.println("未找的您需要的書籍!");
    }
}

IOperation

package operation;

import book.BookList;

public interface IOperation {
    void work(BookList bl);
}

RetOperation

package operation;

import book.Book;
import book.BookList;

import java.util.Scanner;

public class RetOperation implements IOperation{
    @Override
    public void work(BookList bl) {
        System.out.println("歸還圖書");
        Scanner sc = new Scanner(System.in);
        System.out.println("請(qǐng)輸入您要?dú)w還的書籍名字!");
        String name = sc.nextLine();
        for (int i = 0; i < bl.getSize(); i++) {
            Book book = bl.getBook(i);
            if(book.getName().equals(name)) {
                book.setStatus(false);
                System.out.println(book);
                return;
            }
        }
    }
}

Administrator

package user;

import operation.*;

import java.util.Scanner;

public class Administrator extends User{

    public Administrator(String name) {
        super(name);
        this.operation = new IOperation[]{new ExiOperation(),new FinOperation(),new AddOperation(),new DelOperation(),new DisOperation()};
    }

    @Override
    public int menu() {
        System.out.println("歡迎" + this.name + "進(jìn)入圖書管理系統(tǒng)!");
        Scanner sc = new Scanner(System.in);
        System.out.println("=============");
        System.out.println("1.查找圖書");
        System.out.println("2.增加圖書");
        System.out.println("3.刪除圖書");
        System.out.println("4.顯示圖書");
        System.out.println("0.退出系統(tǒng)");
        System.out.println("=============");
        int choice = sc.nextInt();
        return choice;
    }
}

Ordinary

package user;

import operation.*;

import java.util.Scanner;

public class Ordinary extends User {

    public Ordinary(String name) {
        super(name);
        this.operation = new IOperation[]{new ExiOperation(),new FinOperation(),new BorrOperation(),new RetOperation(),new DisOperation()};
    }

    @Override
    public int menu() {
        System.out.println("歡迎" + this.name + "同學(xué)進(jìn)入圖書管理系統(tǒng)!");
        Scanner sc = new Scanner(System.in);
        System.out.println("==============");
        System.out.println("1.查找圖書");
        System.out.println("2.借閱圖書");
        System.out.println("3.歸還圖書");
        System.out.println("4.顯示圖書");
        System.out.println("0.退出系統(tǒng)");
        System.out.println("==============");
        int choice = sc.nextInt();
        return choice;
    }
}

User

package user;

import book.BookList;
import operation.IOperation;
//抽象類,主要為了被繼承
public abstract class User {
    public String name;
    public IOperation[] operation;

    public User(String name) {
        this.name = name;
    }

    public abstract int menu();

    public void doOperation(int choice, BookList bl) {
        this.operation[choice].work(bl);
    }
}

Main

import book.BookList;
import user.Administrator;
import user.Ordinary;
import user.User;

import java.util.Scanner;

public class Main {
    public static User login() {
        Scanner sc = new Scanner(System.in);
        System.out.println("請(qǐng)輸入姓名:");
        String name = sc.next();
        System.out.println("請(qǐng)確認(rèn)您的身份:1 > 管理員  0 > 學(xué)生");
        int choice = sc.nextInt();
        if(choice == 1){
            return new Administrator(name);
        }else{
            return new Ordinary(name);
        }
    }
    public static void main(String[] args) {
        BookList bl = new BookList();
        //登錄
        User user = login();
        //選擇菜單
        while(true){
            int choice = user.menu();
            user.doOperation(choice,bl);
        }

    }
}

以上為全部源碼,有不太明白的同學(xué)可以去下載鏈接直接獲取源碼

源碼獲取

畢設(shè)專欄

圖書管理系統(tǒng)(借還圖書)--Java實(shí)現(xiàn)(附源碼)

?https://download.csdn.net/download/m0_54925305/86236726

https://blog.csdn.net/m0_54925305/category_11702151.html?spm=1001.2014.3001.5482文章來源地址http://www.zghlxwxcb.cn/news/detail-479749.html

到了這里,關(guān)于圖書管理系統(tǒng)(借還圖書)--Java實(shí)現(xiàn)(附源碼)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • java畢業(yè)設(shè)計(jì)——基于java+Java Swing+sqlserver的圖書館書庫管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)(畢業(yè)論文+程序源碼)——圖書館書庫管理系統(tǒng)

    java畢業(yè)設(shè)計(jì)——基于java+Java Swing+sqlserver的圖書館書庫管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)(畢業(yè)論文+程序源碼)——圖書館書庫管理系統(tǒng)

    大家好,今天給大家介紹基于java+Java Swing+sqlserver的圖書館書庫管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn),文章末尾附有本畢業(yè)設(shè)計(jì)的論文和源碼下載地址哦。需要下載開題報(bào)告PPT模板及論文答辯PPT模板等的小伙伴,可以進(jìn)入我的博客主頁查看左側(cè)最下面欄目中的自助下載方法哦 文章目錄: 畢業(yè)

    2024年02月03日
    瀏覽(35)
  • 基于Java的圖書管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)(附源碼網(wǎng)盤鏈接)

    基于Java的圖書管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)(附源碼網(wǎng)盤鏈接)

    源碼已開源可自取,鏈接在文末 隨著信息技術(shù)的不斷發(fā)展,圖書管理系統(tǒng)已經(jīng)成為現(xiàn)代圖書館不可或缺的一部分。傳統(tǒng)的手工管理方式已經(jīng)無法滿足圖書管理的需求,因?yàn)樗鼈內(nèi)狈π屎蜏?zhǔn)確性,并且很難應(yīng)對(duì)大量讀者和圖書的管理。根據(jù)圖書管理的現(xiàn)狀,設(shè)計(jì)一款在線圖書

    2024年02月04日
    瀏覽(20)
  • 基于Java的圖書商城管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)(源碼+lw+部署文檔+講解等)

    基于Java的圖書商城管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)(源碼+lw+部署文檔+講解等)

    ?? 博主介紹 :?全網(wǎng)粉絲10W+,CSDN特邀作者、博客專家、CSDN新星計(jì)劃導(dǎo)師、全棧領(lǐng)域優(yōu)質(zhì)創(chuàng)作者,博客之星、掘金/華為云/阿里云/InfoQ等平臺(tái)優(yōu)質(zhì)作者、專注于Java、小程序技術(shù)領(lǐng)域和畢業(yè)項(xiàng)目實(shí)戰(zhàn)??? ???? 精彩專欄 推薦訂閱 ???? 2023-2024年最值得選的微信小程序畢業(yè)設(shè)

    2024年02月07日
    瀏覽(22)
  • 圖書管理系統(tǒng)(Java實(shí)現(xiàn),十個(gè)數(shù)據(jù)表,含源碼、ER圖,超詳細(xì)報(bào)告解釋,2020.7.11更新)...

    圖書管理系統(tǒng)(Java實(shí)現(xiàn),十個(gè)數(shù)據(jù)表,含源碼、ER圖,超詳細(xì)報(bào)告解釋,2020.7.11更新)...

    圖書管理系統(tǒng)數(shù)據(jù)庫設(shè)計(jì)實(shí)驗(yàn)報(bào)告 2020.7.11 修改了表的結(jié)構(gòu),表之間增加了外鍵聯(lián)系,更加完整且符合第三范式。 數(shù)據(jù)庫設(shè)計(jì)實(shí)驗(yàn)報(bào)告 疫情期間,大家都只能夠在家里,不能去到學(xué)校,此時(shí)需要在圖書館借書,就是只能通過網(wǎng)絡(luò)來操作了。因此,網(wǎng)上圖書館就此誕生了,有了

    2024年02月05日
    瀏覽(38)
  • java項(xiàng)目-圖書館管理系統(tǒng)源碼

    java項(xiàng)目-圖書館管理系統(tǒng)源碼

    作者主頁:夜未央5788 ?簡(jiǎn)介:Java領(lǐng)域優(yōu)質(zhì)創(chuàng)作者、Java項(xiàng)目、學(xué)習(xí)資料、技術(shù)互助 文末獲取源碼 ? 項(xiàng)目介紹 本畢業(yè)設(shè)計(jì)運(yùn)用了使用技術(shù):spring mvc+spring+hibernate,數(shù)據(jù)庫使用了當(dāng)前較為流行的Mysql5.7。根據(jù)本校圖書館的工作流程與實(shí)際的需求和特色,本系統(tǒng)需滿足以下幾個(gè)方

    2024年02月08日
    瀏覽(25)
  • 圖書管理系統(tǒng)|基于Springboot的圖書管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)(源碼+數(shù)據(jù)庫+文檔)

    圖書管理系統(tǒng)|基于Springboot的圖書管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)(源碼+數(shù)據(jù)庫+文檔)

    圖書管理系統(tǒng)目錄 目錄 基于Springboot的圖書管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn) 一、前言 二、系統(tǒng)功能設(shè)計(jì) 三、系統(tǒng)實(shí)現(xiàn) 1、個(gè)人中心 2、管理員管理 3、用戶管理 4、圖書出版社管理 四、數(shù)據(jù)庫設(shè)計(jì) 1、實(shí)體ER圖 五、核心代碼? 六、論文參考 七、最新計(jì)算機(jī)畢設(shè)選題推薦 八、源碼獲?。?/p>

    2024年03月26日
    瀏覽(30)
  • 用Python實(shí)現(xiàn)一個(gè)圖書管理系統(tǒng)(附帶源碼)

    目錄 一、題目信息 二、分析 三、主函數(shù) 四、總結(jié) 實(shí)現(xiàn)一個(gè)圖書管理系統(tǒng),要求有學(xué)生信息管理、圖書信息管理和圖書借閱管理三大功能。 創(chuàng)建一個(gè)LMS類 1.學(xué)生信息管理:具有添加學(xué)生和刪除學(xué)生兩個(gè)功能,并將學(xué)生存在Student列表中。在刪除學(xué)生時(shí),如果學(xué)生還有未歸還書

    2024年02月11日
    瀏覽(24)
  • 畢業(yè)設(shè)計(jì) 基于java web的在線圖書管理系統(tǒng)(源碼+論文)

    畢業(yè)設(shè)計(jì) 基于java web的在線圖書管理系統(tǒng)(源碼+論文)

    ?? Hi,各位同學(xué)好呀,這里是L學(xué)長(zhǎng)! ??今天向大家分享一個(gè)今年(2022)最新完成的畢業(yè)設(shè)計(jì)項(xiàng)目作品 基于java web的在線圖書管理系統(tǒng) ?? 學(xué)長(zhǎng)根據(jù)實(shí)現(xiàn)的難度和等級(jí)對(duì)項(xiàng)目進(jìn)行評(píng)分(最低0分,滿分5分) 難度系數(shù):3分 工作量:3分 創(chuàng)新點(diǎn):3分 項(xiàng)目獲取: https://gitee.com/sinonfin

    2024年02月10日
    瀏覽(22)
  • 【源碼篇】基于SpringBoot+thymeleaf實(shí)現(xiàn)的圖書管理系統(tǒng)

    【源碼篇】基于SpringBoot+thymeleaf實(shí)現(xiàn)的圖書管理系統(tǒng)

    系統(tǒng)介紹 基于SpringBoot+thymeleaf實(shí)現(xiàn)的圖書管理系統(tǒng)分為管理員、讀者兩個(gè)登錄角色,一共是8個(gè)功能模塊 管理員權(quán)限 圖書管理: 添加圖書:書名、作者、出版社、ISBM、簡(jiǎn)介、價(jià)格、出版日期、分類、數(shù)量 查詢圖書:根據(jù)書名或分類查詢 刪除圖書:點(diǎn)擊刪除按鈕即可 修改圖

    2024年02月07日
    瀏覽(21)
  • 【Java】實(shí)現(xiàn)圖書管理系統(tǒng)

    【Java】實(shí)現(xiàn)圖書管理系統(tǒng)

    隨著社會(huì)的發(fā)展和科技的進(jìn)步,圖書館的規(guī)模和藏書量都在不斷擴(kuò)大,圖書的管理和維護(hù)變得越來越復(fù)雜。傳統(tǒng)的圖書管理方式已經(jīng)無法滿足現(xiàn)代圖書館的需求,因此需要開發(fā)一種高效、便捷的圖書管理系統(tǒng)來提高圖書管理效率和讀者的借閱體驗(yàn)。 在這種背景下,我們?cè)O(shè)計(jì)了

    2024年02月20日
    瀏覽(25)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包