基于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":
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);
}
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("图书名称");
<div class="layui-input-block">
<input type="text" name="name" value="${requestScope.book.name}" lay-verify-="" autocomplete="off" placeholder=</