【毕业设计】基于ssm的演唱会订票管理系统,订票管理系统,网上演唱会票务系统,票务管理系统,附源码+文档+PPT

1、项目介绍

基于ssm的演唱会订票管理系统,订票管理系统,网上演唱会票务系统,票务管理系统。

系统中的核心用户是系统管理员,管理员登录后,主要功能有管理员信息管理、网站用户管理、新闻公告信息管理、演唱会类型信息管理、演唱会信息管理、票务信息管理、订单信息管理。管理员用户用例图如图所示。

用户登录后,主要功能模块有首页、网站公告、推荐演唱会、全部演唱会。用户用例图如图所示。

2、技术架构

架构:B/S

后端框架:SSM(Spring+SpringMvc+Mybatis)

前端框框:Jsp

编程语言:Java

数据库:MySQL

运行环境:JDK8+MySQL5.x或者8.X+Tomcat8.5+Idea

3、演示视频

B站地址:

【毕业设计】基于ssm的演唱会订票管理系统,订票管理系统,网上演唱会票务系统,票务管理系统,附源码+文档+PPT,适合大实验,大作业,实训,课程设计,毕业设计

【毕业设计】基于ssm的演唱会订票管理系统,订票管理系统,网上演唱会票务系统,票务管理系统,附源码+文档+PPT,适合大实验,大作业,实训,课程设计,毕业设计_哔哩哔哩_bilibili

4、功能截图

4.1、首页

4.2、详情页

4.3、网站公告

4.4、公告内容

4.5、推荐演唱会

4.7、全部演唱会

4.8、演唱会搜索

4.9、购物车

4.10、付款

4.11、用户信息

4.12、管理员-登录

4.13、管理员-管理员信息管理

4.14、管理员-用户信息管理

4.15、管理员-公告信息管理

4.16、管理员-演唱会类型信息管理

4.17、管理员-演唱会信息管理

4.18、管理员-票务信息管理

4.19、管理员-订单信息管理

5、文档截图

6、代码示例

package com.action;

import java.io.File;

import javax.servlet.http.HttpServletRequest;

import org.springframework.stereotype.Controller;
import org.springframework.ui.ModelMap;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.multipart.MultipartFile;

import com.util.VeDate;

@Controller
@RequestMapping("/upload")
public class UploadAction {

	@RequestMapping(value = "/image.action")
	public String upload(@RequestParam(value = "image", required = false) MultipartFile file,
			HttpServletRequest request, ModelMap model) {
		String path = request.getSession().getServletContext().getRealPath("/") + "upfiles/";
		String fileName = file.getOriginalFilename();
		int i = fileName.lastIndexOf(".");
		String name = String.valueOf(VeDate.getStringDatex());
		String type = fileName.substring(i + 1);
		fileName = name + "." + type;
		File targetFile = new File(path, fileName);
		if (!targetFile.exists()) {
			targetFile.mkdirs();
		}

		// 保存
		try {
			file.transferTo(targetFile);
		} catch (Exception e) {
			e.printStackTrace();
		}
		model.addAttribute("imageFileName", fileName);
		return "saveimage";
	}

	@RequestMapping(value = "/files.action")
	public String files(@RequestParam(value = "image", required = false) MultipartFile file, HttpServletRequest request,
			ModelMap model) {
		String path = request.getSession().getServletContext().getRealPath("/") + "upfiles/";
		String fileName = file.getOriginalFilename();
		int i = fileName.lastIndexOf(".");
		String name = String.valueOf(VeDate.getStringDatex());
		String type = fileName.substring(i + 1);
		fileName = name + "." + type;
		File targetFile = new File(path, fileName);
		if (!targetFile.exists()) {
			targetFile.mkdirs();
		}

		// 保存
		try {
			file.transferTo(targetFile);
		} catch (Exception e) {
			e.printStackTrace();
		}
		model.addAttribute("imageFileName", fileName);
		return "savefile";
	}
}
package com.action;

