您当前的位置: 首页 >  ui

梁云亮

暂无认证

  • 2浏览

    0关注

    1211博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

基于文件的图书管理系统四:UI层

梁云亮 发布时间:2022-03-29 14:03:30 ,浏览量:2

@Slf4j
public class App {
    private BookService bookService = new BookServiceImpl();

    public static void main(String[] args) {
        App app = new App();
        try (Scanner scanner = new Scanner(System.in);) {
            System.out.println("1查看所有的图书  2根据条件查找  3增加图书  4修改图书");
            int op = scanner.nextInt();
            switch (op) {
                case 1:
                    List list = app.selectAllBooks();
                    list.forEach(System.out::println);
                    break;
                case 2:
                    List books = app.selectBookByCondition(scanner);
                    books.forEach(System.out::println);
                    break;
                case 3:
                    String appendRes = app.appendBook(scanner);
                    System.out.println(appendRes);
                    break;
                case 4:
                    String updateRes = app.updateBook(scanner);
                    System.out.println(updateRes);
                    break;
                default:
            }
        }
    }

    private String updateBook(Scanner scanner) {
        Book book = getBook(scanner);
        String res = bookService.updateBook(book);
        return res;
    }

    private String appendBook(Scanner scanner) {
        Book book = getBook(scanner);
        String res = bookService.appendBook(book);
        return res;
    }

    private Book getBook(Scanner scanner) {
        System.out.println("请输入ISBN");
        String isbn = scanner.next();
        System.out.println("请输入书名");
        String name = scanner.next();
        System.out.println("请输入作者");
        String auth = scanner.next();
        System.out.println("请输入出版日期(1999-9-21)");

        String birthStr = scanner.next();
        DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd");
        LocalDate birth = null;
        try {
            birth = LocalDate.parse(birthStr, dateTimeFormatter);
        } catch (DateTimeParseException e) {
            log.warn("输入的日期格式不正确");
            throw new GlobalException("输入的日期格式不正确");
        }
        System.out.println("请输入出版社");
        String publisher = scanner.next();
        System.out.println("请输入价格");
        String priceStr = scanner.next();
        BigDecimal price = new BigDecimal(priceStr);

        Book book = new Book(isbn, name, auth, birth, publisher, price);
        return book;
    }

    private List selectBookByCondition(Scanner scanner) {
        System.out.println("查找图书,要求至少能够【分别】根据ISBN、书名、作者、价格区间进行查找");
        String type = scanner.next();
        String query = scanner.next();
        List res = bookService.getBookByCondition(type, query);
        return res;
    }

    private List selectAllBooks() {
        List res = bookService.getAllBooks();
        return res;
    }
}
关注
打赏
1665409997
查看更多评论
立即登录/注册

微信扫码登录

0.0415s