文末获取源码

一、项目技术栈

开发语言:Java
Java开发工具:JDK1.8
后端框架:SpringBoot
前端:采用HTML和Vue相结合开发
数据库:MySQL5.7和Navicat管理工具结合
服务器:Tomcat8.5
开发软件:IDEA / Eclipse
是否Maven项目:是

二、系统分析

1、系统流程分析

系统登录流程图,如图所示:

添加信息流程图,如图所示:

删除信息流程图,如图所示:

功能截图

前台首页功能模块

在前台首页我们可以看到车辆的信息、系统公告、个人中心等功能模块

在车辆信息我们可以看到车辆的基本信息等情况

在系统公告我们可以看到管理员发布的公告信息等

在个人中心我们可以看到我们自己账号的基本信息情况

管理员功能模块

进入到管理员登录页面我们可以看到首页、个人中心、用户管理、车辆信息管理、车辆颜色管理、订单管理等相关模块功能

在用户管理我们可以看到用户的一些基本信息并且可以对他们的信息进行删除、修改等操作

在车辆品牌管理我们可以添加相对应的品牌名称进来

在车辆信息管理中我们可以看到车辆的基本信息等情况

在车辆颜色中我们可以添加汽车中的颜色

在租赁订单管理中我们可以看到用户租赁的一些基本信息等

在还车管理中我们可以看到用户还车的一些基本信息等

管理员管理中我们可以添加管理员

相关代码

数据库配置

# Tomcat
server:tomcat:uri-encoding: UTF-8port: 8080servlet:context-path: /springbootr1tjfspring:datasource:driverClassName: com.mysql.jdbc.Driverurl: jdbc:mysql://127.0.0.1:3306/springbootr1tjf?useUnicode=true&characterEncoding=utf-8&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=GMT%2B8username: rootpassword: 123456#        driverClassName: com.microsoft.sqlserver.jdbc.SQLServerDriver
#        url: jdbc:sqlserver://127.0.0.1:1433;DatabaseName=springbootr1tjf
#        username: sa
#        password: 123456servlet:multipart:max-file-size: 10MBmax-request-size: 10MBresources:static-locations: classpath:static/,file:static/#mybatis
mybatis-plus:mapper-locations: classpath*:mapper/*.xml#实体扫描,多个package用逗号或者分号分隔typeAliasesPackage: com.entityglobal-config:#主键类型  0:"数据库ID自增", 1:"用户输入ID",2:"全局唯一ID (数字类型唯一ID)", 3:"全局唯一ID UUID";id-type: 1#字段策略 0:"忽略判断",1:"非 NULL 判断"),2:"非空判断"field-strategy: 2#驼峰下划线转换db-column-underline: true#刷新mapper 调试神器refresh-mapper: true#逻辑删除配置logic-delete-value: -1logic-not-delete-value: 0#自定义SQL注入器sql-injector: com.baomidou.mybatisplus.mapper.LogicSqlInjectorconfiguration:map-underscore-to-camel-case: truecache-enabled: falsecall-setters-on-nulls: true#springboot 项目mybatis plus 设置 jdbcTypeForNull (oracle数据库需配置JdbcType.NULL, 默认是Other)jdbc-type-for-null: 'null' 

控制层(controller)

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{@Autowiredprivate UserService userService;@Autowiredprivate 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();}
}

业务层(Service)


package com.service;import java.util.List;
import java.util.Map;import org.apache.ibatis.annotations.Param;import com.baomidou.mybatisplus.mapper.Wrapper;
import com.baomidou.mybatisplus.service.IService;
import com.entity.UserEntity;
import com.utils.PageUtils;/*** 系统用户*/
public interface UserService extends IService<UserEntity> {PageUtils queryPage(Map<String, Object> params);List<UserEntity> selectListView(Wrapper<UserEntity> wrapper);PageUtils queryPage(Map<String, Object> params,Wrapper<UserEntity> wrapper);}

数据访问层(Dao)

package com.dao;import java.util.List;import org.apache.ibatis.annotations.Param;import com.baomidou.mybatisplus.mapper.BaseMapper;
import com.baomidou.mybatisplus.mapper.Wrapper;
import com.baomidou.mybatisplus.plugins.pagination.Pagination;
import com.entity.UserEntity;/*** 用户*/
public interface UserDao extends BaseMapper<UserEntity> {List<UserEntity> selectListView(@Param("ew") Wrapper<UserEntity> wrapper);List<UserEntity> selectListView(Pagination page,@Param("ew") Wrapper<UserEntity> wrapper);}

