JavaSSM框架学完,手写一个汽车租赁系统,真NE!

本文适合熟悉SSM框架的读者,通过构建一个汽车租赁系统,加深对SSM、LayUI、jQuery等技术的理解。项目涵盖了客户、车辆、出租、还车管理,以及RBAC权限系统。涉及的技术包括Spring、SpringMVC、MyBatis、Quartz、log4j、Druid等,同时介绍了环境搭建和目录结构。
摘要由CSDN通过智能技术生成

适合人群

学完了SSM框架的相关知识,但是总感觉自己对于框架的使用和理解并不是很深刻,所以决定写一个项目来练习和提升自己对于框架的理解以及使用框架进行开发过程的理解

适合人群:

  1. 熟悉SSM框架,熟悉SSM框架开发流程
  2. 了解LayUI框架的基本知识
  3. 熟悉jQuery,jsp等技术

通过练习该项目,能够提升对于SSM框架的理解,了解项目的基本开发流程以及前后端数据的交互.

项目介绍

先看一下项目演示:

在这里插入图片描述

项目整体功能图

在这里插入图片描述

该项目是一个汽车租赁项目,登录成功后,能实现租车时的汽车出库和汽车入库,有客户管理,车辆管理,出租单管理,检查单管理等业务功能.也有客户管理,角色分配等系统功能,同时能实现对于客户,车辆,业绩的简单数据分析.

涉及的技术

  • Spring,SpirngMVC,MyBatis框架(SSM)
  • 前端LayUI框架,jsp,jQuery等技术
  • Quartz定时任务框架
  • log4j日志系统,druid数据源监控
  • echarts为数据分析提供技术支持
  • maven的使用
  • 简单的RBAC角色分配技术

数据库设计

一.业务表

1,客户表(bus_customers)

字段名 字段说明 类型 是否主键 备注
identity 身份证 varhcar
custname 姓名 Varchar
sex 性别 Int
address 地址 varchar
phone 电话 varchar
career 职位 varchar

2,车辆表(bus_cars)

字段名 字段说明 类型 是否主键 备注
carnumber 车牌号 varhcar
cartype 类型 varchar
color 颜色 varchar
price 购买价格 double
rentprice 出租价格 double
deposit 押金 double
isrenting 是否出租 int
description 描述 varchar
carimg 车辆图片 varchar

3,出租表(bus_rents)

字段名 字段说明 类型 是否主键 备注
rentid 出租单号 varhcar 后台使用时间生成
price 出租实际价格 double
begindate 开始时间 Datetime
returndate 还车时间 Datetime
rentflag 出租状态 int 0未归还1已归还
identity 客户身份证 varchar
carnumber 车牌号 varchar
opername 操作员 varchar 当前登陆人

4,还车表(bus_checks)

字段名 字段说明 类型 是否主键 备注
checkid 检查单号 varhcar 后台使用时间生成
checkdate 检查时间 datetime
checkdesc 描述 varchar
problem 存在问题 varchar
paymoney 赔付金额 double
opername 操作员 varchar 当前登陆人
rentid 出租单号 varchar

二,系统表(RBAC权限管理)

1.菜单表(sys_menus)

字段名 字段说明 类型 是否主键 备注
id ID Int
pid 父节点id Int
name 菜单名称 varchar
href 跳转地址 varchar
open 是否打开 Int 0不打1打开
parent 是否父节点 Int 0非父节点1父节点
target 打开方式 varchar
icon 节点图标 varchar
tabicon Tab图标 varchar img
available 是否可用 Int 0不可用1可用

2. 用户表(sys_users)

字段名 字段说明 类型 是否主键 备注
userid 用户编号 Int
loginname 登陆名 varchar
identity 身份证号 varchar
realname 真实名称 varchar
sex 性别 Int 0女1男
address 地址 varchar
phone 电话 varchar
pwd 密码 varchar
position 职位 varchar
type 用户类型 Int 1,超级管理员2,系统用户Where type<>1

3.角色表(sys_roles)

字段名 字段说明 类型 是否主键 备注
roleid 角色编号 Int
rolename 角色名称 varchar
roledesc 角色备注 varchar

4. 角色和菜单关系表(sys_role_menu)

字段名 字段说明 类型 是否主键 备注
rid 角色编号 Int 角色表的roleid外键
mid 菜单编号 Int 菜单表的id外键

5.用户和角色和关系表(sys_role_user)

字段名 字段说明 类型 是否主键 备注
uid 用户编号 Int 用户表的userid外键
rid 角色编号 Int 角色表的roleid外键

二,系统表(其它)

1.登陆日志表(sys_log_login)

字段名 字段说明 类型 是否主键 备注
id 日志ID Int
loginname 登陆名+真实姓名 varchar
loginip 登陆IP varchar
logintime 登陆时间 datetime

2. 系统公告表(sys_news)

字段名 字段说明 类型 是否主键 备注
id 编号 Int
title 标题 varchar
Content 内容 varchar
createtime 发布时间 datetime
opername 发布人 varchar

环境的搭建

  • 我使用的是IDEA的开发工具

个人感觉IDEA开发工具对于程序员比较友好,熟练的使用能够提高开发的效率

创建maven项目导入相关依赖的jar包创建对应的包

这部分比较基础,都是一些配置相关,详细的配置方法在我之前的博客文章中都有介绍,这里不赘述.

目录结构结合项目介绍

这里给出创建好的目录结构

image-20200714155711472

  • 将项目的包分为三个:分别是bus对应业务相关的包,sys对应系统功能相关,task对应数据分析相关.

合理的分包,程序不仅可读性强,开发也更高效

配置好开发环境:

  1. 创建项目

  2. 导入依赖

  3. 创建druid.properties

  4. 创建log4j.properties

  5. 创建spring-dao.xml

  6. 创建spring-service.xml

  7. 创建spring-context.xml

  8. 创建spring-mvc.xml

  9. 修改web.xml

  10. 创建file.properties

    文件上传下载的配置文件

    #file upload path config
    path=G:/upload/
    
  11. 创建AppListener

    过滤器

    package per.leiyu.sys.listener;
    
    import javax.servlet.ServletContext;
    import javax.servlet.ServletContextEvent;
    import javax.servlet.ServletContextListener;
    import javax.servlet.annotation.WebListener;
    
    @WebListener
    public class AppListener implements ServletContextListener
评论 12
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

炒冷饭

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

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

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

打赏作者

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

抵扣说明:

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

余额充值