Java基于springboot+vue的汽车租赁系统

188 篇文章 5 订阅

文末获取资源,收藏关注不迷路

前言

首先,论文一开始便是清楚的论述了系统的研究内容。其次,剖析系统需求分析,弄明白“做什么”,分析包括业务分析和业务流程的分析以及用例分析,更进一步明确系统的需求。然后在明白了系统的需求基础上需要进一步地设计系统,主要包括软件架构模式、整体功能模块、数据库设计。本项目软件架构选择B/S模式和java技术,总体功能模块运用自顶向下的分层思想。再然后就是实现系统并进行代码编写实现功能。论文的最后章节总结一下自己完成本论文和开发本项目的心得和总结。通过致远汽车租赁系统将会使致远汽车租赁各个方面的工作效率带来实质性的提升。

一、研究背景

困扰公司的许多问题当中,致远汽车租赁管理一定是公司不敢忽视的一块。但是管理好致远汽车租赁又面临很多麻烦需要解决,例如有几个方面:第一,公司往往汽车数量都比较多,如何保证能够管理到每一汽车;第二,如何在工作琐碎,记录繁多的情况下将致远汽车租赁的当前情况反应给公司领导相关部门决策,等等。在此情况下开发一款致远汽车租赁系统,于是乎变得非常合乎时宜。
经过网上调查和搜集数据,我们可以发现致远汽车租赁管理方面的系统在公司中并不是相当普及,公司在致远汽车租赁管理方面的可以有许多改进。实际上如今信息化成为一个未来的趋势或者可以说在当前现代化的城市典范中,信息化已经成为主流,开发一个致远汽车租赁系统一方面的可能会更合乎时宜,另一方面来说也可以提高公司在致远汽车租赁管理方面的效率给相关部门人的工作带来一定的便利。

二、研究意义

人类的进步带动信息化的发展,使人们生活节奏越来越快,所以人们越来越重视信息的时效性。以往的管理方式已经满足不了人们对获得信息的方式、方便快捷的需求。即致远汽车租赁系统慢慢的被人们关注。首先,网上获取信息十分的实时、便捷,只要系统在线状态,无论在哪里都能第一时间查找到理想的信息。
计算机技术在管理中成为人们的重要工具。可以有效快捷的解决想要获取的信息,提高工作效率。
致远汽车租赁管理方面的任务繁琐,以至于公司每年都在致远汽车租赁管理这方面投入较多的精力却效果甚微,致远汽车租赁系统的目标就是为了能够缓解致远汽车租赁管理工作方面面临的压力,让致远汽车租赁管理方面的工作变得更加高效准确。
本项目在开发和设计过程中涉及到原理和技术有: B/S、java技术和MySQL数据库等等;

三、主要使用技术

环境需要
1.运行环境:最好是java jdk 1.8,这是目前最稳定的JDK也是被使用最多的JDK版本。
2.IDE环境:IDEA,Eclipse都可以。推荐IDEA;
3.tomcat环境:Tomcat7/Tomcat8/Tomcat9版本均可
4.硬件环境:windows 7/8/10 1G内存以上;或者 Mac OS;
5.数据库:MySql 5.7版本;
6.是否Maven项目:是;
技术栈
后端:Spring+SpringMVC+Mybatis+Springboot
前端:vue+CSS+JavaScript+jQuery+elementui

使用说明
使用Navicat或者其它工具,在mysql中创建对应名称的数据库,并导入项目的sql文件;
使用IDEA/Eclipse/MyEclipse导入项目,修改配置,运行项目;
将项目中applicationContext.xml配置文件中的数据库配置改为自己的配置,然后运行;
运行成功后,在浏览器中输入:http://localhost:8080/项目名

四、研究内容

在这里插入图片描述
在这里插入图片描述考虑到实际生活中在致远汽车租赁方面的需要以及对该系统认真的分析,将系统权限按管理员,用户和业务员这三类涉及用户划分。
(a) 管理员;管理员使用本系统涉到的功能主要有:首页,个人中心,用户管理,业务员管理,汽车类型管理,租赁汽车管理,汽车租赁管理,汽车归还管理,租赁订单管理,检查信息管理,系统管理等功能。
(b)用户;用户使用本系统涉到的功能主要有:首页,个人中心,汽车租赁管理,汽车归还管理,租赁订单管理,检查信息管理,我的收藏管理等功能。
©业务员,业务员使用本系统主要包括首页,个人中心,汽车租赁管理,汽车归还管理,租赁订单管理,检查信息管理等功能。
在这里插入图片描述
在这里插入图片描述在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

五、核心代码


package com.controller;


