基于B/S模式下的SSM智能卡网吧管理系统
每天记录学习,每天会有好心情。*^_^*
在学习智能卡网吧管理系统项目的时候,方便日后能及时查阅,在本平台中记录一下该项目的开发流程。在学习时候的选用了SSM(MYECLIPSE),这个框架不论是学习还是使用都非常方便,简单易上手。是我们学习编程可以重点学习的一个框架,我在开发智能卡网吧管理系统项目的时候选用了MYECLIPSE来搭建SSM(MYECLIPSE)框架,最终将智能卡网吧管理系统项目开发为了一个 后台项目。
该项目具有的用户角色包括了管理员,每个角色都含有自己的登录账号和密码。
上机时间的存在是为了能更好的结合系统的功能。会员表的联系在这张表中得以体现,其关联关系为上机时间的会员与会员的mingzi字段对应、上机时间的会员id与会员的id字段对应
。
总结得出该系统所有数据为:管理员(admin)、会员(huiyuan)、上机时间(shangjishijian)
管理员表
字段名 | 类型 | 属性 | 描述 id | INT(11) | PRIMARY KEY | 管理员id username | VARCHAR(255) | | 账号 password | VARCHAR(255) | | 密码
会员表
字段名 | 类型 | 属性 | 描述 id | INT(11) | PRIMARY KEY | 会员id mingzi | VARCHAR(255) | | 名字 username | VARCHAR(255) | | 账号 password | VARCHAR(255) | | 密码 kahao | VARCHAR(255) | | 卡号 yue | VARCHAR(255) | | 余额
上机时间表
字段名 | 类型 | 属性 | 描述 id | INT(11) | PRIMARY KEY | 上机时间id huiyuan | VARCHAR(255) | | 会员 huiyuanid | VARCHAR(255) | | 会员id shangjishijan | VARCHAR(255) | | 上机时间 xiajishijian | VARCHAR(255) | | 下机时间 xiaofeijine | VARCHAR(255) | | 消费金额
SET FOREIGN_KEY_CHECKS=0; -- ---------------------------- -- ---------------------------- -- Table structure for ggwangbaguanli -- ---------------------------- 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_huiyuan`; CREATE TABLE `t_huiyuan` (`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 '密码',`kahao` VARCHAR(255) DEFAULT NULL COMMENT '卡号',`yue` VARCHAR(255) DEFAULT NULL COMMENT '余额',PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='会员'; -- ---------------------------- DROP TABLE IF EXISTS `t_shangjishijian`; CREATE TABLE `t_shangjishijian` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '上机时间id',`huiyuan` VARCHAR(255) DEFAULT NULL COMMENT '会员',`huiyuanid` INT(11) DEFAULT NULL COMMENT '会员id',`shangjishijan` VARCHAR(255) DEFAULT NULL COMMENT '上机时间',`xiajishijian` VARCHAR(255) DEFAULT NULL COMMENT '下机时间',`xiaofeijine` VARCHAR(255) DEFAULT NULL COMMENT '消费金额',PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='上机时间';
添加上机时间模块:
系统中存在添加上机时间功能,通过点击添加上机时间可以跳转到该功能模块,在该功能模块中,填写对应的上机时间信息。上机时间包含信息会员,会员id,上机时间,下机时间,消费金额,填写完所有信息后,通过post方法将数据提交到tianjiashangjishijian.action中,该地址将在服务器中shangjishijianController类中的tianjiashangjishijianact方法中进行响应。响应结果为,获取所有的上机时间信息,封装一个shangjishijian类,使用shangjishijianController类中定义的shangjishijiandao的insert方法,将上机时间数据插入到数据库的shangjishijian表中。并给出用户提示信息,添加上机时间成功,将该信息保存到request的message中,该信息将在页面中进行展示。该部分核心代码如下:
通过shangjishijiandao的insert方法将页面传输的上机时间添加到数据库中 shangjishijiandao.insert(shangjishijian);
将添加上机时间成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "添加上机时间成功");
返回上机时间管理界面
return "forward:/tianjiashangjishijian.action";
查询上机时间模块:
在后台shangjishijianguanli方法中,通过selectByexample方法获取所有的数据信息。将其保存到request中,在页面中通过foreach方法
进行循环展示到table中。完成上机时间查询操作。具体代码如下:
生成上机时间样例类,通过example定义查询条件 ShangjishijianExample example = new ShangjishijianExample();
通过shangjishijiandao的selectByExample方法查询出所有的上机时间信息 List shangjishijianall = shangjishijiandao.selectByExample(example);
将上机时间信息,保存到request中,在页面通过foreach方法进行展示 request.setAttribute("shangjishijianall", shangjishijianall);
返回上机时间管理界面
return "forward:/shangjishijianguanli.action";
修改上机时间模块:
在页面填写完修改信息后,点击修改按钮,将数据提交到xiugaishangjishijian中,封装为一个上机时间
,使用update方法修改该上机时间信息,将数据同步到数据库,完成修改操作。
定义修改成功提示信息,修改上机时间成功,并保存到request中具体代码如下:
通过shangjishijiandao的修改方法根据id修改对应的上机时间 shangjishijiandao.updateByPrimaryKeySelective(shangjishijian);
将修改上机时间成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "修改上机时间信息成功");
返回上机时间管理界面
return "forward:/shangjishijianguanli.action";
删除上机时间模块:
删除上机时间功能实现在shangjishijianController中,实现方法为shanchushangjishijian。在页面中通过get方法shanchushangjishijian.action?Id的形式将需要删除的上机时间id上传到服务器中,响应对应的方法,调用shangjishijiandao中的deleteByPrimaryKey方法,完成删除操作。将删除成功的提示信息返回到页面中,完成删除数据的操作。该部分核心代码:
通过shangjishijiandao的删除方法根据id删除对应的上机时间 shangjishijiandao.deleteByPrimaryKey(id);
将删除上机时间成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "删除上机时间成功");
返回上机时间管理界面
return "forward:/shangjishijianguanli.action";