littlebot
Published on 2025-04-03 / 0 Visits
0

【源码】基于Spring Cloud Alibaba的仿12306售票系统

项目简介

本项目是仿照12306售票系统开发的微服务项目。运用Spring Cloud Alibaba、Spring Boot 3、JDK 17、MySQL、Redis、Nacos、Sentinel、Seata、RocketMQ等技术栈,实现了前后端分离。前端包含admin和web模块,后端涵盖gateway、member、business、batch等模块。

项目的主要特性和功能

会员模块

  • 支持手机号+验证码的登录注册方式。
  • 可进行乘客管理,用户能为自己或他人购票。
  • 能查询某日起点到终点所有车次和余票。
  • 可选择车次、乘客和座位进行车票购买。
  • 购买成功后可查看车票。

管理模块

  • 进行基础车次维护,包含车站、车次、车厢、座位、到站等信息。
  • 生成每日车次数据。
  • 查看所有会员。
  • 查看所有已售出票。

数据库表

  • 会员表:存储会员信息,含手机号。
  • 乘客表:存储乘客信息,含会员ID、姓名、身份证号、旅客类型。
  • 车票表:存储车票信息,含会员ID、乘客ID、乘客姓名、日期、车次、座位。
  • 业务表:存储车站、车次、车厢、座位等相关信息。

安装使用步骤

环境准备

  1. 安装JDK 17,并配置好环境变量。
  2. 安装并配置MySQL数据库,创建相应的数据库和表。
  3. 安装并启动Redis服务。
  4. 下载并启动Nacos服务,用于服务注册与发现。
  5. 下载并启动Sentinel,用于流量控制和熔断降级。
  6. 下载并启动Seata,用于分布式事务管理。
  7. 下载并启动RocketMQ,用于消息队列。

项目构建

  1. 复制项目(此处原文未提供复制命令)。
  2. 使用IDEA或Eclipse导入项目,确保所有依赖项正确加载。
  3. 修改application.ymlbootstrap.yml中的配置,确保数据库连接、Redis连接、Nacos地址等配置正确。
  4. 依次启动各个模块的服务,确保Nacos中可以看到所有服务注册成功。

运行项目

  1. 进入前端项目目录,运行以下命令启动前端服务: bash npm install npm run dev
  2. 确保所有后端服务已启动,可通过Nacos控制台查看服务状态。
  3. 打开浏览器,访问前端服务的地址,如http://localhost:8080,即可进入仿12306售票系统。

测试

  1. 使用JUnit等测试框架进行单元测试。
  2. 使用Postman等工具进行集成测试,确保各个接口正常工作。

下载地址

点击下载 【提取码: 4003】【解压密码: www.makuang.net】