——————————DescriptionStart——————————
运行环境
Java≥8、MySQL≥5.7
开发工具
eclipse/idea/myeclipse/sts等均可配置运行
适用
课程设计,大作业,毕业设计,项目练习,学习演示等
功能说明





基于javaweb的SpringBoot电影售票系统设计和实现(java+springboot+ssm+mysql+jsp+maven)
一、项目简述
Java电影院系统功能:
登陆注册模块 :
普通用户可以直接访问影院主界面进行电影浏览、查询等 功能,但是当用户操作需要读取用户信息时就要求用户进 行登录了。普通用户可以直接访问登录页面或者通过页面 的登录选项进行登录,当用户不拥有账号时,即可通过注 册链接进行账号注册,注册完毕后自动返回登录页面,方 便用户登录。
电影查询浏览模块 :
电影浏览查询模块作为本系统最重要的模块之一,面向普 通用户。其意指通过不同方式向用户展示电影并提供电影 详情链接,其主要包括以下子模块:(1) 电影类型查询:用 户可以根据个人类型喜好对影片进行筛选。(2) 电影放映 厅类型查询:用户可以根据个人对放映厅要求对影片进行 筛选。(3) 电影中间字查询:用户可以根据电影名中间字 对电影进行模糊查询。(4) 最新电影:用户向用户展示系 统最新添加的电影。(5) 热门电影:基于评论和心愿单功 能计算电影热度值,并向用户展示高热度的电影。(6) 最 新评论电影:基于评论功能,向用户展示最新评论下的电 影。
电影信息管理模块 :
电影信营:管理模块的面向对象是管理员用户,管理员在电 影信息管理页面对电影信息查询、修改、添加,需要注意 的是对电影海报的操作类型取决于新旧电影。 放映厅管理模块 放映厅管理模块的主要面向对象同样是管理员用户,管理员管理着电影与放映厅间的关联关系,普通用户只在具体 电影选择上才会展现其关系
场次管理模块 :
场次管理模块是放映厅管理模块的系统功能延伸,其主要 面向对象仍是管理员用户,管理员在电影与放映厅关系存 在的情况下对场次信息进行管理,反之操作条件不成立, 普通用户只在具体电影选择上才会展现其关联信息。需要 注意的是,不允许管理员对已售出票的场次进行场次取 消,直到普通用户全部退票。
票务管理模块 :
章务管理底块又是场次管理模块的系统功能延伸,其作为本系统最重要的模块之一,主要面向对象为普通用户。其普通用户在登录情况下选择场次进行选座购票,购票完毕 后可在个人票务管理页面对个人购票信息进行查询、退票。管理员在票务总览页面对所有票务进行查询,不允许对任何票务进行修改。
二项目运行 、
环境配置: Jdk1.8 + mysql + Eclispe (IntelliJ IDEA,Eclispe,MyEclispe,Sts 都支持)
项目技术: JSP +Springboot+ SpringMVC + MyBatis + ThymeLeaf + HTML+ JavaScript + JQuery + Ajax + maven等等
——————————CodeStart——————————
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
| package com.demo.controller.management;
@RestController public class HallController { @Autowired private HallService hallService;
@RequestMapping(value = "hall/all", method = RequestMethod.GET) public ResponseVO searchAllHall(){ return hallService.searchAllHall(); }
@RequestMapping(value = "hall/add", method = RequestMethod.POST) public ResponseVO addHall(@RequestBody Hall addHallForm){return hallService.addHall( addHallForm);}
@RequestMapping(value = "hall/update", method = RequestMethod.POST) public ResponseVO updateHall(@RequestBody Hall updateHallForm){return hallService.updateHall( updateHallForm);} } package com.demo.commmon.interceptor;
public class SessionInterceptor extends HandlerInterceptorAdapter { @Override public boolean preHandle(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Object handler) throws Exception{ HttpSession session=httpServletRequest.getSession(); if(null!=session && null!=session.getAttribute(InterceptorConfiguration.SESSION_KEY)){ return true;
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
| public ResponseVO charge(@RequestBody VIPCardForm vipCardForm){ return vipService.charge(vipCardForm); }
@GetMapping("/get/all/strategy") public ResponseVO getAllStrategy(){ return vipService.getAllVip_Strategy(); }
@PostMapping("/add/strategy") public ResponseVO addStrategy(@RequestParam int chargeLimit ,int giftAmount) {return vipService.issueVIP_Strategy(chargeLimit,giftAmount);}
@PostMapping("/update/strategy") public ResponseVO updateStrategy(@RequestParam int id,int chargeLimit ,int giftAmount) {return vipService.changeVIP_Strategy(id,chargeLimit,giftAmount);}
@PostMapping("delete/strategy") public ResponseVO deleteStrategy(@RequestParam int id){return vipService.deleteVIP_Strategy(id);}
@PostMapping("insert/history") public ResponseVO insertHistory(@RequestBody historyItem history){return accountService.insertHistory(history); }
@GetMapping("get/by/money") public ResponseVO getByMoney(@RequestParam int target){return vipService.getVipByMoney(target);} } package com.demo.controller.sales;
@RestController @RequestMapping("/ticket") public class TicketController { @Autowired TicketService ticketService; @Autowired
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
| public ResponseVO deleteUser(@RequestParam int userId){return accountService.deleteUser(userId);}
} package com.demo.controller.promotion;
@RestController() @RequestMapping("/vip") public class VIPCardController { @Autowired VIPService vipService; @Autowired AccountService accountService; @PostMapping("/add") public ResponseVO addVIP(@RequestParam int userId){ return vipService.addVIPCard(userId); } @GetMapping("{userId}/get") public ResponseVO getVIP(@PathVariable int userId){ return vipService.getCardByUserId(userId); }
@GetMapping("/getVIPInfo") public ResponseVO getVIPInfo(){ return vipService.getVIPInfo(); }
@PostMapping("/charge") public ResponseVO charge(@RequestBody VIPCardForm vipCardForm){ return vipService.charge(vipCardForm); }
@GetMapping("/get/all/strategy") public ResponseVO getAllStrategy(){ return vipService.getAllVip_Strategy(); }
@PostMapping("/add/strategy")
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41
| return scheduleService.updateSchedule(scheduleForm); }
@RequestMapping(value = "/schedule/search", method = RequestMethod.GET) public ResponseVO searchSchedule(@RequestParam int hallId, @RequestParam Date startDate){ return scheduleService.searchScheduleSevenDays(hallId, startDate); }
@RequestMapping(value = "/schedule/search/audience", method = RequestMethod.GET) public ResponseVO searchAudienceSchedule(@RequestParam int movieId){ return scheduleService.searchAudienceSchedule(movieId); }
@RequestMapping(value = "/schedule/view/set", method = RequestMethod.POST) public ResponseVO setScheduleView(@RequestBody ScheduleViewForm scheduleViewForm){ return scheduleService.setScheduleView(scheduleViewForm); }
@RequestMapping(value = "/schedule/view", method = RequestMethod.GET) public ResponseVO getScheduleView(){ return scheduleService.getScheduleView(); }
@RequestMapping(value = "/schedule/delete/batch", method = RequestMethod.DELETE) public ResponseVO deleteBatchOfSchedule(@RequestBody ScheduleBatchDeleteForm scheduleBatchDeleteForm){ return scheduleService.deleteBatchOfSchedule(scheduleBatchDeleteForm); }
@RequestMapping(value = "/schedule/{id}", method = RequestMethod.GET) public ResponseVO getScheduleById(@PathVariable int id){ return scheduleService.getScheduleById(id); }
} package com.demo.controller.user;
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
|
@RestController public class HallController { @Autowired private HallService hallService;
@RequestMapping(value = "hall/all", method = RequestMethod.GET) public ResponseVO searchAllHall(){ return hallService.searchAllHall(); }
@RequestMapping(value = "hall/add", method = RequestMethod.POST) public ResponseVO addHall(@RequestBody Hall addHallForm){return hallService.addHall( addHallForm);}
@RequestMapping(value = "hall/update", method = RequestMethod.POST) public ResponseVO updateHall(@RequestBody Hall updateHallForm){return hallService.updateHall( updateHallForm);} } package com.demo.commmon.interceptor;
public class SessionInterceptor extends HandlerInterceptorAdapter { @Override public boolean preHandle(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Object handler) throws Exception{ HttpSession session=httpServletRequest.getSession(); if(null!=session && null!=session.getAttribute(InterceptorConfiguration.SESSION_KEY)){ return true; }
|
——————————PayStart——————————
项目链接:
https://javayms.github.io?id=221422322105200kd
https://javayms.pages.dev?id=221422322105200kd