• 基于WEB的JAVA出租车打车系统


    每天记录学习,每天会有好心情。*^_^*

    今天记录的项目是出租车打车系统,这个项目是这么回事:为了适应新型出租车管理体制,设计了一个基于Web平台的出租车管理系统方案.介绍了该系统的总体框架,除常见功能外,还整合了短信平台、GPS监控平台、权限管理等功能.最终的测试表明了该系统的功能满足新型出租车管理系统.。
    做这个项目的时候,我们需要用到SSM(MYECLIPSE)框架,开发工具选用最拿手的MYECLIPSE。
    出租车打车系统项目是一个 后台项目。
    开发系统时,需求分析是必不可少的一个环节。出租车打车系统拥有的登录角色包括了管理员、乘客、司机。
    每个账号设置身份、账号、密码是必不可少的,管理员、乘客、司机中都包含这些登录角色该有的字段。
    订单的存在是为了能更好的结合系统的功能。乘客、司机表的联系在这张表中得以体现,其关联关系为订单的乘客与乘客的nicheng字段对应、订单的乘客id与乘客的id字段对应、订单的司机与司机的mingzi字段对应、订单的司机id与司机的id字段对应

    总结得出该系统所有数据为:管理员(admin)、乘客(chengke)、司机(siji)、订单(dingdan)

    管理员表

    字段名 | 类型 | 属性 | 描述
    id | INT(11) | PRIMARY KEY | 管理员id
    username | VARCHAR(255) | | 账号
    password | VARCHAR(255) | | 密码

    乘客表

    字段名 | 类型 | 属性 | 描述
    id | INT(11) | PRIMARY KEY | 乘客id
    nicheng | VARCHAR(255) | | 昵称
    username | VARCHAR(255) | | 账号
    password | VARCHAR(255) | | 密码
    nianling | VARCHAR(255) | | 年龄
    xingbie | VARCHAR(255) | | 性别

    司机表

    字段名 | 类型 | 属性 | 描述
    id | INT(11) | PRIMARY KEY | 司机id
    mingzi | VARCHAR(255) | | 名字
    username | VARCHAR(255) | | 账号
    password | VARCHAR(255) | | 密码
    xingbie | VARCHAR(255) | | 性别
    jiashinianling | VARCHAR(255) | | 驾驶年龄

    订单表

    字段名 | 类型 | 属性 | 描述
    id | INT(11) | PRIMARY KEY | 订单id
    qidian | VARCHAR(255) | | 起点
    zhongdian | VARCHAR(255) | | 终点
    shijian | VARCHAR(255) | | 时间
    chengke | VARCHAR(255) | | 乘客
    chengkeid | VARCHAR(255) | | 乘客id
    siji | VARCHAR(255) | | 司机
    sijiid | VARCHAR(255) | | 司机id
    zhuangtai | VARCHAR(255) | | 状态
    SET FOREIGN_KEY_CHECKS=0;
    
    -- ----------------------------
    
    -- ----------------------------
    
    -- Table structure for ggchuzuchedache
    
    -- ----------------------------
    
    DROP TABLE IF EXISTS `t_admin`;
    
    CREATE TABLE `t_admin` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '管理员id',`username` VARCHAR(255) DEFAULT NULL COMMENT '账号',`password` VARCHAR(255) DEFAULT NULL COMMENT '密码',PRIMARY KEY (`id`)
    
    ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='管理员';
    
    -- ----------------------------
    
    DROP TABLE IF EXISTS `t_chengke`;
    
    CREATE TABLE `t_chengke` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '乘客id',`nicheng` VARCHAR(255) DEFAULT NULL COMMENT '昵称',`username` VARCHAR(255) DEFAULT NULL COMMENT '账号',`password` VARCHAR(255) DEFAULT NULL COMMENT '密码',`nianling` VARCHAR(255) DEFAULT NULL COMMENT '年龄',`xingbie` VARCHAR(255) DEFAULT NULL COMMENT '性别',PRIMARY KEY (`id`)
    
    ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='乘客';
    
    -- ----------------------------
    
    DROP TABLE IF EXISTS `t_siji`;
    
    CREATE TABLE `t_siji` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '司机id',`mingzi` VARCHAR(255) DEFAULT NULL COMMENT '名字',`username` VARCHAR(255) DEFAULT NULL COMMENT '账号',`password` VARCHAR(255) DEFAULT NULL COMMENT '密码',`xingbie` VARCHAR(255) DEFAULT NULL COMMENT '性别',`jiashinianling` VARCHAR(255) DEFAULT NULL COMMENT '驾驶年龄',PRIMARY KEY (`id`)
    
    ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='司机';
    
    -- ----------------------------
    
    DROP TABLE IF EXISTS `t_dingdan`;
    
    CREATE TABLE `t_dingdan` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '订单id',`qidian` VARCHAR(255) DEFAULT NULL COMMENT '起点',`zhongdian` VARCHAR(255) DEFAULT NULL COMMENT '终点',`shijian` VARCHAR(255) DEFAULT NULL COMMENT '时间',`chengke` VARCHAR(255) DEFAULT NULL COMMENT '乘客',`chengkeid` INT(11) DEFAULT NULL COMMENT '乘客id',`siji` VARCHAR(255) DEFAULT NULL COMMENT '司机',`sijiid` INT(11) DEFAULT NULL COMMENT '司机id',`zhuangtai` VARCHAR(255) DEFAULT NULL COMMENT '状态',PRIMARY KEY (`id`)
    
    ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='订单';

    添加司机模块:

    系统中存在添加司机功能,通过点击添加司机可以跳转到该功能模块,在该功能模块中,填写对应的司机信息。司机包含信息名字,账号,密码,性别,驾驶年龄,填写完所有信息后,通过post方法将数据提交到tianjiasiji.action中,该地址将在服务器中sijiController类中的tianjiasijiact方法中进行响应。响应结果为,获取所有的司机信息,封装一个siji类,使用sijiController类中定义的sijidao的insert方法,将司机数据插入到数据库的siji表中。并给出用户提示信息,添加司机成功,将该信息保存到request的message中,该信息将在页面中进行展示。该部分核心代码如下:

    通过sijidao的insert方法将页面传输的司机添加到数据库中 sijidao.insert(siji);

    将添加司机成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "添加司机成功");

    返回司机管理界面

    return "forward:/tianjiasiji.action";

    查询司机模块:

    在后台中定义司机查询模块,在侧边栏中点击司机管理,可以跳转到司机管理界面。在该页面中通过sijiController中定义sijiguanli响应司机查询模块。在sijiguanli中查询出所有信息,返回页面进行循环展示。查询方法为sijidao中的selectByexample方法。该部分核心代码如下:

    生成司机样例类,通过example定义查询条件 SijiExample example = new SijiExample();

    通过sijidao的selectByExample方法查询出所有的司机信息 List sijiall = sijidao.selectByExample(example);

    将司机信息,保存到request中,在页面通过foreach方法进行展示 request.setAttribute("sijiall", sijiall);

    返回司机管理界面

    return "forward:/sijiguanli.action";

    修改司机模块:

    在页面填写完修改信息后,点击修改按钮,将数据提交到xiugaisiji中,封装为一个司机

    ,使用update方法修改该司机信息,将数据同步到数据库,完成修改操作。

    定义修改成功提示信息,修改司机成功,并保存到request中具体代码如下:

    通过sijidao的修改方法根据id修改对应的司机 sijidao.updateByPrimaryKeySelective(siji);

    将修改司机成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "修改司机信息成功");

    返回司机管理界面

    return "forward:/sijiguanli.action";

    删除司机模块:

    在页面中通过a标签,shanchusiji?id=将id传入到后台中,通过shanchusiji接收司机id。使用deleteByid的方法

    删除该司机,完成删除操作。定义删除成功提示信息,删除司机成功,并保存到request中,该部分代码如下:

    通过sijidao的删除方法根据id删除对应的司机 sijidao.deleteByPrimaryKey(id);

    将删除司机成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "删除司机成功");

    返回司机管理界面

    return "forward:/sijiguanli.action";

  • 相关阅读:
    【MySQL】MySQL之备份
    【MySQL】MySQL之导入和导出
    MySQL逻辑备份之MySQLDump
    【Perl】Linux下安装Perl
    【MySQL】MySQL NDB Cluster维护
    【MySQL】MySQL NDB Cluster安装
    Linux服务器开启ssh服务,实现ssh远程登陆!
    PDO异常处理
    PHP异常处理
    PDO中的事务处理
  • 原文地址:https://www.cnblogs.com/lqs11/p/11593903.html
Copyright © 2020-2023  润新知