每天记录学习,每天会有好心情。*^_^*
今天将为大家分析一个基于SSM框架的交换机管理系统,交换机工作于OSI参考模型的第二层,即数据链路层。采用当前非常流行的B/S体系结构,以JSP作为开发技术,主要依赖SSM技术框架,mysql数据库建立本系统对其进行分析介绍。
基于SSM框架的交换机管理项目使用框架为SSM(MYECLIPSE),选用开发工具为MYECLIPSE。基于SSM框架的交换机管理为一个 后台项目。
为了完成基于SSM框架的交换机管理,我们首先需要对该系统进行需求分析。一个基于SSM框架的交换机管理应包含用户角色有管理员、用户。为了能让用户顺利登陆系统完成相关操作,需要为每种登陆角色设置账户和密码字段。
总结得出基于SSM框架的交换机管理项目所有数据为:管理员(admin)、用户(yonghu)、分类(fenlei)、局域网交换机(juyuwangjiaohuanji)
基于SSM框架的交换机管理之管理员表
字段名 | 类型 | 属性 | 描述 id | INT(11) | PRIMARY KEY | 管理员id username | VARCHAR(255) | | 账号 password | VARCHAR(255) | | 密码
基于SSM框架的交换机管理之用户表
字段名 | 类型 | 属性 | 描述 id | INT(11) | PRIMARY KEY | 用户id xingming | VARCHAR(255) | | 姓名 xingbie | VARCHAR(255) | | 性别 nianling | VARCHAR(255) | | 年龄 quanxian | VARCHAR(255) | | 权限 username | VARCHAR(255) | | 账号 password | VARCHAR(255) | | 密码
基于SSM框架的交换机管理之分类表
字段名 | 类型 | 属性 | 描述 id | INT(11) | PRIMARY KEY | 分类id guangyuwangjiaohuanji | VARCHAR(255) | | 广域网交换机 juyuwangjiaohuanji | VARCHAR(255) | | 局域网交换机
基于SSM框架的交换机管理之局域网交换机表
字段名 | 类型 | 属性 | 描述 id | INT(11) | PRIMARY KEY | 局域网交换机id yitaiwangjiaohuanji | VARCHAR(255) | | 以太网交换机 fddijiaohuanji | VARCHAR(255) | | FDDI交换机 atmjiaohuanji | VARCHAR(255) | | ATM交换机 lingpaihuanjiaohuanji | VARCHAR(255) | | 令牌环交换机
SET FOREIGN_KEY_CHECKS=0; -- ---------------------------- -- ---------------------------- -- Table structure for ggjiaohuanjiguanlixt -- ---------------------------- 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 '姓名',`xingbie` VARCHAR(255) DEFAULT NULL COMMENT '性别',`nianling` VARCHAR(255) DEFAULT NULL COMMENT '年龄',`quanxian` 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_fenlei`; CREATE TABLE `t_fenlei` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '分类id',`guangyuwangjiaohuanji` VARCHAR(255) DEFAULT NULL COMMENT '广域网交换机',`juyuwangjiaohuanji` VARCHAR(255) DEFAULT NULL COMMENT '局域网交换机',PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='分类'; -- ---------------------------- DROP TABLE IF EXISTS `t_juyuwangjiaohuanji`; CREATE TABLE `t_juyuwangjiaohuanji` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '局域网交换机id',`yitaiwangjiaohuanji` VARCHAR(255) DEFAULT NULL COMMENT '以太网交换机',`fddijiaohuanji` VARCHAR(255) DEFAULT NULL COMMENT 'FDDI交换机',`atmjiaohuanji` VARCHAR(255) DEFAULT NULL COMMENT 'ATM交换机',`lingpaihuanjiaohuanji` VARCHAR(255) DEFAULT NULL COMMENT '令牌环交换机',PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='局域网交换机';
添加局域网交换机模块:
在juyuwangjiaohuanjiController中定义tianjiajuyuwangjiaohuanjiact接收页面传入的局域网交换机参数,定义为juyuwangjiaohuanji。其中juyuwangjiaohuanji包含字段:以太网交换机,FDDI交换机,ATM交换机,令牌环交换机,使用tianjiajuyuwangjiaohuanjiact将该局域网交换机对象存入数据库中,在juyuwangjiaohuanjiMapper中定义了insert方法,匹配数据库中的insert into juyuwangjiaohuanji语句实现将局域网交换机数据存入数据库的操作。该部分核心代码如下:
通过juyuwangjiaohuanjidao的insert方法将页面传输的局域网交换机添加到数据库中 juyuwangjiaohuanjidao.insert(juyuwangjiaohuanji);
将添加局域网交换机成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "添加局域网交换机成功");
返回局域网交换机管理界面
return "forward:/tianjiajuyuwangjiaohuanji.action";
查询局域网交换机模块:
在后台中定义局域网交换机查询模块,在侧边栏中点击局域网交换机管理,可以跳转到局域网交换机管理界面。在该页面中通过juyuwangjiaohuanjiController中定义juyuwangjiaohuanjiguanli响应局域网交换机查询模块。在juyuwangjiaohuanjiguanli中查询出所有信息,返回页面进行循环展示。查询方法为juyuwangjiaohuanjidao中的selectByexample方法。该部分核心代码如下:
生成局域网交换机样例类,通过example定义查询条件 JuyuwangjiaohuanjiExample example = new JuyuwangjiaohuanjiExample();
通过juyuwangjiaohuanjidao的selectByExample方法查询出所有的局域网交换机信息 List juyuwangjiaohuanjiall = juyuwangjiaohuanjidao.selectByExample(example);
将局域网交换机信息,保存到request中,在页面通过foreach方法进行展示 request.setAttribute("juyuwangjiaohuanjiall", juyuwangjiaohuanjiall);
返回局域网交换机管理界面
return "forward:/juyuwangjiaohuanjiguanli.action";
修改局域网交换机模块:
在页面完成局域网交换机的修改信息填写后,将该部分数据传入xiugaijuyuwangjiaohuanji.action地址,并通过post进行提交。提交后在juyuwangjiaohuanjiController中通过xiugaijuyuwangjiaohuanji进行接收,将所有字段封装为一个局域网交换机实体。并将该实体传入juyuwangjiaohuanjidao中的updateByPrimaryKeySelective方法中,在该方法中定义了通过局域网交换机id更新其余局域网交换机的字段,该部分字段包括以太网交换机,FDDI交换机,ATM交换机,令牌环交换机,该部分核心代码如下所示:
通过juyuwangjiaohuanjidao的修改方法根据id修改对应的局域网交换机 juyuwangjiaohuanjidao.updateByPrimaryKeySelective(juyuwangjiaohuanji);
将修改局域网交换机成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "修改局域网交换机信息成功");
返回局域网交换机管理界面
return "forward:/juyuwangjiaohuanjiguanli.action";
删除局域网交换机模块:
在管理页面中,点击删除。页面将通过a标签的href属性,使用get方法将该局域网交换机
的id上传到服务器中,在服务器中通过juyuwangjiaohuanjiController类中的shanchujuyuwangjiaohuanji进行接收,之后调用juyuwangjiaohuanjiMapper中的deleteByPrimaryKey方法根据ID进行删除。将删除信息保存到request的message中,在页面给出用户删除成功的提示信息,该部分核心代码如下:
通过juyuwangjiaohuanjidao的删除方法根据id删除对应的局域网交换机 juyuwangjiaohuanjidao.deleteByPrimaryKey(id);
将删除局域网交换机成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "删除局域网交换机成功");
返回局域网交换机管理界面
return "forward:/juyuwangjiaohuanjiguanli.action";