基于javaweb+mysql的汽车租赁系统(java+SSM+JSP+LayUI+echarts+mysql)

ssm汽车租赁系统 carRental
系统概要
汽车租赁系统总共分为两个大的模块,分别是系统模块和业务模块。其中系统模块和业务模块底下又有其子模块。

功能模块

一、业务模块
1、客户管理
客户列表
客户分页和模糊查询
客户添加、修改、删除
导出客户数据
2、车辆管理
车辆列表
车辆车辆分页和模糊查询
车辆添加、修改、删除
3、业务管理
汽车出租
1、根据客户身份证查询所有未出租的车辆信息
2、进行出租

出租单管理
1、多条件的模糊查询和分页
2、出租单的修改、删除、导出

汽车入库
检查单管理
1、多条件模糊查询和分页
2、检查单修改
3、导出检查单
4、统计分析
客户男女比例图
月出租量统计
销售员业绩统计
出租车辆类型统计

二、系统模块
1、用户登陆
校验用户名和密码
登陆成功将登陆信息写入登陆日志
未登录进行拦截
2、菜单管理
全查询菜单和根据左边的树查询不同菜单
菜单的添加、修改、删除
3、角色管理
全查询角色和模糊查询
角色的添加、修改、删除
4、用户管理
全查询用户和模糊查询
用户的添加、修改、删除以及重置密码

5、数据源的监控(druid monitor)

技术选型
1.后台技术选型:SSM(Spring SpringMVC Mybatis)
2.前端技术选型:LayUI、dtree、echarts

开发环境
操作系统:Windows/Mac OS
编程语言:Java
开发工具:IDEA、Navicat
项目构建:Maven 3.5.2
服务器:Tomcat 8.5

数据库:MySQL 8.0请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述

适用

