基于SSM框架下的JAVA停车管理系统
每天记录学习,每天会有好心情。*^_^*
今天记录的项目是停车管理系统,这个项目是这么回事:随着科技的飞速发展,人们生活水平的提高,交通工具越来越普及。汽车作为人类社会最主要的交通方式之一,起着重大作用。但是随着城市框架结构的拓展,机动车持续增长,停车位供求矛盾越来越突出。当前的交通状况越来越复杂,如行路难、停车难等问题已成为制约城市运行效率、影响市民生活品质的最突出问题,迫使我们寻找一个能够解决问题的方法,智能化的停车场在这样的背景下具有巨大的发展潜能。。
做这个项目的时候,我们需要用到SSM(MYECLIPSE)框架,开发工具选用最拿手的MYECLIPSE。
停车管理系统项目是一个 后台项目。
开发系统时,需求分析是必不可少的一个环节。停车管理系统拥有的登录角色包括了管理员、用户。
每个账号设置身份、账号、密码是必不可少的,管理员、用户中都包含这些登录角色该有的字段。
系统中车位、用户之间存在关联关系,我们将其关联关系保存在停车记录表中。他们的关联关系是这样的停车记录的车位与车位的cheweihao字段对应、停车记录的车位id与车位的id字段对应、停车记录的用户与用户的mingzi字段对应
。
总结得出该系统所有数据为:管理员(admin)、用户(yonghu)、车位(chewei)、公告(gonggao)、停车记录(tingchejilu)
管理员表
字段名 | 类型 | 属性 | 描述 id | INT(11) | PRIMARY KEY | 管理员id username | VARCHAR(255) | | 账号 password | VARCHAR(255) | | 密码
用户表
字段名 | 类型 | 属性 | 描述 id | INT(11) | PRIMARY KEY | 用户id username | VARCHAR(255) | | 账号 password | VARCHAR(255) | | 密码 mingzi | VARCHAR(255) | | 名字 yue | VARCHAR(255) | | 余额 chepai | VARCHAR(255) | | 车牌号
车位表
字段名 | 类型 | 属性 | 描述 id | INT(11) | PRIMARY KEY | 车位id cheweihao | VARCHAR(255) | | 车位号 weizhi | VARCHAR(255) | | 位置 xiaoshifeiyong | VARCHAR(255) | | 费用(每小时) zhuangtai | VARCHAR(255) | | 状态
公告表
字段名 | 类型 | 属性 | 描述 id | INT(11) | PRIMARY KEY | 公告id biaoti | VARCHAR(255) | | 标题 neirong | VARCHAR(255) | | 内容 riqi | VARCHAR(255) | | 日期
停车记录表
字段名 | 类型 | 属性 | 描述 id | INT(11) | PRIMARY KEY | 停车记录id chewei | VARCHAR(255) | | 车位 cheweiid | VARCHAR(255) | | 车位id yonghu | VARCHAR(255) | | 用户 yonghuid | VARCHAR(255) | | 用户ID shirushijian | VARCHAR(255) | | 驶入时间 shichushijian | VARCHAR(255) | | 驶出时间 xiaoshishoufei | VARCHAR(255) | | 费用(每小时) zhuangtai | VARCHAR(255) | | 状态
SET FOREIGN_KEY_CHECKS=0; -- ---------------------------- -- ---------------------------- -- Table structure for tingcheguanli -- ---------------------------- 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_yonghu`; CREATE TABLE `t_yonghu` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '用户id',`username` VARCHAR(255) DEFAULT NULL COMMENT '账号',`password` VARCHAR(255) DEFAULT NULL COMMENT '密码',`mingzi` VARCHAR(255) DEFAULT NULL COMMENT '名字',`yue` VARCHAR(255) DEFAULT NULL COMMENT '余额',`chepai` VARCHAR(255) DEFAULT NULL COMMENT '车牌号',PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='用户'; -- ---------------------------- DROP TABLE IF EXISTS `t_chewei`; CREATE TABLE `t_chewei` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '车位id',`cheweihao` VARCHAR(255) DEFAULT NULL COMMENT '车位号',`weizhi` VARCHAR(255) DEFAULT NULL COMMENT '位置',`xiaoshifeiyong` VARCHAR(255) DEFAULT NULL COMMENT '费用(每小时)',`zhuangtai` VARCHAR(255) DEFAULT NULL COMMENT '状态',PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='车位'; -- ---------------------------- DROP TABLE IF EXISTS `t_gonggao`; CREATE TABLE `t_gonggao` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '公告id',`biaoti` VARCHAR(255) DEFAULT NULL COMMENT '标题',`neirong` VARCHAR(255) DEFAULT NULL COMMENT '内容',`riqi` VARCHAR(255) DEFAULT NULL COMMENT '日期',PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='公告'; -- ---------------------------- DROP TABLE IF EXISTS `t_tingchejilu`; CREATE TABLE `t_tingchejilu` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '停车记录id',`chewei` VARCHAR(255) DEFAULT NULL COMMENT '车位',`cheweiid` INT(11) DEFAULT NULL COMMENT '车位id',`yonghu` VARCHAR(255) DEFAULT NULL COMMENT '用户',`yonghuid` INT(11) DEFAULT NULL COMMENT '用户ID',`shirushijian` VARCHAR(255) DEFAULT NULL COMMENT '驶入时间',`shichushijian` VARCHAR(255) DEFAULT NULL COMMENT '驶出时间',`xiaoshishoufei` VARCHAR(255) DEFAULT NULL COMMENT '费用(每小时)',`zhuangtai` VARCHAR(255) DEFAULT NULL COMMENT '状态',PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='停车记录';
添加停车记录模块:
系统中存在添加停车记录功能,通过点击添加停车记录可以跳转到该功能模块,在该功能模块中,填写对应的停车记录信息。停车记录包含信息车位,车位id,用户,用户ID,驶入时间,驶出时间,费用(每小时),状态,填写完所有信息后,通过post方法将数据提交到tianjiatingchejilu.action中,该地址将在服务器中tingchejiluController类中的tianjiatingchejiluact方法中进行响应。响应结果为,获取所有的停车记录信息,封装一个tingchejilu类,使用tingchejiluController类中定义的tingchejiludao的insert方法,将停车记录数据插入到数据库的tingchejilu表中。并给出用户提示信息,添加停车记录成功,将该信息保存到request的message中,该信息将在页面中进行展示。该部分核心代码如下:
通过tingchejiludao的insert方法将页面传输的停车记录添加到数据库中 tingchejiludao.insert(tingchejilu);
将添加停车记录成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "添加停车记录成功");
返回停车记录管理界面
return "forward:/tianjiatingchejilu.action";
查询停车记录模块:
停车记录的查询模块实现方式为,在页面中发起tingchejiluguanli.action请求。通过该请求,响应服务器tingchejiluController类中的tingchejiluguanli,在该方法中通过selectByexample进行数据的查询操作。将所有的停车记录信息查询后,保存到request中的tingchejiluall中,在页面中进行展示,返回tingchejiluguanli.jsp,该部分核心代码如下所示:
生成停车记录样例类,通过example定义查询条件 TingchejiluExample example = new TingchejiluExample();
通过tingchejiludao的selectByExample方法查询出所有的停车记录信息 List tingchejiluall = tingchejiludao.selectByExample(example);
将停车记录信息,保存到request中,在页面通过foreach方法进行展示 request.setAttribute("tingchejiluall", tingchejiluall);
返回停车记录管理界面
return "forward:/tingchejiluguanli.action";
修改停车记录模块:
点击修改按钮,可以跳转到停车记录修改页面。在停车记录修改页面中,将初始化该停车记录的所有信息,并将信息一一对应填充到对应编辑栏中。编辑完停车记录信息后,页面通过post方法将数据封装为一个停车记录实体,传入到tingchejiluController中。在xiugaitingchejilu中进行接收,接收完毕后,调用tingchejiluMapper中的updateByPrimaryKeySelective方法进行修改。该部分代码如下:
通过tingchejiludao的修改方法根据id修改对应的停车记录 tingchejiludao.updateByPrimaryKeySelective(tingchejilu);
将修改停车记录成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "修改停车记录信息成功");
返回停车记录管理界面
return "forward:/tingchejiluguanli.action";
删除停车记录模块:
在管理页面中,点击删除。页面将通过a标签的href属性,使用get方法将该停车记录
的id上传到服务器中,在服务器中通过tingchejiluController类中的shanchutingchejilu进行接收,之后调用tingchejiluMapper中的deleteByPrimaryKey方法根据ID进行删除。将删除信息保存到request的message中,在页面给出用户删除成功的提示信息,该部分核心代码如下:
通过tingchejiludao的删除方法根据id删除对应的停车记录 tingchejiludao.deleteByPrimaryKey(id);
将删除停车记录成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "删除停车记录成功");
返回停车记录管理界面
return "forward:/tingchejiluguanli.action";
原文地址:https://www.cnblogs.com/rt14/p/11598855.html
- KVM+Qemu+Libvirt实战
- 内核级虚拟化技术
- tomcat配置ROOT目录和多站点
- IntelliJ IDEA使用(一)基本设置与类、方法模板设置
- JS魔法堂:从void 0 === undefined说起
- Maven(三)在Eclipse中使用Maven与Maven坐标
- Nginx多站点设置及负载均衡
- Maven(二)Maven项目的创建(命令、myeclipse)及生命周期
- JS魔法堂:初探传说中的setImmediate函数
- 配置nginx.conf实现负载均衡
- Maven(一)初识Maven
- MySQL(十一)之触发器
- 用CSS3在火狐浏览器中实现倒影
- MySQL(十)之视图
- java教程
- Java快速入门
- Java 开发环境配置
- Java基本语法
- Java 对象和类
- Java 基本数据类型
- Java 变量类型
- Java 修饰符
- Java 运算符
- Java 循环结构
- Java 分支结构
- Java Number类
- Java Character类
- Java String类
- Java StringBuffer和StringBuilder类
- Java 数组
- Java 日期时间
- Java 正则表达式
- Java 方法
- Java 流(Stream)、文件(File)和IO
- Java 异常处理
- Java 继承
- Java 重写(Override)与重载(Overload)
- Java 多态
- Java 抽象类
- Java 封装
- Java 接口
- Java 包(package)
- Java 数据结构
- Java 集合框架
- Java 泛型
- Java 序列化
- Java 网络编程
- Java 发送邮件
- Java 多线程编程
- Java Applet基础
- Java 文档注释