Java项目:springboot+vue电影院会员管理系统
作者主页:夜未央5788
简介:Java领域优质创作者、Java项目、学习资料、技术互助
文末获取源码
项目介绍
本项目代码架构设计简单,注释齐全,结构清晰,适合同为java初学者参考。
cinema项目是一套电影院会员管理系统,使用前后端分离架构开发,前端基于Vue.js+Element UI技术,后端使用springboot+mybatis实现,包含管理员、会员管理、会员卡管理、电影票、消费记录、数据统计等模块
环境需要
1.运行环境:最好是java jdk 1.8,我们在这个平台上运行的。其他版本理论上也可以。
2.IDE环境:IDEA,Eclipse,Myeclipse都可以。推荐IDEA;
3.tomcat环境:Tomcat 7.x,8.x,9.x版本均可
4.硬件环境:windows 7/8/10 1G内存以上;或者 Mac OS;
5.是否Maven项目: 是;查看源码目录中是否包含pom.xml;若包含,则为maven项目,否则为非maven项目
6.数据库:MySql 5.7版本;
技术栈
1. 后端:springboot+mybatis
2. 前端:vue.js+element-ui
使用说明
* 数据库文件cinema.sql已整合到项目中,使用mysql导入即可生成数据库
* 本项目已经整合了前后端,前端文件经过webpack构建后,生成了static文件夹和index.html放入了webapp下。
* 要对前端页面进行修改,修改完成后同样将生成的文件放到本项目的webapp下。
* 需上交的程序设计文档可参考目录下:电影院会员管理系统说明文档.docx
运行项目
* 方法一: cinema项目中已经整合了vue打包的静态资源,直接启动项目,并在浏览器上输入http://localhost:8081/cinema 即可运行。
1. 使用IDEA/Eclipse/MyEclipse导入项目,Eclipse/MyEclipse导入时,若为maven项目请选择maven;若为maven项目,导入成功后请执行maven clean;maven install命令,下载所需jar包;
2. 使用Navicat或者其它工具,在mysql中创建对应名称的数据库,并导入项目的sql文件;
3. 将项目中db.properties配置文件中的数据库配置改为自己的配置
4. 配置tomcat,然后运行项目,输入http://localhost:8081/cinema 登录
5. 账户:admin 密码:123123
* 方法二: cinema-web项目是cinema项目的vue单页面前端项目,可以在文件夹目录下命令行输入:
`npm run install`
`npm run dev`
后,修改utils/request.js下baseURL=”/api”,开启node反向代理服务器,解决跨域问题,然后启动cinema后端项目,在浏览器上输入 http://localhost:8080 即可以前后端分离方式运行(也可以npm run build后将dist文件夹放到nginx下运行)
运行截图
代码相关
会员管理控制器
@CrossOrigin
@RestController
public class CardController {@ResourceCardService cardService;@RequestMapping("getCardData")public CinemaResult getCardData(String memberId, String pageIndex, String pageSize) {//这里使用分页插件pagehelperPageResult pageResult = new PageResult();PageHelper.startPage(Integer.parseInt(pageIndex), Integer.parseInt(pageSize));List lists = cardService.getCardData(memberId);PageInfo<Card> pageInfo = new PageInfo<>(lists);pageResult.setList(pageInfo.getList());pageResult.setPageTotal(pageInfo.getTotal());return CinemaResult.ok(pageResult);}/*** //注册会员卡,请求参数无,返回状态* export const registerCard = query=>{* return request({* url:"registerCard",* method:'get',* params:query* });* };*/@RequestMapping("registerCard")public CinemaResult registerCard(String memberId) {cardService.registerCard(memberId);return CinemaResult.ok();}/*** //补卡,请求参数卡号id,返回新卡id号,并提示会员* export const reissueCard = query=>{* return request({* url:"reissueCard",* method:'post',* params:query* });* };*/@RequestMapping("reissueCard")public CinemaResult reissueCard(String cardId) {cardId = cardService.reissueCard(cardId);return CinemaResult.ok(cardId);}/*** //挂失会员卡,请求参数id,返回状态* export const loseCard = query=>{* return request({* url:"loseCard",* method:'post',* params:query* });* };*/@RequestMapping("loseCard")public CinemaResult loseCard(String cardId) {cardService.loseCard(cardId);return CinemaResult.ok();}/*** //解挂会员卡,请求参数卡号,返回状态* export const cancelCard = query=>{* return request({* url:"cancelCard",* method:'post',* params:query* });* };*/@RequestMapping("cancelCard")public CinemaResult cancelCard(String cardId) {cardService.cancelCard(cardId);return CinemaResult.ok();}/*** //充值会员卡,请求卡号、参数金额,返回状态* export const rechargeCard = query=>{* return request({* url:"rechargeCard",* method:'post',* params:query* });* };*/@RequestMapping("rechargeCard")public CinemaResult rechargeCard(String cardId, String value) {cardService.rechargeCard(cardId, Integer.parseInt(value));return CinemaResult.ok();}/*** //消费,请求参数卡号、金额、消费类型,返回状态* export const consumeCard = query=>{* return request({* url:"consumeCard",* method:'post',* params:query* });* };*/@RequestMapping("consumeCard")public CinemaResult consumeCard(String cardId, String price, String integral) {cardService.consumeCard(cardId, Integer.parseInt(price), Integer.parseInt(integral));return CinemaResult.ok();}/*** //积分兑换,请求参数:会员id,积分* //由于是总积分兑换,所以需要将消耗积分分散到所有卡上面* export const exchangeIntegral = query=>{* return request({* url:"exchangeIntegral",* method:'post',* params:query* });* };*/@RequestMapping("exchangeIntegral")public CinemaResult exchangeIntegral(String memberId, String integral) {cardService.exchangeIntegral(memberId, Integer.parseInt(integral));return CinemaResult.ok();}/*** //通过模糊条件查询到cardId,请求参数memberId,CardId,返回CardId列表* export const getCardIdByFuzzyQuery = query=>{* return request({* url:"getCardIdByFuzzyQuery",* method:'post',* params:query* });* };*/@RequestMapping("getCardIdByFuzzyQuery")public CinemaResult getCardIdByFuzzyQuery(String memberId,String cardId) {return CinemaResult.ok(cardService.getCardIdByFuzzyQuery(memberId,cardId));}/*** //通过完整cardid来查询card数据,返回Card对象* export const getCardByCardId = query=>{* return request({* url:"getCardByCardId",* method:'post',* params:query* });* };*/@RequestMapping("getCardByCardId")public CinemaResult getCardByCardId(String cardId) {return CinemaResult.ok(cardService.getCardByCardId(cardId));}
}
统计管理控制器
@CrossOrigin
@RestController
public class StatisticController {@ResourceMemberService memberService;@ResourceCardService cardService;@ResourceRecordService recordService;
/*** //获取统计数字数据,请求参数无* export const statisticData = query=>{* return request({* url:'getStatisticData',* method:'get',* params:query* });* };*/@RequestMapping("getStatisticData")public CinemaResult getStatisticData(){StatisticData s = new StatisticData();s.setMemberNum(memberService.getMemberNum());s.setCardNum(cardService.getCardNum());s.setMovieNum(recordService.getMovieNum());return CinemaResult.ok(s);}/*** //获取消费充值等金额数据,请求参数无* export const requestDealData = query=>{* return request({* url:'requestDealData',* method:'get',* params:query* });* };*/@RequestMapping("requestDealData")public CinemaResult requestDealData(){DealData dealData = new DealData();dealData.setConsume(recordService.getConsumeCount()*-1);dealData.setIntegral(recordService.getIntegralExchangeCount()*-1);dealData.setRecharge(recordService.getRechargeCount());return CinemaResult.ok(dealData);}/*** //获取充值消费数据的图标数据,请求参数无,返回包含三个整型数组的对象* export const getSchart1Data = query=>{* return request({* url:"getSchart1Data",* method:'post',* params:query* });* };*/@RequestMapping("getSchart1Data")public CinemaResult getSchart1Data(){return CinemaResult.ok(recordService.getSchart1Data());}
}
电影管理控制器
@CrossOrigin
@RestController
public class MovieController {@ResourceMovieService movieService;/*** //添加电影票数据,需要返回电影票全部数据,因为电影票id需要服务端生成* export const insertMovie = query=>{* return request({* url:'insertMovie',* method:'post',* params:query* })* };*/@RequestMapping("insertMovie")public CinemaResult insertMovie(Movie movie){return movieService.insertMovie(movie);}/*** //获取电影票数据,请求参数:pageIndex,pageSize,返回电影列表和总记录数* export const movieData = query =>{* return request({* url:'getMovie',* method:'get',* params:query* });* };*/@RequestMapping("getMovie")public CinemaResult getMovie(String pageIndex,String pageSize){//这里使用分页插件pagehelperPageResult pageResult = new PageResult();PageHelper.startPage(Integer.parseInt(pageIndex),Integer.parseInt(pageSize));List lists = movieService.getMovieData();PageInfo<Card> pageInfo = new PageInfo<>(lists);pageResult.setList(pageInfo.getList());pageResult.setPageTotal(pageInfo.getTotal());return CinemaResult.ok(pageResult);}/*** //删除电影数据,请求参数:movieId* export const delMovie = query=>{* return request({* url:'delMovie',* method:'get',* params:query* });* };*/@RequestMapping("delMovie")public CinemaResult delMovie(String movieId){movieService.delMovie(movieId);return CinemaResult.ok();}/*** * //修改电影数据,请求参数:movieId、name、price、time* * export const modifyMovie = query=>{* * return request({* * url:'modifyMovie',* * method:'get',* * params:query* * });* * };*/@RequestMapping("modifyMovie")public CinemaResult modifyMovie(Movie movie){return movieService.modifyMovie(movie);}
}
/*
*
* //删除电影数据,请求参数:movieId
export const delMovie = query=>{return request({url:'delMovie',method:'get',params:query});
};
//修改电影数据,请求参数:movieId、name、price、time
export const modifyMovie = query=>{return request({url:'modifyMovie',method:'get',params:query});
};*/
如果也想学习本系统,下面领取。回复:034springboot
Java项目:springboot+vue电影院会员管理系统相关推荐
- 基于Springboot+vue电影院会员管理系统(源代码+数据库+文档)025
部分代码地址 https://gitee.com/ynwynwyn/cinema-public 基于Springboot+vue电影院会员管理系统(源代码+数据库+文档) 一.系统介绍 cinema项 ...
- 计算机毕业设计-基于springboot的电影院会员管理系统(项目+文档+ppt)
计算机毕业设计-基于springboot的电影院会员管理系统(项目+文档+ppt) 1.开发环境及工具下载 开发语言:Java 架构:B/S 后台:SpringBoot 前端:HTML+CSS+Jav ...
- springboot+vue电影院会员系统源码
项目简介 后端框架:springboot+vue电影院会员系统.影院会员管理系统源码分享 技术栈:vue.springboot.maven.elementui,jquery 数据库:Mysql 源码 ...
- Java基于springboot+vue的电子相册管理系统 前后端分离node
智能电子相册是一个可以永久保留记忆的东西,用户可以讲自己美好的一面展示在网络上,人更多的人了解到自己的生活,为此我们通过Java语言并结合springboot+vue开发了本次的电子相册管理系统,希望 ...
- java项目springboot医院固定资产检修管理系统
功能介绍 主要对主页.个人中心.员工管理.供应商管理.设备类型管理.仪器设备管理.设备采购管理.设备入库管理.设备申请管理.检修信息管理的实现. springboot是spring家族中的一个全新框架 ...
- java项目 SpringBoot+Vue社区团购系统
随着互联网的不断发展,当代人的生活消费习惯发生了翻天覆地的大变化,资本对社区团购的关注源于微信生态概念的火热.拼多多的崛起,随着互联网的不断发展,当代人的生活消费习惯发生了翻天覆地的大变化,资本对社区 ...
- 基于springboot的电影院会员管理系统
一.项目技术方案 本作业后端使用 springboot+mybatis,持久数据库使用 MySQL,前端使用 vue.js+element-ui 技术.使用前后端分离架构,前端项目使用 vue-cli ...
- java基于Springboot+Vue畜牧场养牛管理系统python
本系统结合计算机系统的结构.概念.模型.原理.方法,在计算机各种优势的情况下,采用JAVA语言,结合springboot及MYSQL数据库设计并实现的.它帮助牧场管理实现了信息化.网络化,通过测试,实 ...
- 基于javaweb的电影院会员管理系统(java+springboot+vue+element-ui+mysql)
基于javaweb的电影院会员管理系统(java+springboot+vue+element-ui+mysql) 运行环境 Java≥8.MySQL≥5.7.Node.js≥10 开发工具 后端:e ...
最新文章
- Mysql进阶(1)——异步复制(主从复制、Gtid复制)、半同步复制
- windows环境下安装neo4j
- @Autowired
- 【Level 08】U08 Positive Attitude L5 Satisfy your need to know
- hihocoder1033交错和
- FlexPaper — 可以用来仿豆丁网、百度文库的PDF在线阅读功能
- OpenCV图像处理--opencv摄像头播放视频
- IB网卡驱动安装以及Infiniband连接带宽测试
- 解决 ModuleNotFoundError: No module named ‘PySide2.QtUiTools‘
- Netbean6.1中svn配置
- 颜色分类Python解法
- 全球与中国冲压空气涡轮行业调查与未来发展趋势研究报告
- 女孩取名:带日字旁好听有内涵的女孩名字
- UEFI HOB 学习
- Interval 类型总结
- 华科计算机系统结构研究生就业,华中科技大学这四个“王牌”专业,堪比金字招牌,考上就是“香饽饽”...
- 安卓无线蓝牙耳机哪款好?实惠好用的蓝牙耳机品牌
- 计算机视觉算法——基于Transformer的目标检测(DETR / Deformable DETR / DETR 3D)
- 在建工程直接费用化_​在建工程资本化费用化区别
- CV2的conda安装
热门文章
- 学系统集成项目管理工程师(中项)系列26_新兴信息技术
- mysql gis index 索引原理_Mysql 索引原理及优化
- native+html5
- 苹果究竟对AI是怎么看的?现在终于有答案了
- 原生JS实现钟表效果
- [explan-trans]不用将train的01234数据提到一个文件夹train_images的vit程序(需要给图片-名字前面添加标签)
- 《多媒体在初中数学中的运用研究》研究课例
- 推特开发者之 tweepy库如何获取用户早期推文
- 数据库mysql增删查改操作指令
- 【PaddleHub创意赛】APP评论情感分析