21xrx.com
2025-03-27 15:12:18 Thursday
文章检索 我的文章 写文章
JavaSE 实践:开发一个简单的图书管理系统
2023-06-16 10:03:16 深夜i     8     0
JavaSE 图书管理系统 数据操作类

JavaSE 是 Java 基础语言,是 Java 开发的基础。一个 JavaSE 的开发者,掌握了 Java 语法、面向对象编程、Java IO、Java NIO,Java 线程、Java 注解、集合、泛型、反射等基础知识,可以通过这些知识开发各种各样的应用。

在JavaSE 学习完之后,你可以考虑实践开发一个简单的图书管理系统。这个图书管理系统有如下功能:

- 添加图书

- 删除图书

- 修改图书信息

- 查看图书详情

让我们一步一步来看看如何使用 JavaSE 开发这个管理系统。

1.创建图书实体类

首先,创建一个 Book 实体类,该类其实就是一个 JavaBean。这个实体类有以下属性:

public class Book
  private String bookId;
  private String bookName;
  private String author;
  private String publisher;

2.创建 BookDao 类

BookDao 类是一个数据操作类,主要负责对 Book 实体类进行各种数据操作,如添加、删除、修改和查询。该类可以使用文件或数据库进行存储和读取,这里我们示范使用文件进行操作。

public class BookDao {
  private static final String FILE_NAME = "book.txt";
  public void add(Book book)
    // 实现添加操作
  
  public void delete(String bookId)
    // 实现删除操作
  
  public void update(Book book)
    // 实现更新操作
  
  public Book findById(String bookId)
    // 实现查询操作
    return null;
  
}

3.实现图书管理系统的控制台界面

这个图书管理系统的控制台界面,实现了添加、删除、修改和查看图书操作。

public class BookManageSystem {
  private final Scanner scanner = new Scanner(System.in);
  private final BookDao bookDao = new BookDao();
  public void start() {
    while (true) {
      System.out.println("请选择操作:");
      System.out.println("1.添加图书");
      System.out.println("2.删除图书");
      System.out.println("3.修改图书信息");
      System.out.println("4.查看图书详情");
      System.out.println("0.退出");
      int choice = scanner.nextInt();
      scanner.nextLine();
      switch (choice) {
        case 1:
          addBook();
          break;
        case 2:
          deleteBook();
          break;
        case 3:
          updateBook();
          break;
        case 4:
          findById();
          break;
        case 0:
          System.exit(0);
          break;
        default:
          System.out.println("您的输入有误,请重新输入!");
          break;
      }
    }
  }
  private void findById() {
    System.out.println("请输入图书编号:");
    String bookId = scanner.nextLine();
    Book book = bookDao.findById(bookId);
    if (book == null) {
      System.out.println("图书不存在!");
    } else {
      System.out.println("图书编号:" + book.getBookId());
      System.out.println("图书名称:" + book.getBookName());
      System.out.println("图书作者:" + book.getAuthor());
      System.out.println("图书出版社:" + book.getPublisher());
    }
  }
  private void updateBook() {
    System.out.println("请输入图书编号:");
    String bookId = scanner.nextLine();
    Book book = bookDao.findById(bookId);
    if (book == null) {
      System.out.println("图书不存在!");
    } else {
      System.out.println("请输入新的图书名称:");
      String bookName = scanner.nextLine();
      System.out.println("请输入新的图书作者:");
      String author = scanner.nextLine();
      System.out.println("请输入新的图书出版社:");
      String publisher = scanner.nextLine();
      book.setBookName(bookName);
      book.setAuthor(author);
      book.setPublisher(publisher);
      bookDao.update(book);
      System.out.println("图书信息修改成功!");
    }
  }
  private void deleteBook() {
    System.out.println("请输入图书编号:");
    String bookId = scanner.nextLine();
    bookDao.delete(bookId);
    System.out.println("图书删除成功!");
  }
  private void addBook() {
    System.out.println("请输入图书编号:");
    String bookId = scanner.nextLine();
    Book book = bookDao.findById(bookId);
    if (book != null) {
      System.out.println("图书编号已存在!");
    } else {
      System.out.println("请输入图书名称:");
      String bookName = scanner.nextLine();
      System.out.println("请输入图书作者:");
      String author = scanner.nextLine();
      System.out.println("请输入图书出版社:");
      String publisher = scanner.nextLine();
      book = new Book();
      book.setBookId(bookId);
      book.setBookName(bookName);
      book.setAuthor(author);
      book.setPublisher(publisher);
      bookDao.add(book);
      System.out.println("图书添加成功!");
    }
  }
  public static void main(String[] args) {
    new BookManageSystem().start();
  }
}

至此,一个简单的图书管理系统就完成了。它使用了 JavaSE 的各种知识点,如文件读写、基本数据类型、面向对象等。通过这个项目的实践,你可以对 JavaSE 的知识进行深入的理解和应用,可以进一步掌握 Java 技术,为以后更高级的 JavaEE 或者 Spring、Mybatis 微服务等框架打下牢固的基础。

  
  

评论区

    相似文章