Java项目:电影售票系统设计和实现(java+Springboot+ssm+mysql+jsp+maven)

news/2024/7/10 3:15:14 标签: java, mysql, springboot, spring, vue

源码获取:博客首页 "资源" 里下载!

一、项目简述

Java电影院系统功能:

登陆注册模块 :

普通用户可以直接访问影院主界面进行电影浏览、查询等 功能,但是当用户操作需要读取用户信息时就要求用户进 行登录了。普通用户可以直接访问登录页面或者通过页面 的登录选项进行登录,当用户不拥有账号时,即可通过注 册链接进行账号注册,注册完毕后自动返回登录页面,方 便用户登录。

电影查询浏览模块 :

电影浏览查询模块作为本系统最重要的模块之一,面向普 通用户。其意指通过不同方式向用户展示电影并提供电影 详情链接,其主要包括以下子模块:(1) 电影类型查询:用 户可以根据个人类型喜好对影片进行筛选。(2) 电影放映 厅类型查询:用户可以根据个人对放映厅要求对影片进行 筛选。(3) 电影中间字查询:用户可以根据电影名中间字 对电影进行模糊查询。(4) 最新电影:用户向用户展示系 统最新添加的电影。(5) 热门电影:基于评论和心愿单功 能计算电影热度值,并向用户展示高热度的电影。(6) 最 新评论电影:基于评论功能,向用户展示最新评论下的电 影。

电影信息管理模块 :

电影信营:管理模块的面向对象是管理员用户,管理员在电 影信息管理页面对电影信息查询、修改、添加,需要注意 的是对电影海报的操作类型取决于新旧电影。 放映厅管理模块 放映厅管理模块的主要面向对象同样是管理员用户,管理员管理着电影与放映厅间的关联关系,普通用户只在具体 电影选择上才会展现其关系

场次管理模块 :

场次管理模块是放映厅管理模块的系统功能延伸,其主要 面向对象仍是管理员用户,管理员在电影与放映厅关系存 在的情况下对场次信息进行管理,反之操作条件不成立, 普通用户只在具体电影选择上才会展现其关联信息。需要 注意的是,不允许管理员对已售出票的场次进行场次取 消,直到普通用户全部退票。

票务管理模块 :

章务管理底块又是场次管理模块的系统功能延伸,其作为本系统最重要的模块之一,主要面向对象为普通用户。其普通用户在登录情况下选择场次进行选座购票,购票完毕 后可在个人票务管理页面对个人购票信息进行查询、退票。管理员在票务总览页面对所有票务进行查询,不允许对任何票务进行修改。

二项目运行 、

环境配置: Jdk1.8 + Tomcat8.5 + mysql + Eclispe (IntelliJ IDEA,Eclispe,MyEclispe,Sts 都支持)

项目技术: JSP +Springboot+ SpringMVC + MyBatis + ThymeLeaf + HTML+ JavaScript + JQuery + Ajax + maven等等

影厅管理控制层:

/**
 * 影厅管理
 */
@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);}
}

电影管理控制层:

/**
 * 电影管理
 */
@RestController
public class MovieController {

    @Autowired
    private MovieService movieService;
    @Autowired
    private MovieLikeService movieLikeService;

    @RequestMapping(value = "/movie/add", method = RequestMethod.POST)
    public ResponseVO addMovie(@RequestBody MovieForm addMovieForm){
        return movieService.addMovie(addMovieForm);
    }

    @RequestMapping(value = "/movie/{id}/{userId}", method = RequestMethod.GET)
    public ResponseVO searchOneMovieByIdAndUserId(@PathVariable int id, @PathVariable int userId){
        return movieService.searchOneMovieByIdAndUserId(id, userId);
    }

    @RequestMapping(value = "/movie/all", method = RequestMethod.GET)
    public ResponseVO searchAllMovie(){
        //返回结果中包括已经下架的电影
        return movieService.searchAllMovie();
    }

    @RequestMapping(value = "/movie/all/exclude/off", method = RequestMethod.GET)
    public ResponseVO searchOtherMoviesExcludeOff(){
        //返回结果中不包括已经下架的电影
        return movieService.searchOtherMoviesExcludeOff();
    }


    @RequestMapping(value = "/movie/{movieId}/like", method = RequestMethod.POST)
    public ResponseVO likeMovie(@PathVariable int movieId,@RequestParam int userId){
        return movieLikeService.likeMovie(userId,movieId);
    }
    @RequestMapping(value = "/movie/{movieId}/unlike", method = RequestMethod.POST)
    public ResponseVO unlikeMovie(@PathVariable int movieId,@RequestParam int userId){
        return movieLikeService.unLikeMovie(userId,movieId);
    }
    @RequestMapping(value = "/movie/{movieId}/like/count", method = RequestMethod.GET)
    public ResponseVO getMovieLikeCounts(@PathVariable int movieId){
        return movieLikeService.getCountOfLikes(movieId);
    }