基于SpringBoot的汽车租赁管理系统相关推荐

  1. 基于springboot的汽车租赁管理系统的设计与实现

    项目描述 临近学期结束,还是毕业设计,你还在做java程序网络编程,期末作业,老师的作业要求觉得大了吗?不知道毕业设计该怎么办?网页功能的数量是否太多?没有合适的类型或系统?等等.这里根据疫情当下,你 ...

  2. 基于JSP的汽车租赁管理系统的设计与实现

    欢迎添加微信互相交流学习哦! 项目源码:https://gitee.com/oklongmm/biye2 摘 要 随着汽车工业的发展和汽车在现实生活中的普及,汽车租赁成为近年来兴起的一个新行业.为规范 ...

  3. 基于ssm的汽车租赁管理系统 (源代码+数据库)601

    部分代码地址 https://gitee.com/ynwynwy/carRental-public 基于ssm的汽车租赁管理系统 (源代码+数据库) 一.系统介绍 汽车租赁系统总共分为两个大的模块,分 ...

  4. 汽车租赁|基于SSM实现汽车租赁管理系统

    作者主页:编程指南针 作者简介:Java领域优质创作者.CSDN博客专家 .掘金特邀作者.多年架构师设计经验.腾讯课堂常驻讲师 主要内容:Java项目.毕业设计.简历模板.学习资料.面试题库.技术互助 ...

  5. 基于PHP+MySQL汽车租赁管理系统的设计与实现

    虽然汽车已经进入了家家户户,但是很多时候人们因为各种原因需要进行汽车的租赁,可能是到达的城市比较远,也可能是经济实力不允许,或者是对车辆的要求不高,暂时没必要买车等,这些特殊的原因导致了汽车租赁行业的 ...

  6. 基于JavaWeb的汽车租赁管理系统

    系统角色:超级管理员.系统信息.日常信息.财务信息管理员 系统信息管理模块 车辆管理:车辆列表(根据车号.燃料号.状态检索):功能:增删改查 员工管理:员工列表(根据姓名.员工号.职位检索):功能:添 ...

  7. 基于SSM+Vue汽车租赁管理系统Java车辆出租系统(源码调试+讲解+文档)

  8. 基于javaspringboot+vue的汽车租赁管理系统含文档

    项目描述 临近学期结束,还是毕业设计,你还在做java程序网络编程,期末作业,老师的作业要求觉得大了吗?不知道毕业设计该怎么办?网页功能的数量是否太多?没有合适的类型或系统?等等.这里根据疫情当下,你 ...

  9. java计算机毕业设计基于ssm的汽车租赁出租系统(源代码+数据库+Lw文档)

    项目介绍 随着社会的发展,计算机的优势和普及使得汽车租赁系统的开发成为必需.汽车租赁系统主要是借助计算机对汽车租赁信息等信息进行管理.减少管理员的工作,同时也方便广大用户对个人所需汽车租赁信息的及时查 ...

最新文章

  1. 高项2015年下半年培训随堂作业(10月日)
  2. eclipse jdbc mysql下载_在eclipse里jdbc连接mysql 怎么安装
  3. 基于JAVA+Servlet+JSP+MYSQL的设备管理系统
  4. 深度学习自学(二十):SmoothL1 和 Softmax交叉熵
  5. ztree 修改样式_zTree样式修改
  6. 电子书(文学,计算机)搜索与下载网站推荐
  7. Mac安装双系统后在Windows下体验mac原生触控功能(双指、三指、四指)
  8. AndroidN DisplayManagerService源码简析,亮屏流程分析
  9. 重归理性 国内SOA平台期待价值提升
  10. 怎么把图片进行压缩?分享几种压缩图片的方法
  11. 单片机 TDA8023 读 ic 卡 smrat card sync_card
  12. model-based强化学习入门
  13. ACM常用算法模版(常用函数与STL、重要公式与定理)
  14. 使用Clonezilla进行P2V,备份还原完整过程
  15. 下载电驴屏蔽资源办法
  16. ip地址计算器php源码,php版 子网掩码计算器
  17. 排序算法分析归纳总结
  18. BigBrother的大数据之旅Day 2 Linux(2)
  19. 自动驾驶仿真时如何采集数据做地图
  20. 模式先行区块链商城将颠覆传统商城

热门文章

  1. 我们做什么人才 看李开复北大演讲主题21世纪最需要的7种人才
  2. 开源项目贡献代码流程
  3. 第六章 戚继光——孤独的将领 -1
  4. 计算机时间戳转换时间在线,时间戳,Unix时间戳,时间戳转换
  5. 无碳小车MATLAB轨迹曲线
  6. 云端(Cloud)多租户网络技术
  7. 基于X86的MikroTik ROS软路由的简单介绍和应用(一)
  8. 手工注入,后台另类拿webshell搞定影院系统
  9. 数学分析教程(科大)——2.2笔记+习题
  10. win7如何评价计算机,一个90后眼中的Windows系列计算机系统