import java.util.ArrayList;
import java.util.List;
import javax.annotation.Resource;
import org.springframework.beans.factory.annotation.Autowired;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import com.entity.Orders;
import com.service.OrdersService;
import com.entity.Users;
import com.entity.Concert;
import com.entity.Ticket;
import com.service.UsersService;
import com.service.ConcertService;
import com.service.TicketService;
import com.util.PageHelper;

//定义为控制器
@Controller
// 设置路径
@RequestMapping(value = "/orders", produces = "text/plain;charset=utf-8")
public class OrdersAction extends BaseAction {
	// 注入Service 由于标签的存在 所以不需要getter setter
	@Autowired
	@Resource
	private OrdersService ordersService;
	@Autowired
	@Resource
	private UsersService usersService;
	@Autowired
	@Resource
	private ConcertService concertService;
	@Autowired
	@Resource
	private TicketService ticketService;

	// 准备添加数据
	@RequestMapping("createOrders.action")
	public String createOrders() {
		List<Users> usersList = this.usersService.getAllUsers();
		this.getRequest().setAttribute("usersList", usersList);
		List<Concert> concertList = this.concertService.getAllConcert();
		this.getRequest().setAttribute("concertList", concertList);
		List<Ticket> ticketList = this.ticketService.getAllTicket();
		this.getRequest().setAttribute("ticketList", ticketList);
		return "admin/addorders";
	}

	// 添加数据
	@RequestMapping("addOrders.action")
	public String addOrders(Orders orders) {
		this.ordersService.insertOrders(orders);
		return "redirect:/orders/createOrders.action";
	}

	// 通过主键删除数据
	@RequestMapping("deleteOrders.action")
	public String deleteOrders(String id) {
		this.ordersService.deleteOrders(id);
		return "redirect:/orders/getAllOrders.action";
	}

	// 批量删除数据
	@RequestMapping("deleteOrdersByIds.action")
	public String deleteOrdersByIds() {
		String[] ids = this.getRequest().getParameterValues("ordersid");
		for (String ordersid : ids) {
			this.ordersService.deleteOrders(ordersid);
		}
		return "redirect:/orders/getAllOrders.action";
	}

	// 更新数据
	@RequestMapping("updateOrders.action")
	public String updateOrders(Orders orders) {
		this.ordersService.updateOrders(orders);
		return "redirect:/orders/getAllOrders.action";
	}

	@RequestMapping("send.action")
	public String send(String id) {
		Orders orders = this.ordersService.getOrdersById(id);
		orders.setStatus("已出票");
		this.ordersService.updateOrders(orders);
		return "redirect:/orders/getAllOrders.action";
	}

	// 显示全部数据
	@RequestMapping("getAllOrders.action")
	public String getAllOrders(String number) {
		List<Orders> ordersList = this.ordersService.getAllOrders();
		PageHelper.getPage(ordersList, "orders", null, null, 10, number, this.getRequest(), null);
		return "admin/listorders";
	}

	// 按条件查询数据 (模糊查询)
	@RequestMapping("queryOrdersByCond.action")
	public String queryOrdersByCond(String cond, String name, String number) {
		Orders orders = new Orders();
		if (cond != null) {
			if ("ordercode".equals(cond)) {
				orders.setOrdercode(name);
			}
			if ("usersid".equals(cond)) {
				orders.setUsersid(name);
			}
			if ("concertid".equals(cond)) {
				orders.setConcertid(name);
			}
			if ("ticketid".equals(cond)) {
				orders.setTicketid(name);
			}
			if ("price".equals(cond)) {
				orders.setPrice(name);
			}
			if ("num".equals(cond)) {
				orders.setNum(name);
			}
			if ("total".equals(cond)) {
				orders.setTotal(name);
			}
			if ("status".equals(cond)) {
				orders.setStatus(name);
			}
		}

		List<String> nameList = new ArrayList<String>();
		List<String> valueList = new ArrayList<String>();
		nameList.add(cond);
		valueList.add(name);
		PageHelper.getPage(this.ordersService.getOrdersByLike(orders), "orders", nameList, valueList, 10, number, this.getRequest(), "query");
		name = null;
		cond = null;
		return "admin/queryorders";
	}

