Java项目:143JSP电影院管理系统

作者主页:夜未央5788

 简介:Java领域优质创作者、Java项目、学习资料、技术互助

文末获取源码

项目介绍

本项目包含前后台,前台为普通用户登录,后台为管理员登录。
管理员角色包含以下功能:
用户管理,电影管理,影院管理、放映厅管理、场次管理、评论管理、订单管理等功能。

用户角色包含以下功能:
首页、电影详情查看、购票、选座、支付、查看订单、搜索电影、发表评论等功能;

环境需要

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.数据库:MySql 5.7、8.0等版本均可;

6.是否Maven项目: 否;

技术栈

Servlet、JSP、JDBC、MySQL5.7/8.0、Tomcat8、jquery、layui、bootstrap等

使用说明

1. 使用Navicat或者其它工具,在mysql中创建对应sql文件名称的数据库,并导入项目的sql文件;
2. 使用IDEA/Eclipse/MyEclipse导入项目;
3. 将项目中util/JdbcUtil.java配置文件中的数据库配置改为自己的配置;
4. 运行项目,在浏览器中输入http://localhost:8080/ 登录
管理员账号/密码:admin/123456

用户账号/密码:test/123456

运行截图

前台界面

后管界面

相关代码

CinemaServlet

package com.movie.servlet;

import java.io.IOException;
import java.io.PrintWriter;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;


import com.alibaba.fastjson.JSON;
import com.github.pagehelper.PageInfo;
import com.movie.bean.Cinema;
import com.movie.service.CinemaService;

@WebServlet("/cinema")
public class CinemaServlet extends HttpServlet{
	
	private CinemaService cinemaService;

	private static final long serialVersionUID = 1L;

	@Override
	public void init() throws ServletException {
		cinemaService = new CinemaService();
	}
	
	@Override
	protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
		String method = req.getParameter("method");
		if("findAllCinema".equals(method)){
			findAllCinema(req,resp);
		}else if("updateCinema".equals(method)){
			updateCinema(req,resp);
		}else if("add".equals(method)){
			add(req,resp);
		}
		// 重定向
		//resp.sendRedirect("product_list");
	}
	@Override
	protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
		doPost(req, resp);
	}
	
	private void findAllCinema(HttpServletRequest req, HttpServletResponse resp) throws IOException{
		Integer page = req.getParameter("page") == null?1:Integer.valueOf(req.getParameter("page"));
		Integer limit = req.getParameter("limit") == null?10:Integer.valueOf(req.getParameter("limit"));
		String keyword = req.getParameter("keyword") == null?"":req.getParameter("keyword").toString();
		PageInfo<Cinema> info = cinemaService.findAllCinemaBySplitPage(page, limit, keyword);
		
		resp.setContentType("text/json; charset=utf-8");    // 设置response的编码及格式
        PrintWriter out = resp.getWriter();
        Map<String,Object> map = new HashMap<>();  
        map.put("msg", "");
        map.put("code", 0);
        map.put("count", info.getTotal());
        map.put("data", info.getList());
        String resJSON = JSON.toJSONString(map);
        out.print(resJSON); // 输出
		
	}
	
	public void add(HttpServletRequest req, HttpServletResponse resp) throws IOException {
		
        String result ="";
		String cinema_name = req.getParameter("cinema_name") == null?"":req.getParameter("cinema_name").toString();
		String cinema_address = req.getParameter("cinema_address") == null?"":req.getParameter("cinema_address").toString();
		Cinema cinema = new Cinema();
		cinema.setCinema_name(cinema_name);
		cinema.setCinema_address(cinema_address);
		List<Cinema> list = cinemaService.findCinemaByName(cinema.getCinema_name());
		if(list.size() > 0) {
			result = "fail";
		}else {
			Integer rs = cinemaService.addCinema(cinema);
			if(rs > 0) {
				result =  "success";
			}else {
				result = "fail";
			}
		}
		
		resp.setContentType("text/json; charset=utf-8");    // 设置response的编码及格式
        PrintWriter out = resp.getWriter();
        Map<String,Object> map = new HashMap<>();  
		map.put("state", result);
		String resJSON = JSON.toJSONString(map);
        out.print(resJSON); // 输出
	}
	
	public void updateCinema(HttpServletRequest req, HttpServletResponse resp) throws IOException {
		String result = "";
		Long cinema_id = req.getParameter("cinema_id") == null?1:Long.valueOf(req.getParameter("cinema_id"));
		String cinema_name = req.getParameter("cinema_name") == null?"":req.getParameter("cinema_name").toString();
		String cinema_address = req.getParameter("cinema_address") == null?"":req.getParameter("cinema_address").toString();
		Cinema cinema = new Cinema();
		cinema.setCinema_id(cinema_id);
		cinema.setCinema_name(cinema_name);
		cinema.setCinema_address(cinema_address);
		Integer rs = cinemaService.updateCinema(cinema);
		if(rs > 0) {
			result =  "success";
		}else {
			result =  "fail";
		}
		
		resp.setContentType("text/json; charset=utf-8");    // 设置response的编码及格式
        PrintWriter out = resp.getWriter();
        Map<String,Object> map = new HashMap<>();  
		map.put("state", result);
		String resJSON = JSON.toJSONString(map);
        out.print(resJSON); // 输出
	}
}

