# book-lease **Repository Path**: MineLX/book-lease ## Basic Information - **Project Name**: book-lease - **Description**: java web - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-11-18 - **Last Updated**: 2025-12-04 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 图书租赁管理系统 ## 项目简介 图书租赁管理系统是一个基于Java Web技术栈开发的在线图书租赁平台,提供完整的图书管理、用户管理、借阅管理、评论管理等功能。系统采用MVC架构,支持多用户角色管理,具有良好的用户体验和系统性能。 ## 技术栈 ### 后端技术 - **Java 8+** - 核心编程语言 - **Jakarta Servlet 5.0** - Web服务框架 - **MySQL 8.0** - 关系型数据库 - **Maven** - 项目构建和依赖管理 ### 前端技术 - **HTML5/CSS3** - 页面结构和样式 - **JavaScript ES6+** - 客户端脚本 - **Vue.js 2.6** - 前端框架 - **Element UI** - UI组件库 - **ECharts 5.4** - 数据可视化图表 ### 开发工具 - **IntelliJ IDEA** - 集成开发环境 - **Tomcat 10+** - Web应用服务器 - **MySQL Workbench** - 数据库管理工具 ## 系统功能 ### 用户管理模块 - 用户注册、登录、个人信息管理 - 角色权限管理(普通用户、管理员) - 用户状态管理(激活/禁用) ### 图书管理模块 - 图书信息管理(增删改查) - 图书分类管理 - 图书库存管理 - 图书状态管理(可借/不可借) ### 借阅管理模块 - 图书借阅、归还、续借 - 借阅记录查询 - 逾期管理和罚款计算 - 借阅统计和分析 ### 评论管理模块 - 图书评论和评分 - 评论审核机制 - 评论回复功能 - 评论统计和分析 ### 数据统计模块 - 借阅趋势分析 - 用户活跃度统计 - 图书分类分布 - 系统运行状态监控 ## 项目结构 ``` book-lease/ ├── src/ # Java源代码 │ └── com/booklease/ │ ├── dao/ # 数据访问层 │ ├── entity/ # 实体类 │ ├── servlet/ # 控制器层 │ └── util/ # 工具类 ├── web/ # Web资源文件 │ ├── WEB-INF/ # 配置文件 │ ├── admin/ # 管理员界面 │ ├── user/ # 用户界面 │ └── index.jsp # 首页 ├── database.sql # 数据库脚本 ├── pom.xml # Maven配置 └── README.md # 项目文档 ``` ## 环境准备 ### 系统要求 - **操作系统**: Windows 10+/macOS 10.14+/Linux Ubuntu 18.04+ - **Java环境**: JDK 8或更高版本 - **数据库**: MySQL 8.0或更高版本 - **Web服务器**: Tomcat 10或更高版本 ### 开发环境搭建 1. **安装Java开发环境** ```bash # 下载并安装JDK 8+ # 配置JAVA_HOME环境变量 ``` 2. **安装MySQL数据库** ```bash # 下载并安装MySQL 8.0+ # 创建数据库用户和权限 ``` 3. **安装Maven** ```bash # 下载并配置Maven # 配置MAVEN_HOME环境变量 ``` 4. **安装Tomcat服务器** ```bash # 下载并配置Tomcat 10+ # 配置CATALINA_HOME环境变量 ``` ## 部署指南 ### 数据库部署 1. **创建数据库** ```sql CREATE DATABASE book_lease CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ``` 2. **导入数据库结构** ```bash mysql -u root -p book_lease < database.sql ``` 3. **数据库配置** - 默认管理员账户: admin/123456 - 数据库连接配置在DBUtil类中 ### 项目部署 1. **克隆项目** ```bash git clone <项目地址> cd book-lease ``` 2. **配置数据库连接** 编辑`src/com/booklease/util/DBUtil.java`文件,修改数据库连接信息: ```java private static final String URL = "jdbc:mysql://localhost:3306/book_lease"; private static final String USERNAME = "root"; private static final String PASSWORD = "123456"; ``` 3. **构建项目** ```bash mvn clean compile mvn package ``` 4. **部署到Tomcat** - 将生成的WAR文件复制到Tomcat的webapps目录 - 启动Tomcat服务器 - 访问 http://localhost:8080/book-lease ### 使用SmartTomcat部署(开发环境) 1. **配置SmartTomcat插件** - 在IntelliJ IDEA中安装SmartTomcat插件 - 配置Tomcat服务器路径 - 设置项目上下文路径 2. **运行配置** - 创建SmartTomcat运行配置 - 设置端口号和部署路径 - 启动服务器 ## 系统配置 ### 默认配置参数 系统内置以下默认配置(可在系统配置表中修改): | 配置项 | 默认值 | 说明 | |--------|--------|------| | borrow_duration | 30 | 默认借阅天数 | | max_renew_count | 2 | 最大续借次数 | | daily_fine | 0.5 | 逾期每日罚款金额 | | max_borrow_books | 5 | 最大借阅图书数量 | ### 管理员账户 系统预置管理员账户: - **用户名**: admin - **密码**: 123456 - **邮箱**: admin@booklease.com ## 开发指南 ### 代码规范 1. **命名规范** - 类名使用大驼峰命名法 - 方法名和变量名使用小驼峰命名法 - 常量使用全大写加下划线 2. **包结构规范** - `dao`: 数据访问层 - `entity`: 实体类 - `servlet`: 控制器层 - `util`: 工具类 ### API接口规范 系统采用RESTful风格API设计: - **GET**: 获取资源 - **POST**: 创建资源 - **PUT**: 更新资源 - **DELETE**: 删除资源 ### 数据库设计 系统包含以下核心表: - **users**: 用户表 - **books**: 图书表 - **categories**: 分类表 - **borrow_records**: 借阅记录表 - **comments**: 评论表 - **system_config**: 系统配置表 ## 故障排除 ### 常见问题 1. **数据库连接失败** - 检查MySQL服务是否启动 - 验证数据库连接配置 - 确认防火墙设置 2. **Tomcat部署失败** - 检查端口是否被占用 - 验证WAR文件完整性 - 查看Tomcat日志文件 3. **前端资源加载失败** - 检查网络连接 - 验证CDN资源可用性 - 查看浏览器控制台错误 ### 日志查看 系统日志位于Tomcat的logs目录: - `catalina.out`: 系统启动日志 - `localhost.log`: 应用访问日志 - `localhost_access_log`: HTTP请求日志 ## 贡献指南 ### 开发流程 1. Fork项目仓库 2. 创建功能分支 3. 提交代码变更 4. 创建Pull Request ### 提交规范 - feat: 新功能 - fix: 修复bug - docs: 文档更新 - style: 代码格式调整 - refactor: 代码重构 - test: 测试相关 ## 许可证 本项目采用MIT许可证,详情请查看LICENSE文件。 ## 联系方式 如有问题或建议,请联系: - **邮箱**: admin@booklease.com - **项目地址**: [GitHub仓库地址] --- **最后更新**: 2025年1月 **版本**: 1.0-SNAPSHOT