	// 按主键查询数据
	@RequestMapping("getOrdersById.action")
	public String getOrdersById(String id) {
		Orders orders = this.ordersService.getOrdersById(id);
		this.getRequest().setAttribute("orders", orders);
		List<Users> usersList = this.usersService.getAllUsers();
		this.getRequest().setAttribute("usersList", usersList);
		List<Concert> concertList = this.concertService.getAllConcert();
		this.getRequest().setAttribute("concertList", concertList);
		List<Ticket> ticketList = this.ticketService.getAllTicket();
		this.getRequest().setAttribute("ticketList", ticketList);
		return "admin/editorders";
	}

	public OrdersService getOrdersService() {
		return ordersService;
	}

	public void setOrdersService(OrdersService ordersService) {
		this.ordersService = ordersService;
	}

}
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<%
	String path = request.getContextPath();
	String basePath = request.getScheme() + "://" + request.getServerName() + ":" + request.getServerPort() + path + "/";
%>

<!DOCTYPE html>
<html lang="zh-CN">
<head>

<base href="<%=basePath%>" />
<title>${title }</title>
</head>

<body>
	<jsp:include page="header.jsp"></jsp:include>
	<div class="block box">
		<div class="blank"></div>
		<div id="ur_here">
			当前位置: <a href=".">首页</a>
			<code> &gt; </code>
			购物车
		</div>
	</div>
	<div class="blank"></div>
	<div class="block table">
		<div class="flowBox">
			<h6>
				<span>购物车</span>
			</h6>
			<form action="index/deletecart.action" method="post">
				<table width="99%" align="center" border="0" cellpadding="5" cellspacing="1" bgcolor="#dddddd">
					<tr>
						<th bgcolor="#ffffff">演唱会</th>
						<th bgcolor="#ffffff">区域</th>
						<th bgcolor="#ffffff">数量</th>
						<th bgcolor="#ffffff">票价</th>
						<th bgcolor="#ffffff">日期</th>
						<th bgcolor="#ffffff">操作</th>
					</tr>
					<c:forEach items="${cartList}" var="cart">
						<tr>
							<td bgcolor="#ffffff" align="center" style="width: 300px;"><a
								href="index/detail.action?id=${cart.concertid }" target="_blank" class="f6">${cart.title }</a></td>
							<td align="center" bgcolor="#ffffff">${cart.areaname }</td>
							<td align="center" bgcolor="#ffffff">¥${cart.price }元</td>
							<td align="center" bgcolor="#ffffff">${cart.num }</td>
							<td align="center" bgcolor="#ffffff">${cart.addtime }</td>
							<td align="center" bgcolor="#ffffff"><a
								href="javascript:if (confirm('您确实要把该车辆移出购物车吗?')) location.href='<%=basePath%>index/deletecart.action?id=${cart.cartid}'; "
								class="f6">移除</a></td>
						</tr>
					</c:forEach>
				</table>


				<table width="99%" align="center" border="0" cellpadding="5" cellspacing="0" bgcolor="#dddddd">
					<tr>
						<td bgcolor="#ffffff"><a href="index.jsp"><img src="themes/xecmoban_haier2015/images/continue.gif"
								alt="continue" /> </a></td>
						<td bgcolor="#ffffff" align="right"><a href="index/checkout.action"><img
								src="themes/xecmoban_haier2015/images/checkout.gif" alt="checkout" /> </a></td>
					</tr>
				</table>
			</form>
		</div>
		<div class="blank"></div>

		<div class="blank5"></div>
	</div>



	<jsp:include page="footer.jsp"></jsp:include>
