# LibrarySystem **Repository Path**: yuan-zqing/library-system ## Basic Information - **Project Name**: LibrarySystem - **Description**: 图书借阅管理系统,该项目为图书管理项目,主要是让图书管理员更好的管理图书、读者、和读者借阅图书的需求。前端使用layui开箱即用,后端使用java+spring,数据库使用mysql。 - **Primary Language**: Java - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 2 - **Created**: 2021-11-25 - **Last Updated**: 2025-06-09 ## Categories & Tags **Categories**: Uncategorized **Tags**: Java, Spring, UI, MySQL ## README # 接口文档及截图 ## 图书借阅管理系统 首页 ![index](picture/index.png) 图书管理模块 ![index-select](picture/index-select.png) ![index-update](picture/index-update.png) ![index-delete](picture/index-delete.png) ![book-part](picture/book-part.png) 读者管理模块 ![brower](picture/readerInfo.jpg) ![readers-part](picture/selectreader.jpg) 借阅管理模块 ![brower](picture/borrowInfo.jpg) ![readers-part](picture/selectborrow.jpg) |字段 |类型 |描述 | | --------- | ------ | ------ | | data | String | 验证操作是否成功 | | | | | | 含义 | 成功 | 失败 | | | | | | 值 | Number | JSON字段中表示值的类型 | | 含义 | Number | 数值类型 | | | | | | status | int | 请求是否成功,0:成功;1:失败 | | total | String | 表示表中数据有多少条 | | 值 | "1" | "0" | | 含义 | 正常 | 删除 | ###数据库 |字段 |类型 |描述 | | --------- | ------ | ------ | | readersSex | String(1个字符串长度) | 读者性别 | | borrow_return | String(3个中文字段长度) | 借阅情况 | | *Phone | String(11个字符串长度) | 手机号码 | ## 管理员功能 ### 登录功能 - URL:` /api/Manger/mangerLogin ` - 请求类型:POST 请求参数 | 字段 | 类型 | 描述 | | --------- | ------ | ------ | | userName | String | 管理员账户 | | password | String | 管理员密码 | 响应数据格式 (JSON) ``` json { "message": "操作成功", "status": 0, "data": { "token": "eyJhbGciOiJIUzI1NiJ9.eyJtYW5hZ2VyUGhvbmUiOiJzdHJpbmciLCJtYW5nZXJJZCI6IjkxMzUxNzgyNDI4NTA4MTYwMCIsIm1hbmFnZXJOYW1lIjoic3RyaW5nIn0.QqI7CJWo_iShXmpuQy_3_Dw4o02gIJEZPSyY8rvcKBs" } } ``` ### 添加管理员 - URL:` /api/Manger/addManager ` - 请求类型:POST 请求参数 | 字段 | 类型 | 描述 | | --------- | ------ | ------ | | managerUsername | String | 管理员账户 | | managerPassword | String | 管理员密码 | 响应数据格式 (JSON) ``` json { "message": "操作成功", "status": 0, } ``` ## 图书功能 ### 新增图书 说明:确保图书名称和作者名称不能传同一本图书(即同一本书不能传多次) - URL:` /api/book/addBook ` - 请求类型:POST 请求参数 | 字段 | 类型 | 描述 | | --------- | ------ | ------ | | bookName | String | 图书名称 | | bookAuthorName | String | 作者名称 | | bookPrice | Number | 图书定价 | | bookPlace |String | 图书出版社 | | bookRemark |String | 图书简介 | 响应数据格式 (JSON) ``` json { "message": "操作成功", "status": 0, "data": null } ``` ### 更新图书 根据bookShowId来进行修改 - URL:` /api/book/updateBook ` - 请求类型:POST 请求参数 | 字段 | 类型 | 描述 | | --------- | ------ | ------ | | bookShowId | int | 图书id | | bookName | String | 图书名称 | | bookAuthorName | String | 作者名称 | | bookPrice | Number | 图书定价 | | bookPlace |String | 图书出版社 | | bookRemark |String | 图书简介 | 响应数据格式 (JSON) ``` json { "message": "操作成功", "status": 0, "data": null } ``` ### 删除图书 - URL:` /api/book/deleteBook/{bookShowId} ` - 请求类型:POST 请求参数 | 字段 | 类型 | 描述 | | --------- | ------ | ------ | | bookShowId | String | 图书ID | 响应数据格式 (JSON) ``` json { "message": "操作成功", "status": 0, "data": null } ``` ### 获取全部数据 - URL:` /api/book/queryAllBook ` - 请求类型:GET 请求参数 | 字段 | 类型 | 描述 | | --------- | ------ | ------ | 响应数据格式 (JSON) ``` json { "message": "操作成功", "status": 0, "data": [ { "bookShowId": 8, "bookName": "kkk", "bookAuthorName": "ppp", "bookPrice": 0, "bookPlace": "string", "bookRemark": "string" } ] } ``` ### 图书查询根据特定条件 ####说明:可以两个字段都查询,也可以只查询一个,也可以都不查(默认为查询数据库全部数据) ####注意空值"" 和Null的区别,如果值为"" 请把值变为Null再传过来 ####完善,验证值为"" 如果为,在后端变为Null: - URL:` /api/book/queryBookByName ` - 请求类型:GET 请求参数 | 字段 | 类型 | 描述 | | --------- | ------ | ------ | | bookName | String | 图书名称 | | bookAuthorName | String | 作者名称 | 响应数据格式 (JSON) ``` json { "message": "操作成功", "status": 0, "data": [ { "bookShowId": 2, "bookName": "string", "bookAuthorName": "string", "bookPrice": 0, "bookPlace": "string", "bookRemark": "string" } ] } ``` ### 分页查询全部图书数据 - URL:` /api/book/queryBookById/{page}/{pageSize} ` - 请求类型:POST 请求参数 | 字段 | 类型 | 描述 | | --------- | ------ | ------ | | pageNum | Int | 页码值 | | pageSize | Int | 每页显示多少条数据 | | bookName | String | 图书名称 | | bookAuthorName | String | 作者名称 | 响应数据格式 (JSON) ``` json { "message": "操作成功", "status": 0, "data": { "records": [ { "bookShowId": 2, "bookName": "string", "bookAuthorName": "string", "bookPrice": 0, "bookPlace": "string", "bookRemark": "string" } ], "total": 25, "size": 1, "current": 1, "orders": [], "searchCount": true, "pages": 25 } } ``` ### 根据id获取单个图书数据 - URL:` /api/book/queryBookById/{bookShowId} - 请求类型:GET 请求参数 | 字段 | 类型 | 描述 | | --------- | ------ | ------ | | bookShowId | Int | 图书id | 响应数据 ``` json { "message": "操作成功", "status": 0, "data": { "bookShowId": num, "bookName": "string", "bookAuthorName": "string", "bookPrice": 0, "bookPlace": "string", "bookRemark": "string" } } ``` ## 读者管理 ### 新增读者 - URL:` /api/readers/addReaders ` - 请求类型:POST 请求参数 | 字段 | 类型 | 描述 | | --------- | ------ | ------ | | readersName | String | 读者姓名 | | readersPhone | String | 读者手机号码 | | readersSex | String(1个字符长度) | 读者性别 | | readersOccupation | String | 读者职业 | 响应数据格式 (JSON) ``` json { "message": "操作成功", "status": 0, "data": null } ``` ### 更新读者信息 根据readersShowId来更改 - URL:` /api/readers/updateReaders ` - 请求类型:POST 请求参数 | 字段 | 类型 | 描述 | | --------- | ------ | ------ | | readersShowId | String | 读者id | | readersName | String | 读者姓名 | | readersPhone | String | 读者手机号码 | | readersSex | String(1个字符长度) | 读者性别 | | readersOccupation | String | 读者职业 | 响应数据格式 (JSON) ``` json { "message": "操作成功", "status": 0, "data": null } ``` ### 删除读者信息 - URL:` /api/readers/deleteReaders/{readersShowId} ` - 请求类型:GET 请求参数 | 字段 | 类型 | 描述 | | --------- | ------ | ------ | | readersShowId | String | 读者ID | 响应数据格式 (JSON) ``` json { "message": "操作成功", "status": 0, "data": null } ``` ### 获取全部读者数据 - URL:` /api/readers/queryAllReaders ` - 请求类型:GET 请求参数 | 字段 | 类型 | 描述 | | --------- | ------ | ------ | 响应数据格式 (JSON) ``` json { "message": "操作成功", "status": 0, "data": [ { "readersShowId": 1, "readersName": "string", "readersPhone": "string", "readersSex": "1", "readersOccupation": "string" } ] } ``` ### 分页查询全部读者数据 - URL:` /api/readers/queryReaders/{pageNum}/{pageSize} ` - 请求类型:POST 请求参数 | 字段 | 类型 | 描述 | | --------- | ------ | ------ | | pageNum | String | 页码值 | | pageSize | String | 每页显示多少条数据 | | readersName | String | 读者姓名 | | readersSex | String | 读者性别 | 响应数据格式 (JSON) ``` json { "message": "操作成功", "status": 0, "data": { "records": [ { "readersShowId": 1, "readersName": "string", "readersPhone": "string", "readersSex": "2", "readersOccupation": "string" } ], "total": 23, "size": 10, "current": 1, "orders": [], "searchCount": true, "pages": 3 } } ``` ### 根据id获取单个读者数据 - URL:` /api/readers/queryReadersById/{readersShowId}` - 请求类型:GET 请求参数 | 字段 | 类型 | 描述 | | --------- | ------ | ------ | | readersShowId | Int | 读者id | |响应数据格式 (JSON)||| ``` json { "message": "操作成功", "status": 0, "data": { "readersShowId": 2, "readersName": "string", "readersPhone": "string", "readersSex": "1", "readersOccupation": "string" } } ``` ## 借阅管理 ### 根据特定信息查询借阅信息 - URL:` /api/borrow/queryBorrow/{readersName}/{bookName} ` - 请求类型:GET 请求参数 | 字段 | 类型 | 描述 | | --------- | ------ | ------ | | readersName | String | 读者姓名 | | bookName | String | 图书名称 | 响应数据格式 (JSON) ``` json { "message": "操作成功", "status": 0, "data": [ { "borrowShowId": 2, "readersName": "string", "bookName": "kkk", "bookAuthorName": "ppp", "borrowReturn": "1", "bookBorrow": "2021-11-30 18:46:17", "bookReturn": "2022-02-28 18:46:17" } ] } ``` ### 删除借阅信息 - URL:` /api/borrow/deleteBorrow/{borrowShowId} ` - 请求类型:POST 请求参数 | 字段 | 类型 | 描述 | | ------------ | ------ | -------- | | borrowShowId | int | 前端展示id | 响应数据格式 (JSON) ```json { "message": "操作成功", "status": 0, "data": null } ``` ### 读者借阅书籍 - URL:` /api/borrow/addBorrow ` - 请求类型:POST 请求参数 | 字段 | 类型 | 描述 | | --------- | ------ | ------ | | readersName | String | 读者姓名 | | bookName | String | 图书名称 | | bookAuthorName | String | 作者名称 | | bookBorrow | String | 借阅时间 | 响应数据格式 (JSON) ``` json { "message": "操作成功", "status": 0, "data": null } ``` ### 读者归还图书 - URL:` /api/borrow/borrowReturn ` - 请求类型:POST 请求参数 | 字段 | 类型 | 描述 | | --------- | ------ | ------ | | readersName | String | 读者姓名 | | bookName | String | 图书名称 | | bookAuthorName | String | 作者名称 | 响应数据格式 (JSON) ``` json { "message": "操作成功", "status": 0, "data": null } ``` ### 获取全部借阅信息 - URL:` /api/borrow/queryAllBorrow ` - 请求类型:GET 请求参数 | 字段 | 类型 | 描述 | | --------- | ------ | ------ | 响应数据格式 (JSON) ``` json { "message": "操作成功", "status": 0, "data": [ { "borrowShowId": 2, "readersName": "string", "bookName": "kkk", "bookAuthorName": "ppp", "borrowReturn": "1", "bookBorrow": "2021-11-30 18:46:17", "bookReturn": "2022-02-28 18:46:17" } ] } ``` ### 更新修改借阅信息 根据id更新来进行修改,只能改变书名、作者名称、归还情况、借阅时间 - URL:` /api/borrow/updateBorrowInfo ` - 请求类型:POST 请求参数 | 字段 | 类型 | 描述 | | --------- | ------ | ------ | | borrowShowId | String | 借阅信息隐藏id | | readersName | String | 读者姓名 | | bookName | String | 图书名称 | | bookAuthorName | String | 作者名称 | | borrowReturn | String | 归还情况 | | bookBorrow | String | 借阅时间 | 响应数据格式 (JSON) ``` json { "message": "操作成功", "status": 0, "data": null } ``` ### 分页查询全部借阅数据 - URL:` /queryBorrowByPage/{pageNum}/{pageSize} ` - 请求类型:POST 请求参数 | 字段 | 类型 | 描述 | | --------- | ------ | ------ | | pagenum | String | 页码值 | | pagesize | String | 每页显示多少条数据 | | readersName | String | 读者姓名 | | bookName | String | 图书名称 | 响应数据格式 (JSON) ``` json { "message": "操作成功", "status": 0, "data": { "records": [ { "borrowShowId": 2, "readersName": "string", "bookName": "kkk", "bookAuthorName": "ppp", "bookBorrow": "2021-11-29T12:52:18", "bookReturn": "2022-02-28T19:26:48" } ], "total": 1, "size": 10, "current": 1, "orders": [], "searchCount": true, "pages": 1 } } ``` ### 根据id获取单个借阅数据 - URL:` /api/borrow/queryBorrowById/{borrowShowId}` - 请求类型:GET 请求参数 | 字段 | 类型 | 描述 | | --------- | ------ | ------ | | book_id | Int | 图书id | 响应数据格式 (JSON) ``` json { "message": "操作成功", "status": 0, "data": { "borrowShowId": 2, "readersName": "string", "bookName": "kkk", "bookAuthorName": "ppp", "borrowReturn": "1", "bookBorrow": "2021-11-30 18:46:17", "bookReturn": "2022-02-28 18:46:17" } } ```