import java.util.Arrays;
import java.util.Calendar;
import java.util.Date;
import java.util.Map;

import javax.servlet.http.HttpServletRequest;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestController;

import com.annotation.IgnoreAuth;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.entity.TokenEntity;
import com.entity.UserEntity;
import com.service.TokenService;
import com.service.UserService;
import com.utils.CommonUtil;
import com.utils.MPUtil;
import com.utils.PageUtils;
import com.utils.R;
import com.utils.ValidatorUtils;

/**
 * 登录相关
 */
@RequestMapping("users")
@RestController
public class UserController{
	
	@Autowired
	private UserService userService;
	
	@Autowired
	private TokenService tokenService;

	/**
	 * 登录
	 */
	@IgnoreAuth
	@PostMapping(value = "/login")
	public R login(String username, String password, String captcha, HttpServletRequest request) {
		UserEntity user = userService.selectOne(new EntityWrapper<UserEntity>().eq("username", username));
		if(user==null || !user.getPassword().equals(password)) {
			return R.error("账号或密码不正确");
		}
		String token = tokenService.generateToken(user.getId(),username, "users", user.getRole());
		return R.ok().put("token", token);
	}
	
	/**
	 * 注册
	 */
	@IgnoreAuth
	@PostMapping(value = "/register")
	public R register(@RequestBody UserEntity user){
//    	ValidatorUtils.validateEntity(user);
    	if(userService.selectOne(new EntityWrapper<UserEntity>().eq("username", user.getUsername())) !=null) {
    		return R.error("用户已存在");
    	}
        userService.insert(user);
        return R.ok();
    }

	/**
	 * 退出
	 */
	@GetMapping(value = "logout")
	public R logout(HttpServletRequest request) {
		request.getSession().invalidate();
		return R.ok("退出成功");
	}
	
	/**
     * 密码重置
     */
    @IgnoreAuth
	@RequestMapping(value = "/resetPass")
    public R resetPass(String username, HttpServletRequest request){
    	UserEntity user = userService.selectOne(new EntityWrapper<UserEntity>().eq("username", username));
    	if(user==null) {
    		return R.error("账号不存在");
    	}
    	user.setPassword("123456");
        userService.update(user,null);
        return R.ok("密码已重置为:123456");
    }
	
	/**
     * 列表
     */
    @RequestMapping("/page")
    public R page(@RequestParam Map<String, Object> params,UserEntity user){
        EntityWrapper<UserEntity> ew = new EntityWrapper<UserEntity>();
    	PageUtils page = userService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.allLike(ew, user), params), params));
        return R.ok().put("data", page);
    }

	/**
     * 列表
     */
    @RequestMapping("/list")
    public R list( UserEntity user){
       	EntityWrapper<UserEntity> ew = new EntityWrapper<UserEntity>();
      	ew.allEq(MPUtil.allEQMapPre( user, "user")); 
        return R.ok().put("data", userService.selectListView(ew));
    }

    /**
     * 信息
     */
    @RequestMapping("/info/{id}")
    public R info(@PathVariable("id") String id){
        UserEntity user = userService.selectById(id);
        return R.ok().put("data", user);
    }
    
    /**
     * 获取用户的session用户信息
     */
    @RequestMapping("/session")
    public R getCurrUser(HttpServletRequest request){
    	Long id = (Long)request.getSession().getAttribute("userId");
        UserEntity user = userService.selectById(id);
        return R.ok().put("data", user);
    }

    /**
     * 保存
     */
    @PostMapping("/save")
    public R save(@RequestBody UserEntity user){
//    	ValidatorUtils.validateEntity(user);
    	if(userService.selectOne(new EntityWrapper<UserEntity>().eq("username", user.getUsername())) !=null) {
    		return R.error("用户已存在");
    	}
        userService.insert(user);
        return R.ok();
    }

    /**
     * 修改
     */
    @RequestMapping("/update")
    public R update(@RequestBody UserEntity user){
//        ValidatorUtils.validateEntity(user);
    	UserEntity u = userService.selectOne(new EntityWrapper<UserEntity>().eq("username", user.getUsername()));
    	if(u!=null && u.getId()!=user.getId() && u.getUsername().equals(user.getUsername())) {
    		return R.error("用户名已存在。");
    	}
        userService.updateById(user);//全部更新
        return R.ok();
    }

    /**
     * 删除
     */
    @RequestMapping("/delete")
    public R delete(@RequestBody Long[] ids){
        userService.deleteBatchIds(Arrays.asList(ids));
        return R.ok();
    }
}

六、文章目录