</body>
</html>

  • 2
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
资源名字:基于SSM+mysql的影院管理系统设计与实现(源码+设计文档+部署说明+视频演示).zip 资源内容:项目全套源码+完整文档 源码说明: 全部项目源码都是经过测试校正后百分百成功运行。 基于SSM+MySQL的影院管理系统是一个用于管理和运营影院的系统系统的主要功能包括:个人中心,电影信息管理,电影类型管理,系统管理,订单管理。具有以下主要特点: 技术栈:该系统采用了Java技术栈中的SSM框架,即Spring+SpringMVC+MyBatis,并使用MySQL数据库,具备较高的技术稳定性和可靠性。 电影管理:系统支持电影信息的管理,包括电影的添加、删除、修改和查询,可以录入电影的基本信息、上映时间、导演、演员等,方便影院管理电影库存和放映计划。 数据统计与报表:系统提供数据统计和生成报表的功能,包括票房统计、观影人数统计、放映计划统计等,帮助影院进行业务分析和决策。 界面友好:系统具备直观清晰的用户界面和良好的操作体验,方便观众进行电影选择、座位选取和购票,提供良好的用户体验。 安全性和隐私保护:系统采取安全措施,保护用户个人信息和交易数据的安全和隐私,确保数据的保密性和完整性。 扩展性强:系统采用模块化设计,方便进行功能扩展和系统升级,满足不同影院的需求,如与其他票务系统的集成等。 综上所述,基于SSM+MySQL的影院管理系统具有技术稳定性高、电影管理、放映管理、座位管理、会员管理、票务管理、数据统计与报表、界面友好、安全性保护和扩展性强等特点,为影院提供了一个便捷、安全和高效的影院管理平台
# 项目名称 [含论文+答辩PPT+任务书+源码等]基于SSM框架演唱会网上订票系统 # 系统介绍 后台框架:SpringSpringMVC、MyBatis 数据库:MySQL 系统中的核心用户是系统管理员,管理员登录后,主要功能有管理员信息管理、网站用户管理、新闻公告信息管理、演唱会类型信息管理、演唱会信息管理、票务信息管理、订单信息管理。 用户功能模块的实现 用户注册 用户通过账号、密码、真实姓名、联系电话等信息可以进行登注册 用户登录 用户通过账号和密码可以进行登录 用户登录后可进行首页、网站公告、推荐演唱会、全部演唱会等,用户主界面展示如图5-11所示。 用户可以进行演唱会信息浏览等操作 购物车界面 用户可将演唱会门票加入购物车,移除、下订单等操作,购物车界面。 我的订单界面 用户可进行付款等操作,订单管理界面 # 环境需要 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版本;\ 6.是否Maven项目:否; # 技术栈 1. 后端Spring+SpringMVC+Mybatis\ 2. 前端:JSP+CSS+JavaScript+jQuery # 使用说明 1. 使用Navicat或者其它工具,在mysql中创建对应名称的数据库,并导入项目的sql文件;\ 2. 使用IDEA/Eclipse/MyEclipse导入项目,Eclipse/MyEclipse导入时,若为maven项目请选择maven;\ 若为maven项目,导入成功后请执行maven clean;maven install命令,然后运行;\ 3. 将项目中springmvc-servlet.xml配置文件中的数据库配置改为自己的配置;\ 4. 运行项目,在浏览器中输入http://localhost:8080/ 登录 # 高清视频演示 -------- 该资源内项目源码是个人的毕设,代码都测试ok,都是运行成功后才上传资源,答辩评审平均分达到96分,放心下载使用! <项目介绍> 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 2、本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载学习,也适合小白学习进阶,当然也可作为毕设项目、课程设计、作业、项目初期立项演示等。 3、如果基础还行,也可在此代码基础上进行修改,以实现其他功能,也可用于毕设、课设、作业等。 下载后请首先打开README.md文件(如有),仅供学习参考, 切勿用于商业用途。 --------

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

java源码集合

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

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

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

打赏作者

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

抵扣说明:

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

余额充值