You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
slms/docs/START_WEB_APP.md

2.8 KiB

启动SLMS Web应用

快速启动指南

方法1: 使用命令行(推荐)

  1. 打开命令提示符CMD
  2. 进入项目目录:
cd CS231SEB_SLMS\CHZU_CS231_SEB_lab\SLMS
  1. 设置Java环境
set JAVA_HOME=E:\2025-2026\GitAIOps\jdk
set PATH=%JAVA_HOME%\bin;%PATH%
  1. 启动Web应用
mvn spring-boot:run -Dmaven.test.skip=true

或者直接运行:

run_web.bat

方法2: 使用IDE

如果使用IntelliJ IDEA或Eclipse

  1. 打开项目
  2. 找到 com.smartlibrary.web.WebApplication
  3. 右键点击 → Run 'WebApplication.main()'

访问应用

启动成功后,在浏览器中访问:

启动成功标志

看到以下日志表示启动成功:

Started WebApplication in X.XXX seconds
Tomcat started on port(s): 8080 (http)

MOCK数据

Web应用会自动加载共享数据库 library.db 中的MOCK数据

  • 27本图书(实体书、电子书、期刊)
  • 10个用户
  • 16条借阅记录

可用功能

Web页面

  • / - 首页
  • /books - 图书列表
  • /books/add - 添加图书
  • /books/{id} - 图书详情
  • /books/borrow - 借阅图书
  • /books/return - 归还图书
  • /loans - 借阅记录

REST API

  • GET /api/books - 获取所有图书
  • GET /api/books/{id} - 获取指定图书
  • POST /api/books - 添加新图书
  • GET /api/loans - 获取所有借阅记录
  • POST /api/loans - 借阅图书
  • PUT /api/loans/return - 归还图书

测试API

使用浏览器或curl测试

# 获取所有图书
curl http://localhost:8080/api/books

# 获取指定图书
curl http://localhost:8080/api/books/B001

# 添加图书
curl -X POST http://localhost:8080/api/books \
  -H "Content-Type: application/json" \
  -d '{
    "bookType": "实体书",
    "title": "测试图书",
    "author": "测试作者",
    "isbn": "TEST123",
    "publisher": "测试出版社",
    "publishDate": "2025-11-19",
    "category": "测试"
  }'

停止应用

在命令行窗口按 Ctrl + C 停止服务器

常见问题

Q: 端口8080已被占用 A: 修改 src/main/resources/application.properties

server.port=8081

Q: 数据不显示? A: 运行 init_database.bat 初始化数据库

Q: 编译错误? A: 确保Java版本为JDK 21运行 mvn clean compile

注意事项

  1. 确保数据库文件 library.db 存在
  2. 确保端口8080未被占用
  3. Web应用与CLI、GUI共享同一数据库
  4. 所有修改会实时同步到其他应用

提示: 首次启动可能需要下载依赖,请耐心等待。