1绪论 4
1.1项目研究的背景 4
1.2开发意义 4
1.3项目研究内容 4
1.4论文结构 5
2开发技术介绍 6
2.1 B/S架构 6
2.2Java技术 6
2.3MySQL 介绍 6
2.4MySQL环境配置 7
2.5SpringBoot技术 7
3系统分析 9
3.1可行性分析 9
3.1.1技术可行性 9
3.1.2经济可行性 9
3.1.3操作可行性 10
3.2系统性能需求分析 10
3.3系统功能分析 10
3.4系统流程的分析 12
3.4.1 用户管理的流程 12
3.4.2个人中心管理流程 13
3.4.3登录流程 13
4系统设计 14
4.1 软件功能模块设计 14
4.2数据库设计 14
4.2.1概念模型设计 14
4.2.2物理模型设计 15
5系统详细设计 25
5.1系统功能模块 25
5.2管理员功能模块 26
5.3业务员功能模块 30
5.3用户功能模块 31
6系统测试 34
7总结与心得体会 35
7.1 总结 35
7.2 心得体会 35
参考文献 37
致谢 38

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
基于SpringBoot+Vue汽车租赁系统是一个集成了前端和后端技术的汽车租赁平台,主要用于管理汽车租赁的信息,包括汽车信息、租赁订单和客户信息等。该系统的开发基于Java技术栈,涵盖了SpringBootVue、MySQL等开发技术,并使用了JWT进行认证授权。 该系统的前端界面使用了Vue框架进行开发,并采用了Element UI框架进行UI设计,开发了登录、注册、汽车查询、租赁订单等功能,让用户可以方便快捷地进行相关操作。而后端部分则使用了SpringBoot框架进行开发,实现了汽车信息的增删改查、租赁订单的生成与管理等功能,提供了RESTful接口给前端进行调用。 该系统支持用户自主选择汽车类型、价格、耗油量等信息进行租赁,同时也支持管理员对汽车信息、价格和租赁订单进行管理、审批和分析等操作。系统还支持对用户权限的管理,可以对不同权限的用户进行分组和授权,保证了信息安全性。 该系统使用了JWT进行认证授权,支持token的生成、验证和刷新,用户登录后生成token进行接口调用,有效地保证了用户信息的安全性。此外,系统还使用了MySQL数据库存储汽车信息、租赁订单等数据,同时使用MyBatis框架进行数据库操作,提供了更加稳定高效的数据存储和查询。 总之,基于SpringBoot+Vue汽车租赁系统是一个功能齐全、易用、实用性很高的汽车租赁平台,能够满足用户对汽车租赁信息进行管理及查询等需求,实现了快捷便捷的租车体验,同时,该系统也为开发者提供了一个学习VueSpringBoot技术的不错案例。
自习室预订系统是一个基于Java、Spring Boot和Vue开发的应用程序。该系统旨在方便学生和其他用户预订自习室,并提供相关的管理功能。 系统的后端使用Java语言并借助Spring Boot框架来构建。Spring Boot是一个开源的Java开发框架,它提供了许多方便的功能和工具,简化了Java应用程序的开发过程。通过Spring Boot,我们可以轻松地搭建出符合习室预订系统需求的后端服务。 前端部分使用Vue框架来构建用户界面。Vue是一个流行的JavaScript框架,它可以帮助我们构建动态的、交互式的前端界面。在习室预订系统中,Vue将被用于展示自习室信息、预订流程和其他用户操作界面。 习室预订系统的核心功能包括: 1. 用户注册和登录:用户可以通过系统注册和登录帐号,以便进行自习室预订和管理操作。 2. 自习室信息展示:系统将展示自习室的位置、容量、设施等信息,帮助用户选择合适的自习室。 3. 预订管理:用户可以选择时间段和自习室,并提交预订申请。管理员可以审核和确认预订,确保预订流程的顺利进行。 4. 预订记录和管理:用户和管理员可以查看和管理预订记录,包括预订状态、付款情况、取消预订等。 5. 支付功能:用户可以通过系统完成自习室费用支付,系统将提供安全可靠的支付接口。 整个系统将采用分层架构来实现,使得后端和前端可以独立开发和部署。后端采用Java语言和Spring Boot框架进行开发,前端采用Vue框架进行开发。通过这种方式,可以提高开发效率、加快系统的响应速度同时提供良好的用户体验。 总之,Java基于Spring Boot和Vue的自习室预订系统将提供完善的自习室预订服务,并通过简单易用的用户界面和高效可靠的后端服务来满足用户的需求。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

wqq6310855

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

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

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

打赏作者

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

抵扣说明:

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

余额充值