• 基于javaweb+mysql的图书借阅管理系统(前台、后台)


    基于javaweb+mysql的图书借阅管理系统(前台、后台)

    运行环境

    Java≥8、MySQL≥5.7、Tomcat≥8

    开发工具

    eclipse/idea/myeclipse/sts等均可配置运行

    适用

    课程设计,大作业,毕业设计,项目练习,学习演示等

    功能说明

    前台:登录、查看图书列表、借书、还书、导出借书信息

    后台:图书管理、借阅审核、还书审核、用户管理、图书类别管理、借书数据统计图、导出图书信息

    前台

    后台:

    技术框架

    JSP Servlet MySQL JDBC Tomcat CSS JavaScript


                    Book book = bookService.findBookById(Integer.parseInt(bookIdStr));
                    reader = (Reader) session.getAttribute("reader");
                    Borrow borrow = new Borrow();
                    borrow.setReader(reader);
                    borrow.setBook(book);
                    borrow.setBookAdmin(null);
                    Date date = new Date();
                    borrow.setBorrowtime(DateUtils.dateToString(date));
                    borrow.setReturntime(null);
                    borrow.setState(0);
                    readerService.addBorrow(borrow);
                    resp.sendRedirect(req.getContextPath()+"/reader/reader.jsp");
                    break;
                //读者归还图书操作
                case "return":
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
                borrow = queryRunner.query(connection,sql,new BeanHandler<>(Borrow.class),bookId,readerId,state);
                if (borrow != null){
       
                    Book book = queryRunner.query(connection,"select * from book where id = ?",new BeanHandler<>(Book.class),bookId);
                    Reader reader = queryRunner.query(connection,"select * from reader where id = ?",new BeanHandler<>(Reader.class),readerId);
                    bAdmins = queryRunner.query(connection,"select adminid from borrow where id = ?",new ColumnListHandler<Integer>(),borrow.getId());
                    bookAdmin = queryRunner.query(connection,"select * from bookadmin where id = ?",new BeanHandler<>(BookAdmin.class),bAdmins.get(0));
                    borrow.setBookAdmin(bookAdmin);
                    borrow.setBook(book);
                    borrow.setReader(reader);
                }
            } catch (Exception e) {
       
                e.printStackTrace();
            } finally {
       
                JDBCUtils.release(connection,null,null);
            }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
        public void addBook(Book book) {
       
            this.bookRepository.save(book);
        }
    
        @Override
        public void modifyBook(Book book) {
       
            this.bookRepository.update(book);
        }
    
        @Override
        public void deleteBookById(int bookId) {
       
            this.bookRepository.deleteById(bookId);
        }
    
        @Override
        public HSSFWorkbook findWorkBook() {
       
            HSSFWorkbook hssfWorkbook = new HSSFWorkbook();
            HSSFSheet sheet = hssfWorkbook.createSheet("图书信息表");
            Row row = sheet.createRow(0);
            Cell cell = row.createCell(0);
            cell.setCellValue("图书名称");
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
                    <div class="layui-input-block">
                        <input type="text" name="name" value="${requestScope.book.name}" lay-verify-="" autocomplete="off" placeholder<
    • 1
  • 相关阅读:
    CentOS7系统下安装OpenOffice
    人工智能 | ShowMeAI资讯日报 #2022.06.24
    浪潮服务器安装CentOS 7 教程
    Vue 路由缓存 防止路由切换数据丢失 路由的生命周期
    嵌入式系统关于晶振的问题汇总
    Golang字符串类型原理及其使用方法
    Django源码学习——配置文件解析
    【MySql】MySQL中InnoDB支持的四种事务隔离级别名称,以及区别和能解决的问题。
    Spire.PDF for .NET【文档操作】演示:动态创建 PDF 并将其发送到客户端浏览器
    React的useLayoutEffect和useEffect执行时机有什么不同
  • 原文地址:https://blog.csdn.net/m0_69592937/article/details/127741974