    @RequestMapping(value = "/movie/{movieId}/like/date", method = RequestMethod.GET)
    public ResponseVO getMovieLikeCountByDate(@PathVariable int movieId){
        return movieLikeService.getLikeNumsGroupByDate(movieId);
    }

    @RequestMapping(value = "/movie/search",method = RequestMethod.GET)
    public ResponseVO getMovieByKeyword(@RequestParam String keyword){
        return movieService.getMovieByKeyword(keyword);
    }

    @RequestMapping(value = "/movie/off/batch",method = RequestMethod.POST)
    public ResponseVO pullOfBatchOfMovie(@RequestBody MovieBatchOffForm movieBatchOffForm){
        return movieService.pullOfBatchOfMovie(movieBatchOffForm);
    }

    @RequestMapping(value = "/movie/update",method = RequestMethod.POST)
    public ResponseVO updateMovie(@RequestBody MovieForm updateMovieForm){
        return movieService.updateMovie(updateMovieForm);
    }




}

排片信息管理控制层:

/**
 * 排片管理
 */
@RestController
public class ScheduleController {
    @Autowired
    private ScheduleService scheduleService;

    @RequestMapping(value = "/schedule/add", method = RequestMethod.POST)
    public ResponseVO addSchedule(@RequestBody ScheduleForm scheduleForm){
        return scheduleService.addSchedule(scheduleForm);
    }

    @RequestMapping(value = "/schedule/update", method = RequestMethod.POST)
    public ResponseVO updateSchedule(@RequestBody ScheduleForm scheduleForm){
        return scheduleService.updateSchedule(scheduleForm);
    }

    @RequestMapping(value = "/schedule/search", method = RequestMethod.GET)
    public ResponseVO searchSchedule(@RequestParam int hallId, @RequestParam Date startDate){
        //这里传递startDate参数时,前端传的是用/分隔的时间,例如startDate=2019/04/12
        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);
    }



}

源码获取:博客首页 "资源" 里下载! 


http://www.niftyadmin.cn/n/1554579.html

相关文章

centos7查看mysql端口_centos7开启3306端口,liunx查看防火墙是否开启

Cant connect to MySQL server on localhost(10061)这个就属于下面要说的情况启动服务systemctl start mariadb.servicesystemctl enable mariadb.servicesystemctl stop mariadb.service1.首先开启mysql权限设置ROOT密码mysqladmin -u root password 888888mysql -u root -pus…

mysql 查询语句超时_SQL查询超时的设置方法(关于timeout的处理)

为了优化OceanBase的query timeout设置方式,特调研MySQL关于timeout的处理,记录如下。 mysql> show variables like %time%; +----------------------------+-------------------+ | Variable_name | Value | +----------------------------+-------------------+ | conne…

Java项目:在线嘿嘿网盘系统设计和实现(java+Springboot+ssm+mysql+maven)

源码获取:博客首页 "资源" 里下载! 一、项目简述 功能:用户的邮箱注册、验证码验证以及用户登录。 不需要注册账号,也可以上传满足条件的临时文件,但是 只4小时内有效。 文件的管理,上传、下载、…

Java项目:前台展示+后台管理结合的在线购书系统(java+Springboot+ssm+mysql+maven)

源码获取:博客首页 "资源" 里下载! 一、项目简述 功能:一个基于JavaWeb的网上书店的设计与实现,归纳 出了几个模块,首先是登录注册模块,图书查找模块,购物车模块,订单模块…

mysql分区并行执行_关于MySQL8.0 InnoDB并行执行的详解

概述MySQL经过多年的发展已然成为最流行的数据库,广泛用于互联网行业,并逐步向各个传统行业渗透。之所以流行,一方面是其优秀的高并发事务处理的能力,另一方面也得益于MySQL丰富的生态。MySQL在处理OLTP场景下的短查询效果很好&am…

vc ado mysql开发_VC开发数据库基础之ADO篇 (转载)

VC开发数据库基础之ADO篇一、ADO简介ADO(ActiveX Data Object)是Microsoft数据库应用程序开发的新接口,是建立在OLE DB之上的高层数据库访问技术,请不必为此担心,即使你对OLE DB,COM不了解也能轻松对付ADO,因为它非常简单易用&…

Java项目:流浪猫救助系统(java+Springboot+ssm+mysql+maven)

源码获取:博客首页 "资源" 里下载! 一、项目简述 本系统功能包括:springbootspringmvcmybatis的流浪 猫救助系统,后台分为普通用户可管理员用,包括注册, 登录,流浪猫发布&#xff0c…

Java项目:小区物业管理系统(java+Springboot+ssm+mysql+maven)

源码获取:博客首页 "资源" 里下载! 一、项目简述(PPT演示文档) 本系统功能包括: 实现了资源管理、收费管理、支出管理、三表管理、投诉 建议、装修管理、车位管理、招商管理、物料管理、设备 管理、人事考勤、安保消防、报事报修…