今日思考,完成一个体育场地预约系统项目,需要实现哪些功能?
此类项目常见描述如下:
首先介绍体育场馆预订业务的必要性,然后对系统进行需求和系统架构分析,并对系统功能模块进行阐述,之后展示数据库表和数据关系图,最后表述系统实现的关键技术。
SSM(MYECLIPSE)框架及其适合本类项目,使用MVC的思想可以极大程度减少重复工作量。和SSM(MYECLIPSE)框架最配的开发工具是MYECLIPSE。MYECLIPSE集成了大量插件,可以更好的使用SSM(MYECLIPSE)进行项目的开发,使得项目开发时事半功倍。
通过对体育场地预约系统系统的仔细分析,可以得出体育场地预约系统系统是一个 后台项目。
在这样一个项目中,系统的登录角色是必不可少的,对每个登录角色设置账号、密码。以确保系统可以正常登录使用。SSM(MYECLIPSE)项目中包含的登录角色有管理员、用户。

总结得出该系统所有数据为:管理员(admin)、用户(yonghu)、场地种类(changdizhonglei)、预约管理(yuyueguanli)

管理员表

字段名 | 类型 | 属性 | 描述
id | INT(11) | PRIMARY KEY | 管理员id
username | VARCHAR(255) | | 账号
password | VARCHAR(255) | | 密码

 

用户表

字段名 | 类型 | 属性 | 描述
id | INT(11) | PRIMARY KEY | 用户id
xingming | VARCHAR(255) | | 姓名
xingbie | VARCHAR(255) | | 性别
zhiwu | VARCHAR(255) | | 职务
quanxian | VARCHAR(255) | | 权限
username | VARCHAR(255) | | 账号
password | VARCHAR(255) | | 密码

 

场地种类表

字段名 | 类型 | 属性 | 描述
id | INT(11) | PRIMARY KEY | 场地种类id
mingcheng | VARCHAR(255) | | 名称
leixing | VARCHAR(255) | | 类型
guige | VARCHAR(255) | | 规格
fuzeren | VARCHAR(255) | | 负责人

 

预约管理表

字段名 | 类型 | 属性 | 描述
id | INT(11) | PRIMARY KEY | 预约管理id
shijian | VARCHAR(255) | | 时间
yuyueren | VARCHAR(255) | | 预约人
lianxifangshi | VARCHAR(255) | | 联系方式

 

 

SET FOREIGN_KEY_CHECKS=0;

-- ----------------------------

-- ----------------------------

-- Table structure for ggtiyuchangdiyuyuext

-- ----------------------------

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 \'性别\',`zhiwu` 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_changdizhonglei`;

CREATE TABLE `t_changdizhonglei` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT \'场地种类id\',`mingcheng` VARCHAR(255) DEFAULT NULL COMMENT \'名称\',`leixing` VARCHAR(255) DEFAULT NULL COMMENT \'类型\',`guige` VARCHAR(255) DEFAULT NULL COMMENT \'规格\',`fuzeren` VARCHAR(255) DEFAULT NULL COMMENT \'负责人\',PRIMARY KEY (`id`)

) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT=\'场地种类\';

-- ----------------------------

DROP TABLE IF EXISTS `t_yuyueguanli`;

CREATE TABLE `t_yuyueguanli` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT \'预约管理id\',`shijian` VARCHAR(255) DEFAULT NULL COMMENT \'时间\',`yuyueren` VARCHAR(255) DEFAULT NULL COMMENT \'预约人\',`lianxifangshi` VARCHAR(255) DEFAULT NULL COMMENT \'联系方式\',PRIMARY KEY (`id`)

) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT=\'预约管理\';

 

 

添加场地种类模块:

通过添加场地种类模块,可以完成场地种类的添加操作。在页面中跳转到添加场地种类页面,输入场地种类的所有信息,点击添加操作,可以将场地种类数据以post提交到changdizhongleiController中。场地种类所包含的字段信息包括名称,类型,规格,负责人。在changdizhongleiController中通过定义changdizhonglei接受所有的场地种类参数。使用changdizhongleidao的insert方法将changdizhonglei实体插入到数据库中。完成数据的添加操作,在changdizhongleiMapper中匹配对应的changdizhongleixml完成插入sql语句的执行操作。该部分核心代码如下:

通过changdizhongleidao的insert方法将页面传输的场地种类添加到数据库中 changdizhongleidao.insert(changdizhonglei);

将添加场地种类成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute(“message”, “添加场地种类成功”);

返回场地种类管理界面

return “forward:/tianjiachangdizhonglei.action”;

查询场地种类模块:

场地种类的查询模块实现方式为,在页面中发起changdizhongleiguanli.action请求。通过该请求,响应服务器changdizhongleiController类中的changdizhongleiguanli,在该方法中通过selectByexample进行数据的查询操作。将所有的场地种类信息查询后,保存到request中的changdizhongleiall中,在页面中进行展示,返回changdizhongleiguanli.jsp,该部分核心代码如下所示:

生成场地种类样例类,通过example定义查询条件 ChangdizhongleiExample example = new ChangdizhongleiExample();

通过changdizhongleidao的selectByExample方法查询出所有的场地种类信息 List changdizhongleiall = changdizhongleidao.selectByExample(example);

将场地种类信息,保存到request中,在页面通过foreach方法进行展示 request.setAttribute(“changdizhongleiall”, changdizhongleiall);

返回场地种类管理界面

return “forward:/changdizhongleiguanli.action”;

修改场地种类模块:

点击修改按钮,可以跳转到场地种类修改页面。在场地种类修改页面中,将初始化该场地种类的所有信息,并将信息一一对应填充到对应编辑栏中。编辑完场地种类信息后,页面通过post方法将数据封装为一个场地种类实体,传入到changdizhongleiController中。在xiugaichangdizhonglei中进行接收,接收完毕后,调用changdizhongleiMapper中的updateByPrimaryKeySelective方法进行修改。该部分代码如下:

通过changdizhongleidao的修改方法根据id修改对应的场地种类 changdizhongleidao.updateByPrimaryKeySelective(changdizhonglei);

将修改场地种类成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute(“message”, “修改场地种类信息成功”);

返回场地种类管理界面

return “forward:/changdizhongleiguanli.action”;

删除场地种类模块:

在页面中通过a标签,shanchuchangdizhonglei?id=将id传入到后台中,通过shanchuchangdizhonglei接收场地种类id。使用deleteByid的方法

删除该场地种类,完成删除操作。定义删除成功提示信息,删除场地种类成功,并保存到request中,该部分代码如下:

通过changdizhongleidao的删除方法根据id删除对应的场地种类 changdizhongleidao.deleteByPrimaryKey(id);

将删除场地种类成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute(“message”, “删除场地种类成功”);

返回场地种类管理界面

return “forward:/changdizhongleiguanli.action”;

版权声明:本文为mlxbc原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/mlxbc/p/11599449.html