跳转到主要内容
你行网

Main navigation

  • 首页
  • Drupal
  • 编程与开发
  • 数据库
  • 操作系统与应用
  • 服务器与运维
  • 社区
User account menu
  • 登录

面包屑

  1. 首页

Mybatis+JUL+Lombok+Maven的图书管理系统

由 hzh, 19 四月, 2023

基于Mybatis+JUL+Lombok+Maven的图书管理系统(带单元测试)

项目需求:

  • 在线录入学生信息和书籍信息
  •  
  • 查询书籍信息列表
  • 查询学生信息列表
  • 查询借阅信息列表
  • 完整的日志系统
  • package book_mange;
    
    import book_mange.entity.Book;
    import book_mange.entity.Student;
    import book_mange.util.SqlUtil;
    import lombok.extern.java.Log;
    import org.apache.ibatis.io.Resources;
    
    import java.io.IOException;
    import java.util.Scanner;
    import java.util.logging.LogManager;
    
    @Log
    public class Main {
        public static void main(String[] args) throws IOException {
            try(Scanner sc = new Scanner(System.in)){
                LogManager manager = LogManager.getLogManager();
                manager.readConfiguration(Resources.getResourceAsStream("logging.properties"));
    
                while (true){
                    System.out.println("====================================");
                    System.out.println("1.录入学生信息");
                    System.out.println("2.录入书籍信息");
                    System.out.println("3.添加借阅信息");
                    System.out.println("4.展示借阅信息");
                    System.out.println("5.展示学生信息");
                    System.out.println("6.展示书籍信息");
                    System.out.println("输入想要执行的操作,输入任意数字推出");
                    int input;
                    try {
                        input = sc.nextInt();
                    }catch (Exception e){
                        return;
                    }
                    switch (input){
                        case 1:
                            addStudent(sc);
                            break;
                        case 2:
                            addBook(sc);
                            break;
                        case 3:
                            addBorrow(sc);
                            break;
                        case 4:
                            showBorrow();
                            break;
                        case 5:
                            showStudentList();
                            break;
                        case 6:
                            showBookList();
                            break;
                        default:
                            return;
                    }
                }
            }
        }
    
        /**
         * addStudent
         * @param sc
         */
        private static void addStudent(Scanner sc){
            System.out.println("请输入学生名字");
            String name = sc.next();
            System.out.println("请输入学生性别");
            String sex = sc.next();
            System.out.println("请输入学生年级");
            int grade = sc.nextInt();
            Student student = new Student(name,sex,grade);
            SqlUtil.doWork(bookMapper -> {
                int i = bookMapper.addStudent(student);
                if (i > 0){
                    System.out.println("学生信息录入成功");
                    log.info("插入成功" + student);
                }else{
                    System.out.println("学生信息录入失败,请重试!");
                    log.info("插入失败");
                }
            });
        }
    
        /**
         * addBook
         * @param sc
         */
        private static void addBook(Scanner sc){
            System.out.println("请输入书籍名称");
            String title = sc.next();
            System.out.println("请输入书籍简介");
            String desc = sc.next();
            System.out.println("请输入书籍价格");
            double price = sc.nextDouble();
            Book book = new Book(title,desc,price);
            SqlUtil.doWork(bookMapper -> {
                int i = bookMapper.addBook(book);
                if (i > 0){
                    System.out.println("书籍信息录入成功");
                    log.info("插入成功" + book);
                }else{
                    System.out.println("书籍信息录入失败,请重试!");
                    log.info("插入失败");
                }
            });
        }
    
        private static void addBorrow(Scanner sc){
            System.out.println("请输入书籍号");
            int bid = sc.nextInt();
            System.out.println("请输入学生号");
            int sid = sc.nextInt();
            SqlUtil.doWork(bookMapper -> {
                int i = bookMapper.addBorrow(sid,bid);
                if (i > 0){
                    System.out.println("添加借阅信息录入成功");
                    log.info("添加借阅信息成功" + sid + bid);
                }else{
                    System.out.println("添加借阅信息录入失败,请重试!");
                    log.info("添加借阅信息录入失败");
                }
            });
        }
        private static void showBorrow(){
            SqlUtil.doWork(bookMapper -> {
                bookMapper.getBorrowList().forEach(borrow -> {
                    System.out.println(borrow.getStudent().getName() + "->" + borrow.getBook().getTitle());
                    log.info("展示借阅信息成功" + borrow.getStudent().getName() + "->" + borrow.getBook().getTitle());
                });
            });
        }
        private static void showStudentList(){
            SqlUtil.doWork(bookMapper -> {
                bookMapper.getStudentList().forEach(System.out::println);
                log.info("展示学生信息成功" );
            });
        }
    
        private static void showBookList(){
            SqlUtil.doWork(bookMapper -> {
                bookMapper.getBookList().forEach(System.out::println);
                log.info("展示书籍信息成功" );
            });
        }
    }
    

     

  • 运行方法 :在cmd界面用 java -jar 路径运行
  • 登录或注册以发表评论
内容类型分类
编程与开发
文章归类
后端开发

文章标签

  • java

评论

文章标签

Excel
CSS
ubuntu
php
vim
五笔
VPN
Linux
command
HTML
drupal 8
drupal 7
centos
composer
Mysql
模块(module)
drush
Drupal
JavaSrcipt
apache
英语
drupal 9
nerdtree
荔壳风
network
果树种植
surround
drupal10
SEO
主题(theme)
更多

相关文章

  • 匿名函数(Anonymous Functions)详解
  • PHP 中的四种标量数据类型
  • php 语言的四种标记风格
  • php 函数 range 根据范围创建数组
  • date_default_timezone_set 设置php服务器的默认时区
  • php8.3 的扩展模块简略说明
  • <input>` 类型的定义和用途的简要说明
  • php字符串运算符
  • HTML空格符简介
  • 在php中,int 数据类型的取值范围是多少
RSS源

友情链接 网站地图 版权信息 联系我们 网址导航 社区

Copyright © 2019 - 2021 你行网 版权所有  粤ICP备19072650号