课程设计,大作业,毕业设计,项目练习,学习演示等

			return "system/main/login";
		}
	};
	/**
	 * 得到登录验证码
	 * @throws IOException 
	 */
	@RequestMapping("getCode")
	public void getCode(HttpServletResponse response, HttpSession session) throws IOException {
		// 定义图形验证码的长和宽
		LineCaptcha lineCaptcha = CaptchaUtil.createLineCaptcha(116, 36, 4, 50);
		Console.log(lineCaptcha.getCode());
		session.setAttribute("code", lineCaptcha.getCode());
		ServletOutputStream outputStream = response.getOutputStream();
		ImageIO.write(lineCaptcha.getImage(), "JPEG", outputStream);
	}
}
		// 生成密文
		String pwd = DigestUtils.md5DigestAsHex(userVo.getPwd().getBytes());
		userVo.setPwd(pwd);
		if (userVo.getPwd().equals(user.getPwd())) {
			return ResultObj.PWD_SUCCESS;
		} else {
			return ResultObj.PWD_ERROR;
		}
	}
	/*
	 * 更改密码之查询密码
	 */
	@RequestMapping("updatePwd")
	public ResultObj updatePwd(UserVo userVo) {
		try {
			User user = (User) WebUtils.getHttpSession().getAttribute("user");
			// 生成密文
			String pwd = DigestUtils.md5DigestAsHex(userVo.getPwd().getBytes());
			userVo.setUserid(user.getUserid());
			userVo.setPwd(pwd);
			// 修改密码
			this.userService.updateUser(userVo);
			return ResultObj.UPDATE_SUCCESS;
		} catch (Exception e) {
	/*
	 * 删除用户
	 */
	@RequestMapping("deleteUser")
	public ResultObj deleteUser(UserVo userVo) {
		System.out.println(userVo);
		System.out.println(userVo.getUserid());
		try {
			this.userService.deleteUser(userVo.getUserid());
			return ResultObj.DELETE_SUCCESS;
		} catch (Exception e) {
			e.printStackTrace();
			return ResultObj.DELETE_ERROR;
		}
	}
			return ResultObj.PWD_SUCCESS;
		} else {
			return ResultObj.PWD_ERROR;
		}
	}
	/*
	 * 更改密码之查询密码
	 */
	@RequestMapping("updatePwd")
	public ResultObj updatePwd(UserVo userVo) {
		try {
			User user = (User) WebUtils.getHttpSession().getAttribute("user");
			// 生成密文
			String pwd = DigestUtils.md5DigestAsHex(userVo.getPwd().getBytes());
			userVo.setUserid(user.getUserid());
			userVo.setPwd(pwd);
			// 修改密码
			this.userService.updateUser(userVo);
			return ResultObj.UPDATE_SUCCESS;
		} catch (Exception e) {
			return ResultObj.UPDATE_ERROR;
//			String code = WebUtils.getHttpSession().getAttribute("code").toString();
//			if (userVo.getCode().toLowerCase().equals(code)) {
			User user = this.userService.login(userVo);
			if (null != user) {
				// 放入session
				WebUtils.getHttpSession().setAttribute("user", user);
				WebUtils.getHttpSession().setMaxInactiveInterval(240 * 60);
				// 记录登录日志 向sys_login_log插入数据
				LogInfoVo logInfoVo = new LogInfoVo();
				logInfoVo.setLoginname(user.getRealname() + "-" + user.getLoginname());
				logInfoVo.setLogintime(new Date());
				// 外网Ip:WebUtils.getHttpServletRequest().getRemoteAddr()
				// 内网ip:
				InetAddress addr;
				try {
					addr = (InetAddress) InetAddress.getLocalHost();
					logInfoVo.setLoginip(addr.getHostAddress().toString());// 获取Id地址
				} catch (UnknownHostException e) {
					e.printStackTrace();
				}
				// 添加
				logInfoService.addLogInfo(logInfoVo);
				return "system/main/index";
			} else {
			if (null != user) {
				// 放入session
				WebUtils.getHttpSession().setAttribute("user", user);
				WebUtils.getHttpSession().setMaxInactiveInterval(240 * 60);
				// 记录登录日志 向sys_login_log插入数据
				LogInfoVo logInfoVo = new LogInfoVo();
				logInfoVo.setLoginname(user.getRealname() + "-" + user.getLoginname());
				logInfoVo.setLogintime(new Date());
				// 外网Ip:WebUtils.getHttpServletRequest().getRemoteAddr()
				// 内网ip:
				InetAddress addr;
				try {
					addr = (InetAddress) InetAddress.getLocalHost();
					logInfoVo.setLoginip(addr.getHostAddress().toString());// 获取Id地址
				} catch (UnknownHostException e) {
					e.printStackTrace();
				}
				// 添加
				logInfoService.addLogInfo(logInfoVo);
				WebUtils.getHttpSession().setAttribute("user", user);
				WebUtils.getHttpSession().setMaxInactiveInterval(240 * 60);
				// 记录登录日志 向sys_login_log插入数据
				LogInfoVo logInfoVo = new LogInfoVo();
				logInfoVo.setLoginname(user.getRealname() + "-" + user.getLoginname());
				logInfoVo.setLogintime(new Date());
				// 外网Ip:WebUtils.getHttpServletRequest().getRemoteAddr()
				// 内网ip:
				InetAddress addr;
				try {
					addr = (InetAddress) InetAddress.getLocalHost();
					logInfoVo.setLoginip(addr.getHostAddress().toString());// 获取Id地址
				} catch (UnknownHostException e) {
					e.printStackTrace();
				}
				// 添加
				logInfoService.addLogInfo(logInfoVo);
				return "system/main/index";
			} else {
				try {
					addr = (InetAddress) InetAddress.getLocalHost();
					logInfoVo.setLoginip(addr.getHostAddress().toString());// 获取Id地址
				} catch (UnknownHostException e) {
					e.printStackTrace();
				}
				// 添加
				logInfoService.addLogInfo(logInfoVo);
				return "system/main/index";
			} else {
				model.addAttribute("error", SysConstast.USER_LOGIN_ERROR_MSG);
				return "system/main/login";
			}
//			} else {
//				model.addAttribute("error", SysConstast.USER_LOGIN_CODE_ERROR_MSG);
//				return "system/main/login";
//			}
		} else {
			return "system/main/login";
		}
	};
	/**
	 * 得到登录验证码
	 * @throws IOException 
	 */
	 * 重置用户密码
	 */
	@RequestMapping("resetUserPwd")
	public ResultObj resetUserPwd(UserVo userVo) {
		try {
			this.userService.resetUserPwd(userVo.getUserid());
			return ResultObj.RESET_SUCCESS;
		} catch (Exception e) {
			e.printStackTrace();
			return ResultObj.RESET_ERROR;
		}
	}
	/*
	/*
	 * 修改用户
	 */
	@RequestMapping("updateUser")
	public ResultObj updateUser(UserVo userVo) {
		try {
			this.userService.updateUser(userVo);
			return ResultObj.UPDATE_SUCCESS;
		} catch (Exception e) {
			e.printStackTrace();
			return ResultObj.UPDATE_ERROR;
		}
	}
	/*
	 * 删除用户
	 */
	@RequestMapping("deleteUser")
	public ResultObj deleteUser(UserVo userVo) {
	@RequestMapping("addNews")
	public ResultObj addNews(NewsVo newsVo) {
		try {
			newsVo.setCreatetime(new Date());
			User user = (User) WebUtils.getHttpSession().getAttribute("user");
			newsVo.setOpername(user.getRealname());
			this.newsService.addNews(newsVo);
			return ResultObj.ADD_SUCCESS;
		} catch (Exception e) {
			e.printStackTrace();
			return ResultObj.ADD_ERROR;
		}
	}
	/*
	 * 删除公告
	 */
	@RequestMapping("deleteNews")
	public ResultObj deleteNews(NewsVo newsVo) {
		try {
			this.newsService.deleteNews(newsVo.getId());
			return ResultObj.DELETE_SUCCESS;
		} catch (Exception e) {
			e.printStackTrace();
			return ResultObj.DELETE_ERROR;

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
一、项目简介本课程演示的是一套基于SSM实现的汽车租赁系统,主要针对计算机相关专业的正在做毕设的学生与需要项目实战练习的Java学习者。课程包含: 1. 项目源码、项目文档、数据库脚本、软件工具等所有资料2. 带你从零开始部署运行本套系统3. 该项目附带的源码资料可作为毕设使用4. 提供技术答疑和远程协助指导二、技术实现 后台框架:Spring、SpringMVC、MyBatisUI界面:jQuery 、JSP数据库:MySQL 三、系统功能系统分为前台用户租车和后台系统管理:    1.前台用户租车        用户注册、用户登录、用户中心、浏览车辆、车辆搜索        查看车辆明细、租赁车辆、我的订单    2.后台系统管理        用户管理:用户列表、添加用户、修改用户、删除用户、查询用户        新闻管理:新闻列表、添加新闻、修改新闻、删除新闻、查询新闻        车辆品牌管理:车辆品牌列表、添加车辆品牌、修改车辆品牌、删除车辆品牌        车辆管理:车辆列表、添加车辆、修改车辆、删除车辆、查询车辆        订单管理:订单列表、确认订单、删除订单        报表管理:统计信息查询和展示 四、项目截图1)前台用户界面 2)后台系统管理    更多Java毕设项目请关注【毕设系列课程】https://edu.csdn.net/lecturer/2104   点击 我的百科 ,通过百度百科更多了解我 ^_^ 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值