一、源码特点
   springboot  出租车管理系统是一套完善的完整信息系统,结合springboot框架和bootstrap完成本系统,对理解JSP java编程开发语言有帮助系统采用springboot框架(MVC模式开发),
 系统具有完整的源代码和数据库,系统主要采用B/S模式开发。
springboot 出租车管理系统
 前段主要技术 bootstrap.css jquery
 后端主要技术 springboot
 数据库 mysql
 开发工具 IDEA  JDK1.8 TOMCAT 8.5
二、功能介绍
 (1)管理员管理:对管理员信息进行添加、删除、修改和查看
 (2)驾驶员管理:对驾驶员信息进行添加、删除、修改和查看
 (3)车辆管理:对车辆信息进行添加、删除、修改和查看
 (4)维修记录管理:对维修记录信息进行添加、删除、修改和查看
 (5)违章记录管理:对违章记录信息进行添加、删除、修改和查看
 (6)事故记录管理:对事故记录信息进行添加、删除、修改和查看
 (7)检车记录管理:对检车记录信息进行添加、删除、修改和查看
 (8)提醒类型管理:对提醒类型信息进行添加、删除、修改和查看
 (9)提醒管理:对提醒信息进行添加、删除、修改和查看
 (10)预测统计管理:对预测统计信息进行添加、删除、修改和查看,结合一元线性算法计算趋势数据
