项目简介
本项目是基于Spring Cloud和MyBatis Plus的影院管理系统,提供完整的微服务架构解决方案。涵盖用户管理、影片管理、影院管理、播放厅管理等模块,借助Spring Cloud的注册中心、负载均衡、熔断器等功能保障系统高可用性与可扩展性,利用MyBatis Plus简化数据库操作,提升开发效率。
项目的主要特性和功能
微服务架构
- 服务注册与发现:用Eureka作服务注册中心,实现服务自动注册与发现。
- 负载均衡:通过Ribbon实现客户端负载均衡,保障服务高可用性。
- 熔断与降级:集成Hystrix,提供熔断和降级机制,防止服务雪崩。
- API网关:用Zuul作API网关,统一管理外部请求,提供安全认证和请求过滤。
数据访问层
- MyBatis Plus:简化数据库操作,封装CRUD操作,支持分页查询、乐观锁等。
- 数据实体生成:使用MyBatis Plus代码生成器,自动生成实体类、Mapper接口和XML映射文件。
业务模块
- 用户模块:含用户登录、用户信息管理等功能。
- 影片模块:提供影片信息增删改查,支持影片评分、票房统计等。
- 影院模块:管理影院信息,包括基本信息、放映厅信息等。
- 播放厅模块:管理播放厅排片信息,支持播放厅增删改查。
安全与认证
- JWT认证:用JWT进行用户认证,确保API安全。
- 跨域资源共享:通过CORS解决跨域问题,保证前后端正常通信。
安装使用步骤
环境准备
- Java开发环境:安装JDK 8或更高版本。
- 数据库:安装并配置MySQL数据库。
- 开发工具:推荐使用IntelliJ IDEA或Eclipse。
- Maven:安装Maven用于项目构建和管理依赖。
项目构建
- 复制项目(此处文档未给出具体命令)。
- 导入项目:用IntelliJ IDEA或Eclipse导入Maven项目,等待Maven自动下载依赖。
- 配置数据库:在
application.yml
或application.properties
文件中配置数据库连接信息,运行数据库脚本创建所需表。 - 启动服务:依次启动Eureka Server、各微服务模块(如用户服务、影片服务、影院服务等),启动Zuul网关服务。
运行项目
- 启动Eureka Server:
bash cd backend_eureka_server mvn spring-boot:run
- 启动各个微服务模块:
bash cd backend_user mvn spring-boot:run
- 启动Zuul网关:
bash cd backend_apigw_zuul mvn spring-boot:run
- 访问系统:打开浏览器,访问
http://localhost:8761
查看Eureka服务注册情况,通过Zuul网关访问各微服务API,如http://localhost:8080/user/login
。
测试
- 单元测试:用JUnit进行单元测试,运行测试类查看结果。
- 集成测试:用TestNG进行集成测试,运行集成测试类查看报告。
部署
- 打包项目:
bash mvn clean package
- 部署到服务器:将生成的jar包上传到服务器,用
java -jar
命令启动各服务。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】