CommentServlet

package com.movie.servlet;

import java.io.IOException;
import java.io.PrintWriter;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;


import com.alibaba.fastjson.JSON;
import com.github.pagehelper.PageInfo;
import com.movie.bean.Comment;
import com.movie.bean.User;
import com.movie.service.CommentService;
import com.movie.service.MovieService;
import com.movie.service.UserService;

@WebServlet("/comment")
public class CommentServlet extends HttpServlet{
	
	private CommentService commentService;
	
	private UserService userService;
	private MovieService movieService;

	private static final long serialVersionUID = 1L;

	@Override
	public void init() throws ServletException {
		commentService = new CommentService();
		userService = new UserService();
		movieService = new MovieService();
	}
	
	@Override
	protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
		String method = req.getParameter("method");
		if("findAllComments".equals(method)){
			findAllComments(req,resp);
		}else if("findAllCommentsPage".equals(method)){
			findAllCommentsPage(req,resp);
		}else if("findAllCommentsPageByMovieId".equals(method)){
			findAllCommentsPageByMovieId(req,resp);
		}else if("addCommentByUser".equals(method)){
			addCommentByUser(req,resp);
		}else if("updateComment".equals(method)){
			updateComment(req,resp);
		}else if("deleteComemnt".equals(method)){
			deleteComment(req,resp);
		}else if("findCommentsByUserName".equals(method)){
			findCommentsByUserName(req,resp);
		}
		
		
		// 重定向
		//resp.sendRedirect("product_list");
	}
	@Override
	protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
		doPost(req, resp);
	}
	
	public void findAllComments(HttpServletRequest req, HttpServletResponse resp) throws IOException {
		List<Comment> list = commentService.findAllComments();
		for(Comment comment: list) {
			comment.setComment_user(userService.findUserById(comment.getUser_id()));
		}
		
		resp.setContentType("text/json; charset=utf-8");    // 设置response的编码及格式
        PrintWriter out = resp.getWriter();
        Map<String,Object> map = new HashMap<>();  
        map.put("code", 0);
        map.put("msg","");
        map.put("count", list.size());
        map.put("data", list);
        String resJSON = JSON.toJSONString(map);
        out.print(resJSON); // 输出
	}
	
	public void findAllCommentsPage(HttpServletRequest req, HttpServletResponse resp) throws IOException {
		Integer page = req.getParameter("page") == null?1:Integer.valueOf(req.getParameter("page"));
		Integer limit = req.getParameter("limit") == null?1:Integer.valueOf(req.getParameter("limit"));
		String user_name = req.getParameter("user_name") == null?"":req.getParameter("user_name").toString();
		
		List<Comment> info = commentService.findAllCommentsBySplitPage(page, limit, user_name);
		for(Comment comment : info) {
			comment.setComment_user(userService.findUserById(comment.getUser_id()));
		}
		resp.setContentType("text/json; charset=utf-8");    // 设置response的编码及格式
        PrintWriter out = resp.getWriter();
        Map<String,Object> map = new HashMap<>();  
        map.put("code", 0);
        map.put("msg", "");
        map.put("count", commentService.findAllCommentsBySplitPageCount(user_name));
        map.put("data", info);
        String resJSON = JSON.toJSONString(map);
        out.print(resJSON); // 输出
	}
	
	public void findAllCommentsPageByMovieId(HttpServletRequest req, HttpServletResponse resp) throws IOException {
		Integer page = req.getParameter("page") == null?1:Integer.valueOf(req.getParameter("page"));
		Integer limit = req.getParameter("limit") == null?10:Integer.valueOf(req.getParameter("limit"));
		long movie_id = req.getParameter("movie_id") == null?0:Long.valueOf(req.getParameter("movie_id").toString());
		
		List<Comment> info = commentService.findAllCommentsPageByMovieIdPage(page, limit, movie_id);
		for(Comment comment : info) {
			comment.setComment_user(userService.findUserById(comment.getUser_id()));
		}
		resp.setContentType("text/json; charset=utf-8");    // 设置response的编码及格式
        PrintWriter out = resp.getWriter();
        Map<String,Object> map = new HashMap<>();  
        map.put("code", 0);
        map.put("msg", "");
        map.put("count", commentService.findAllCommentsPageByMovieIdCount(movie_id));
        map.put("data", info);
        String resJSON = JSON.toJSONString(map);
        out.print(resJSON); // 输出
	}
	
	public void addCommentByUser(HttpServletRequest req, HttpServletResponse resp) throws IOException {
		Long movie_id = req.getParameter("movie_id") == null?1:Long.valueOf(req.getParameter("movie_id"));
		String comment_content = req.getParameter("comment_content") == null?"":req.getParameter("comment_content").toString();
		String comment_score = req.getParameter("comment_score") == null?"":req.getParameter("comment_score").toString();
		
		
		User user = (User)req.getSession().getAttribute("user");
		resp.setContentType("text/json; charset=utf-8");    // 设置response的编码及格式
        PrintWriter out = resp.getWriter();
        Map<String,Object> map = new HashMap<>(); 
		if(user == null) {
			map.put("code",200);
			map.put("msg", "您未登录,登录之后才可评论~");
		}else {
			Comment comment = new Comment();
			comment.setComment_content(comment_content);
			comment.setMovie_id(movie_id);
			comment.setUser_id(user.getUser_id());
			comment.setComment_time(new Date());
			comment.setComment_score(Integer.valueOf(comment_score));
			Integer rs = commentService.addComemnt(comment);
			if(rs > 0) {
				Integer rs2 = movieService.updateMovieCommentCountAndScore(comment.getMovie_id());
				if(rs2 > 0) {
					map.put("code", 0);
					map.put("msg", "评论成功~");
				}else {
					map.put("code",200);
					map.put("msg", "评论失败~");
				}
			}else {
				map.put("code",200);
				map.put("msg", "评论失败~");
			}
		}
		 String resJSON = JSON.toJSONString(map);
	     out.print(resJSON); // 输出
	}
	
	public void updateComment(HttpServletRequest req, HttpServletResponse resp) throws IOException {
		Long comment_id = req.getParameter("comment_id") == null?1:Long.valueOf(req.getParameter("comment_id"));
		String comment_content = req.getParameter("comment_content") == null?"":req.getParameter("comment_content").toString();
		
		Comment comment = this.commentService.findCommentById(comment_id);
		comment.setComment_content(comment_content);
		Integer rs = commentService.updateComment(comment);
		resp.setContentType("text/json; charset=utf-8");    // 设置response的编码及格式
        PrintWriter out = resp.getWriter();
        Map<String,Object> map = new HashMap<>(); 
		if(rs > 0) {
			map.put("code", 0);
			map.put("msg", "修改成功~");
		}else {
			map.put("code",200);
			map.put("msg", "修改失败~");
		}
		String resJSON = JSON.toJSONString(map);
	     out.print(resJSON); // 输出
	}
	
	public void deleteComment(HttpServletRequest req, HttpServletResponse resp) throws IOException {
		Long comment_id = req.getParameter("comment_id") == null?1:Long.valueOf(req.getParameter("comment_id"));
		Integer rs2 = movieService.delCommentCount(commentService.findCommentById(comment_id).getMovie_id());
		Integer rs = commentService.deleteComment(comment_id);
		System.out.println(rs2);
		resp.setContentType("text/json; charset=utf-8");    // 设置response的编码及格式
        PrintWriter out = resp.getWriter();
        Map<String,Object> map = new HashMap<>(); 
		if(rs > 0) {
			map.put("code", 0);
			map.put("msg", "删除成功~");
		}else {
			map.put("code", 200);
			map.put("msg", "删除失败~");
		}
		String resJSON = JSON.toJSONString(map);
	    out.print(resJSON); // 输出
	}
	
	public void findCommentsByUserName(HttpServletRequest req, HttpServletResponse resp) throws IOException {
		
		Integer page = req.getParameter("page") == null?1:Integer.valueOf(req.getParameter("page"));
		Integer limit = req.getParameter("limit") == null?1:Integer.valueOf(req.getParameter("limit"));
		String user_name = req.getParameter("user_name") == null?"":req.getParameter("user_name").toString();
		
		PageInfo<Comment> info = commentService.findCommentsByUserName(page, limit, user_name);
		//System.out.println(info);
		for(Comment comment : info.getList()) {
			comment.setComment_user(userService.findUserById(comment.getUser_id()));
		}
		
		resp.setContentType("text/json; charset=utf-8");    // 设置response的编码及格式
        PrintWriter out = resp.getWriter();
        Map<String,Object> map = new HashMap<>();  
        map.put("code", 0);
		map.put("msg", "");
		map.put("count", info.getTotal());
		map.put("data", info.getList());
        String resJSON = JSON.toJSONString(map);
        out.print(resJSON); // 输出
	}
	
	
}

如果也想学习本系统,下面领取。关注并回复:143jsp

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

夜未央5788

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值