一、源码特点
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 map= new HashMap();
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 map= new HashMap();
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", "");//操作提示
return addpage(request,response);
}
三、注意事项
1、管理员账号:admin密码:admin 数据库配置文件DBO.java
2、开发环境为IDEA开发,数据库为mysql,使用java语言开发。
3、数据库文件名是jspcar.sql 系统名称car
4、地址:login.jsp
四 系统实现