今日思考,完成一个基于Web的电力管理系统项目,需要实现哪些功能?
此类项目常见描述如下:
电力多经安装管理软件是电力多经企业在安装电力设施时的一种计算 机网络管理系统.现有的一套安装管理软件是基于MYSQL数据库开发的.随着电力系统的发展和电力多经企业规模的扩大,该系统已经远远不能满足生产经营 的需要.在实际使用过程中,还存在着可操作性差、实时性差和可维护性差等缺陷.笔者设计了一种基于B/S模式的安装管理软件系统,采用JAVA技术、系统建 成技术、数据库技术、Internet等作为主流技术,实现了电力企业安装办公管理的科学化、简单化、智能化和安全化.该安装管理软件不仅在可操作性、实 时性和可维护性上比原有系统有了很大的改进,而且在安全性上有了强大的保障。
SSM(MYECLIPSE)框架及其适合本类项目,使用MVC的思想可以极大程度减少重复工作量。和SSM(MYECLIPSE)框架最配的开发工具是MYECLIPSE。MYECLIPSE集成了大量插件,可以更好的使用SSM(MYECLIPSE)进行项目的开发,使得项目开发时事半功倍。
通过对基于Web的电力管理系统系统的仔细分析,可以得出基于Web的电力管理系统系统是一个 后台项目。
在这样一个项目中,系统的登录角色是必不可少的,对每个登录角色设置账号、密码。以确保系统可以正常登录使用。SSM(MYECLIPSE)项目中包含的登录角色有管理员、用户。
总结得出该系统所有数据为:管理员(admin)、用户(yonghu)、供电区域(gongdianquyu)、安装(anzhuang)
管理员表
字段名 | 类型 | 属性 | 描述 id | INT(11) | PRIMARY KEY | 管理员id username | VARCHAR(255) | | 账号 password | VARCHAR(255) | | 密码
用户表
字段名 | 类型 | 属性 | 描述 id | INT(11) | PRIMARY KEY | 用户id xingming | VARCHAR(255) | | 姓名 nianling | VARCHAR(255) | | 年龄 zhuzhi | VARCHAR(255) | | 住址 xingbie | VARCHAR(255) | | 性别 username | VARCHAR(255) | | 账号 password | VARCHAR(255) | | 密码
供电区域表
字段名 | 类型 | 属性 | 描述 id | INT(11) | PRIMARY KEY | 供电区域id didian | VARCHAR(255) | | 地点 gongdianliang | VARCHAR(255) | | 供电量 huzhu | VARCHAR(255) | | 户主
安装表
字段名 | 类型 | 属性 | 描述 id | INT(11) | PRIMARY KEY | 安装id huzhuzhuce | VARCHAR(255) | | 户主注册 xingming | VARCHAR(255) | | 姓名 bianhaoi | VARCHAR(255) | | 编号 shijian | VARCHAR(255) | | 时间 anzhuangren | VARCHAR(255) | | 安装人
SET FOREIGN_KEY_CHECKS=0; -- ---------------------------- -- ---------------------------- -- Table structure for ggjywebddlglxt -- ---------------------------- 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‘,`xingming` VARCHAR(255) DEFAULT NULL COMMENT ‘姓名‘,`nianling` VARCHAR(255) DEFAULT NULL COMMENT ‘年龄‘,`zhuzhi` VARCHAR(255) DEFAULT NULL COMMENT ‘住址‘,`xingbie` VARCHAR(255) DEFAULT NULL COMMENT ‘性别‘,`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_gongdianquyu`; CREATE TABLE `t_gongdianquyu` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT ‘供电区域id‘,`didian` VARCHAR(255) DEFAULT NULL COMMENT ‘地点‘,`gongdianliang` VARCHAR(255) DEFAULT NULL COMMENT ‘供电量‘,`huzhu` VARCHAR(255) DEFAULT NULL COMMENT ‘户主‘,PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT=‘供电区域‘; -- ---------------------------- DROP TABLE IF EXISTS `t_anzhuang`; CREATE TABLE `t_anzhuang` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT ‘安装id‘,`huzhuzhuce` VARCHAR(255) DEFAULT NULL COMMENT ‘户主注册‘,`xingming` VARCHAR(255) DEFAULT NULL COMMENT ‘姓名‘,`bianhaoi` VARCHAR(255) DEFAULT NULL COMMENT ‘编号‘,`shijian` VARCHAR(255) DEFAULT NULL COMMENT ‘时间‘,`anzhuangren` VARCHAR(255) DEFAULT NULL COMMENT ‘安装人‘,PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT=‘安装‘;
添加供电区域模块:
从页面中通过post方法,将供电区域信息传入到后台服务器中,在tianjiagongdianquyuact
中接收,字段包括地点,供电量,户主使用insert方法添加数据,将数据同步到
数据库中,完成添加操作。定义添加成功提示信息,添加供电区域成功,并保存到request中具体代码如下:
通过gongdianquyudao的insert方法将页面传输的供电区域添加到数据库中 gongdianquyudao.insert(gongdianquyu);
将添加供电区域成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "添加供电区域成功");
返回供电区域管理界面
return "forward:/tianjiagongdianquyu.action";
查询供电区域模块:
在浏览器中进入供电区域查询页面时,此时浏览器的地址栏为gongdianquyuguanli.action,该地址将响应gongdianquyuController类中的gongdianquyuguanli,在该方法中,通过selectByexample方法获取所有的供电区域信息,并将该信息保存到request中,在页面进行循环展示。该部分核心代码如下:
生成供电区域样例类,通过example定义查询条件 GongdianquyuExample example = new GongdianquyuExample();
通过gongdianquyudao的selectByExample方法查询出所有的供电区域信息 List gongdianquyuall = gongdianquyudao.selectByExample(example);
将供电区域信息,保存到request中,在页面通过foreach方法进行展示 request.setAttribute("gongdianquyuall", gongdianquyuall);
返回供电区域管理界面
return "forward:/gongdianquyuguanli.action";
修改供电区域模块:
在页面完成供电区域的修改信息填写后,将该部分数据传入xiugaigongdianquyu.action地址,并通过post进行提交。提交后在gongdianquyuController中通过xiugaigongdianquyu进行接收,将所有字段封装为一个供电区域实体。并将该实体传入gongdianquyudao中的updateByPrimaryKeySelective方法中,在该方法中定义了通过供电区域id更新其余供电区域的字段,该部分字段包括地点,供电量,户主,该部分核心代码如下所示:
通过gongdianquyudao的修改方法根据id修改对应的供电区域 gongdianquyudao.updateByPrimaryKeySelective(gongdianquyu);
将修改供电区域成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "修改供电区域信息成功");
返回供电区域管理界面
return "forward:/gongdianquyuguanli.action";
删除供电区域模块:
在管理页面中,点击删除。页面将通过a标签的href属性,使用get方法将该供电区域
的id上传到服务器中,在服务器中通过gongdianquyuController类中的shanchugongdianquyu进行接收,之后调用gongdianquyuMapper中的deleteByPrimaryKey方法根据ID进行删除。将删除信息保存到request的message中,在页面给出用户删除成功的提示信息,该部分核心代码如下:
通过gongdianquyudao的删除方法根据id删除对应的供电区域 gongdianquyudao.deleteByPrimaryKey(id);
将删除供电区域成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "删除供电区域成功");
返回供电区域管理界面
return "forward:/gongdianquyuguanli.action";