数据库设计
(1)管理员信息表如表5.1所示:
表5.1 管理员信息表
| 序号 | 字段名称 | 数据类型 | 长度 | 主键 | 描述 | 
| 1 | glyid | INTEGER | 11 | 是 | 管理员编号 | 
| 2 | yhm | VARCHAR | 40 | 否 | 用户名 | 
| 3 | mm | VARCHAR | 40 | 否 | 密码 | 
| 4 | xm | VARCHAR | 40 | 否 | 姓名 | 
(2)驾驶员信息表如表5.2所示:
表5.2 驾驶员信息表
| 序号 | 字段名称 | 数据类型 | 长度 | 主键 | 描述 | 
| 1 | jsyid | INTEGER | 11 | 是 | 驾驶员编号 | 
| 2 | yhm | VARCHAR | 40 | 否 | 用户名 | 
| 3 | mm | VARCHAR | 40 | 否 | 密码 | 
| 4 | xm | VARCHAR | 40 | 否 | 姓名 | 
| 5 | lxdh | VARCHAR | 40 | 否 | 联系电话 | 
| 6 | lxdz | VARCHAR | 40 | 否 | 联系地址 | 
| 7 | jszf | VARCHAR | 40 | 否 | 驾驶证分 | 
(3)车辆信息表如表5.3所示:
表5.3 车辆信息表
| 序号 | 字段名称 | 数据类型 | 长度 | 主键 | 描述 | 
| 1 | clid | INTEGER | 11 | 是 | 车辆编号 | 
| 2 | cph | VARCHAR | 40 | 否 | 车牌号 | 
| 3 | cx | VARCHAR | 40 | 否 | 车型 | 
| 4 | ys | VARCHAR | 40 | 否 | 颜色 | 
| 5 | jsy | VARCHAR | 40 | 否 | 驾驶员 | 
| 6 | djsj | VARCHAR | 40 | 否 | 登记时间 | 
| 7 | bxgs | VARCHAR | 40 | 否 | 保险公司 | 
| 8 | dqsj | VARCHAR | 40 | 否 | 到期时间 | 
(4)维修记录信息表如表5.4所示:
表5.4 维修信息表
| 序号 | 字段名称 | 数据类型 | 长度 | 主键 | 描述 | 
| 1 | wxjlid | INTEGER | 11 | 是 | 维修记录编号 | 
| 2 | cl | VARCHAR | 40 | 否 | 车辆 | 
| 3 | bt | VARCHAR | 40 | 否 | 标题 | 
| 4 | wxnr | VARCHAR | 40 | 否 | 维修内容 | 
| 5 | wxsj | VARCHAR | 40 | 否 | 维修时间 | 
| 6 | djr | VARCHAR | 40 | 否 | 登记人 | 
(5)违章记录信息表如表5.5所示:
表5.5 违章记录信息表
| 序号 | 字段名称 | 数据类型 | 长度 | 主键 | 描述 | 
| 1 | wzjlid | INTEGER | 11 | 是 | 违章记录编号 | 
| 2 | cl | VARCHAR | 40 | 否 | 车辆 | 
| 3 | wzsj | VARCHAR | 40 | 否 | 违章时间 | 
| 4 | wzsy | VARCHAR | 40 | 否 | 违章事由 | 
| 5 | kf | VARCHAR | 40 | 否 | 扣分 | 
| 6 | fk | VARCHAR | 40 | 否 | 罚款 | 
(6)事故记录信息表如表5.6所示:
表5.6事故记录信息表
| 序号 | 字段名称 | 数据类型 | 长度 | 主键 | 描述 | 
| 1 | sgjlid | INTEGER | 11 | 是 | 事故记录编号 | 
| 2 | cl | VARCHAR | 40 | 否 | 车辆 | 
| 3 | bt | VARCHAR | 40 | 否 | 标题 | 
| 4 | sgsm | VARCHAR | 40 | 否 | 事故说明 | 
| 5 | ss | VARCHAR | 40 | 否 | 损失 | 
| 6 | dd | VARCHAR | 40 | 否 | 地点 | 
| 7 | zrr | VARCHAR | 40 | 否 | 责任人 | 
| 8 | djsj | VARCHAR | 40 | 否 | 登记时间 | 
(7)检车记录信息表如表5.7所示:
表5.7 检车记录信息表
| 序号 | 字段名称 | 数据类型 | 长度 | 主键 | 描述 | 
| 1 | jcjlid | INTEGER | 11 | 是 | 检车记录编号 | 
| 2 | cl | VARCHAR | 40 | 否 | 车辆 | 
| 3 | jcsj | VARCHAR | 40 | 否 | 检车时间 | 
| 4 | jcdd | VARCHAR | 40 | 否 | 检车地点 | 
| 5 | sm | VARCHAR | 40 | 否 | 说明 | 
| 6 | fy | VARCHAR | 40 | 否 | 费用 | 
(8)提醒类型信息表如表5.8所示:
表5.8 提醒类型信息表
| 序号 | 字段名称 | 数据类型 | 长度 | 主键 | 描述 | 
| 1 | txlxid | INTEGER | 11 | 是 | 提醒类型编号 | 
| 2 | lx | VARCHAR | 40 | 否 | 类型 | 
(9)提醒信息表如表5.9所示:
表5.9 提醒信息表
| 序号 | 字段名称 | 数据类型 | 长度 | 主键 | 描述 | 
| 1 | txid | INTEGER | 11 | 是 | 提醒编号 | 
| 2 | bt | VARCHAR | 40 | 否 | 标题 | 
| 3 | tssm | VARCHAR | 40 | 否 | 提示说明 | 
| 4 | txsj | VARCHAR | 40 | 否 | 提醒时间 | 
| 5 | zt | VARCHAR | 40 | 否 | 状态 | 
| 6 | jsy | VARCHAR | 40 | 否 | 驾驶员 | 
(10)预测统计信息表如表5.10所示:
表5.10 预测统计信息表
| 序号 | 字段名称 | 数据类型 | 长度 | 主键 | 描述 | 
| 1 | yctjid | INTEGER | 11 | 是 | 预测统计编号 | 
| 2 | yf | VARCHAR | 40 | 否 | 月份 | 
| 3 | sl | VARCHAR | 40 | 否 | 数量 | 
| 4 | lx | VARCHAR | 40 | 否 | 类型 | 
主要代码设计
   /**检车记录列表 查询jcjl
	 * 
	 */
    @RequestMapping(value = "listpage")
    public ModelAndView  listpage(HttpServletRequest request, HttpServletResponse response)  {
        try {
            request.setCharacterEncoding("gb2312");//强制字符集
        }catch(Exception e){
            e.printStackTrace();
        }
      Map<String,Object> map= new HashMap<String,Object>();
        ModelAndView mav = new ModelAndView();//初始化
        mav.setViewName("jcjl/jcjllist");//跳转jsp 页面
	String sql="";
        String jcjlid=(String)request.getParameter("jcjlid");
        if(jcjlid!=null&&!jcjlid.equals("")){
           // System.out.println(jcjlid);
          	sql+=" and jcjlid like '%"+jcjlid+"%'";//符合条件 拼接sql 检车记录编号
        }
        String cl=(String)request.getParameter("cl");
        if(cl!=null&&!cl.equals("")){
           // System.out.println(cl);
          	sql+=" and cl like '%"+cl+"%'";//符合条件 拼接sql 车辆
        }
        String jcsj=(String)request.getParameter("jcsj");
        if(jcsj!=null&&!jcsj.equals("")){
           // System.out.println(jcsj);
          	sql+=" and jcsj like '%"+jcsj+"%'";//符合条件 拼接sql 检车时间
        }
        String jcdd=(String)request.getParameter("jcdd");
        if(jcdd!=null&&!jcdd.equals("")){
           // System.out.println(jcdd);
          	sql+=" and jcdd like '%"+jcdd+"%'";//符合条件 拼接sql 检车地点
        }
        String sm=(String)request.getParameter("sm");
        if(sm!=null&&!sm.equals("")){
           // System.out.println(sm);
          	sql+=" and sm like '%"+sm+"%'";//符合条件 拼接sql 说明
        }
        String fy=(String)request.getParameter("fy");
        if(fy!=null&&!fy.equals("")){
           // System.out.println(fy);
          	sql+=" and fy like '%"+fy+"%'";//符合条件 拼接sql 费用
        }
        List list=null;
	try{
	list=jcjldao.querylist(sql);//查询jcjl 表数据返回 list对象
	}catch(Exception e){
            e.printStackTrace();;
        }
        mav.addObject("list",list);//赋值变量
       
        return mav;
    }
    /**检车记录列表 查询jcjl
     *
     */
    @RequestMapping(value = "list")
    public ModelAndView  list(HttpServletRequest request, HttpServletResponse response)  {
        try {
            request.setCharacterEncoding("gb2312");//强制字符集
        }catch(Exception e){
            e.printStackTrace();
        }
        Map<String,Object> map= new HashMap<String,Object>();
        ModelAndView mav = new ModelAndView();//初始化
        mav.setViewName("jcjl/list");//跳转jsp 页面
        String sql="";
        String jcjlid=(String)request.getParameter("jcjlid");
        if(jcjlid!=null&&!jcjlid.equals("")){
            // System.out.println(jcjlid);
            sql+=" and jcjlid like '%"+jcjlid+"%'";//符合条件 拼接sql 检车记录编号
        }
        String cl=(String)request.getParameter("cl");
        if(cl!=null&&!cl.equals("")){
            // System.out.println(cl);
            sql+=" and cl like '%"+cl+"%'";//符合条件 拼接sql 车辆
        }
        String jcsj=(String)request.getParameter("jcsj");
        if(jcsj!=null&&!jcsj.equals("")){
            // System.out.println(jcsj);
            sql+=" and jcsj like '%"+jcsj+"%'";//符合条件 拼接sql 检车时间
        }
        String jcdd=(String)request.getParameter("jcdd");
        if(jcdd!=null&&!jcdd.equals("")){
            // System.out.println(jcdd);
            sql+=" and jcdd like '%"+jcdd+"%'";//符合条件 拼接sql 检车地点
        }
        String sm=(String)request.getParameter("sm");
        if(sm!=null&&!sm.equals("")){
            // System.out.println(sm);
            sql+=" and sm like '%"+sm+"%'";//符合条件 拼接sql 说明
        }
        String fy=(String)request.getParameter("fy");
        if(fy!=null&&!fy.equals("")){
            // System.out.println(fy);
            sql+=" and fy like '%"+fy+"%'";//符合条件 拼接sql 费用
        }
        List list=null;
        try{
            list=jcjldao.querylist(sql);//查询jcjl 表数据返回 list对象
        }catch(Exception e){
            e.printStackTrace();;
        }
        mav.addObject("list",list);//赋值变量
        return mav;
    }
	 /**检车记录添加方法 对表 jcjl 进行添加
	 * 
	 */
    @RequestMapping(value = "add")
    public ModelAndView  add(HttpServletRequest request, HttpServletResponse response){
        try {
            request.setCharacterEncoding("gb2312");//强制字符集
        }catch(Exception e){
            e.printStackTrace();
        }
        ModelAndView mav = new ModelAndView();//初始化
        mav.setViewName("jcjl/jcjladd");
        jcjl bean=new jcjl();
	
        String jcjlid=(String)request.getParameter("jcjlid");//检车记录编号 变量
        bean.setJcjlid(jcjlid);//赋值封装
        String cl=(String)request.getParameter("cl");//车辆 变量
        bean.setCl(cl);//赋值封装
        String jcsj=(String)request.getParameter("jcsj");//检车时间 变量
        bean.setJcsj(jcsj);//赋值封装
        String jcdd=(String)request.getParameter("jcdd");//检车地点 变量
        bean.setJcdd(jcdd);//赋值封装
        String sm=(String)request.getParameter("sm");//说明 变量
        bean.setSm(sm);//赋值封装
        String fy=(String)request.getParameter("fy");//费用 变量
        bean.setFy(fy);//赋值封装
	try{
        jcjldao.add(bean);//执行 添加 jcjl 添加操作
	 }catch(Exception e){
            e.printStackTrace();;
        }
	
       
        request.setAttribute("msg", "<script>alert('添加成功');</script>");//操作提示
        return addpage(request,response);
    }三、注意事项
 1、管理员账号:admin密码:admin 数据库配置文件DBO.java
 2、开发环境为IDEA开发,数据库为mysql,使用java语言开发。
 3、数据库文件名是jspcar.sql 系统名称car
 4、地址:login.jsp 
四 系统实现
















![[Linux入门]---进程优先级](https://img-blog.csdnimg.cn/8e1354e5f59a4a83b3d5ba949fee6b61.png)









