每天记录学习,每天会有好心情。*^_^*
今天将为大家分析一个机房上机安排管理系统(设计一个运行在学校局域网环境之下的机房管理系统并予以实现.该系统采用了目前流行的客户机/服务器模式,结合了先进的WinSock通信方法和功能强大的ADO数据库访问技术.实践证明:本系统设计合理、功能全面,解决了学校机房分布广、上机人员流动性大及系统安全等问题.),该项目使用框架为SSM(MYECLIPSE),选用开发工具为MYECLIPSE。机房上机安排管理系统为一个 后台项目。
为了完成该系统,我们首先需要对该系统进行需求分析。一个机房上机安排管理系统应包含用户角色有管理员。为了能让用户顺利登陆系统完成相关操作,需要为每种登陆角色设置账户和密码字段。
系统中课程、班级之间存在关联关系,我们将其关联关系保存在上机表中。他们的关联关系是这样的上机的课程与课程的kecheng字段对应、上机的课程id与课程的id字段对应、上机的班级与班级的mingzi字段对应、上机的班级id与班级的id字段对应。
总结得出该系统所有数据为:管理员(admin)、课程(kecheng)、班级(banji)、上机(shangji)
管理员表
字段名 | 类型 | 属性 | 描述
id | INT(11) | PRIMARY KEY | 管理员id
username | VARCHAR(255) | | 账号
password | VARCHAR(255) | | 密码
课程表
字段名 | 类型 | 属性 | 描述
id | INT(11) | PRIMARY KEY | 课程id
kecheng | VARCHAR(255) | | 课程
jieshao | VARCHAR(255) | | 介绍
keshi | VARCHAR(255) | | 课时
班级表
字段名 | 类型 | 属性 | 描述
id | INT(11) | PRIMARY KEY | 班级id
banji | VARCHAR(255) | | 班级
jieshao | VARCHAR(255) | | 介绍
上机表
字段名 | 类型 | 属性 | 描述
id | INT(11) | PRIMARY KEY | 上机id
kecheng | VARCHAR(255) | | 课程
kechengid | VARCHAR(255) | | 课程id
banji | VARCHAR(255) | | 班级
banjiid | VARCHAR(255) | | 班级id
shangjishijian | VARCHAR(255) | | 上机时间
SET FOREIGN_KEY_CHECKS=0;
-- ----------------------------
-- ----------------------------
-- Table structure for ggjifangshangjiguanli
-- ----------------------------
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_kecheng`;
CREATE TABLE `t_kecheng` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '课程id',`kecheng` VARCHAR(255) DEFAULT NULL COMMENT '课程',`jieshao` VARCHAR(255) DEFAULT NULL COMMENT '介绍',`keshi` VARCHAR(255) DEFAULT NULL COMMENT '课时',PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='课程';
-- ----------------------------
DROP TABLE IF EXISTS `t_banji`;
CREATE TABLE `t_banji` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '班级id',`banji` VARCHAR(255) DEFAULT NULL COMMENT '班级',`jieshao` VARCHAR(5000) DEFAULT NULL COMMENT '介绍',PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='班级';
-- ----------------------------
DROP TABLE IF EXISTS `t_shangji`;
CREATE TABLE `t_shangji` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '上机id',`kecheng` VARCHAR(255) DEFAULT NULL COMMENT '课程',`kechengid` INT(11) DEFAULT NULL COMMENT '课程id',`banji` VARCHAR(255) DEFAULT NULL COMMENT '班级',`banjiid` INT(11) DEFAULT NULL COMMENT '班级id',`shangjishijian` VARCHAR(255) DEFAULT NULL COMMENT '上机时间',PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='上机';
添加上机模块:
从页面中通过post方法,将上机信息传入到后台服务器中,在tianjiashangjiact
中接收,字段包括课程,课程id,班级,班级id,上机时间使用insert方法添加数据,将数据同步到
数据库中,完成添加操作。定义添加成功提示信息,添加上机成功,并保存到request中具体代码如下:
通过shangjidao的insert方法将页面传输的上机添加到数据库中 shangjidao.insert(shangji);
将添加上机成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "添加上机成功");
返回上机管理界面
return "forward:/tianjiashangji.action";
查询上机模块:
在后台shangjiguanli方法中,通过selectByexample方法获取所有的数据信息。将其保存到request中,在页面中通过foreach方法
进行循环展示到table中。完成上机查询操作。具体代码如下:
生成上机样例类,通过example定义查询条件 ShangjiExample example = new ShangjiExample();
通过shangjidao的selectByExample方法查询出所有的上机信息 List shangjiall = shangjidao.selectByExample(example);
将上机信息,保存到request中,在页面通过foreach方法进行展示 request.setAttribute("shangjiall", shangjiall);
返回上机管理界面
return "forward:/shangjiguanli.action";
修改上机模块:
点击修改按钮,可以跳转到上机修改页面。在上机修改页面中,将初始化该上机的所有信息,并将信息一一对应填充到对应编辑栏中。编辑完上机信息后,页面通过post方法将数据封装为一个上机实体,传入到shangjiController中。在xiugaishangji中进行接收,接收完毕后,调用shangjiMapper中的updateByPrimaryKeySelective方法进行修改。该部分代码如下:
通过shangjidao的修改方法根据id修改对应的上机 shangjidao.updateByPrimaryKeySelective(shangji);
将修改上机成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "修改上机信息成功");
返回上机管理界面
return "forward:/shangjiguanli.action";
删除上机模块:
删除上机功能的实现方式为,通过点击删除上机按钮,向服务器发起get请求。请求中包含上机的id信息,在shangjiController中使用int接受该id,并将该id传入shangjidao的deleteByPrimaryKey方法中。该方法的作用为根据id删除对应上机。最后将删除上机成功的信息返回页面,该部分核心代码如下:
通过shangjidao的删除方法根据id删除对应的上机 shangjidao.deleteByPrimaryKey(id);
将删除上机成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "删除上机成功");
返回上机管理界面
return "forward:/shangjiguanli.action";
标签:COMMENT,VARCHAR,上机,DEFAULT,机房,JAVA,id,255
来源: https://www.cnblogs.com/bfmbch/p/11587340.html