web学生选课平台
每天记录学习,每天会有好心情。*^_^*
在学习基于web的学生选课平台项目的时候,方便日后能及时查阅,在本平台中记录一下基于web的学生选课平台的开发流程。在学习时候的选用了SSM(MYECLIPSE),这个框架不论是学习还是使用都非常方便,简单易上手。
基于web的学生选课平台项目具有的用户角色包括了管理员、用户,每个角色都含有自己的登录账号和密码。
总结得出基于web的学生选课平台项目所有数据为:管理员(admin)、用户(yonghu)、课程(kecheng)、公告栏(gonggaolan)
基于web的学生选课平台之管理员表
字段名 | 类型 | 属性 | 描述 id | INT(11) | PRIMARY KEY | 管理员id username | VARCHAR(255) | | 账号 password | VARCHAR(255) | | 密码 quanxian | VARCHAR(255) | | 权限
基于web的学生选课平台之用户表
字段名 | 类型 | 属性 | 描述 id | INT(11) | PRIMARY KEY | 用户id xingming | VARCHAR(255) | | 姓名 nianling | VARCHAR(255) | | 年龄 nianji | VARCHAR(255) | | 年级 xingbie | VARCHAR(255) | | 性别 username | VARCHAR(255) | | 账号 password | VARCHAR(255) | | 密码
基于web的学生选课平台之课程表
字段名 | 类型 | 属性 | 描述 id | INT(11) | PRIMARY KEY | 课程id shangkeshijian | VARCHAR(255) | | 上课时间 xiakeshijian | VARCHAR(255) | | 下课时间 laoshixingming | VARCHAR(255) | | 老师姓名 mingzi | VARCHAR(255) | | 名字 zhiwu | VARCHAR(255) | | 职务 zhonglei | VARCHAR(255) | | 种类
基于web的学生选课平台之公告栏表
字段名 | 类型 | 属性 | 描述 id | INT(11) | PRIMARY KEY | 公告栏id shijian | VARCHAR(255) | | 时间 neirong | VARCHAR(255) | | 内容 zhuyishixiang | VARCHAR(255) | | 注意事项
SET FOREIGN_KEY_CHECKS=0; -- ---------------------------- -- ---------------------------- -- Table structure for ggjywebdxsxkpt -- ---------------------------- 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 '密码',`quanxian` 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 '年龄',`nianji` 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_kecheng`; CREATE TABLE `t_kecheng` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '课程id',`shangkeshijian` VARCHAR(255) DEFAULT NULL COMMENT '上课时间',`xiakeshijian` VARCHAR(255) DEFAULT NULL COMMENT '下课时间',`laoshixingming` VARCHAR(255) DEFAULT NULL COMMENT '老师姓名',`mingzi` VARCHAR(255) DEFAULT NULL COMMENT '名字',`zhiwu` VARCHAR(255) DEFAULT NULL COMMENT '职务',`zhonglei` VARCHAR(255) DEFAULT NULL COMMENT '种类',PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='课程'; -- ---------------------------- DROP TABLE IF EXISTS `t_gonggaolan`; CREATE TABLE `t_gonggaolan` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '公告栏id',`shijian` VARCHAR(255) DEFAULT NULL COMMENT '时间',`neirong` VARCHAR(255) DEFAULT NULL COMMENT '内容',`zhuyishixiang` VARCHAR(255) DEFAULT NULL COMMENT '注意事项',PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='公告栏';
添加课程模块:
从页面中通过post方法,将课程信息传入到后台服务器中,在tianjiakechengact
中接收,字段包括上课时间,下课时间,老师姓名,名字,职务,种类使用insert方法添加数据,将数据同步到
数据库中,完成添加操作。定义添加成功提示信息,添加课程成功,并保存到request中具体代码如下:
通过kechengdao的insert方法将页面传输的课程添加到数据库中 kechengdao.insert(kecheng);
将添加课程成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "添加课程成功");
返回课程管理界面
return "forward:/tianjiakecheng.action";
查询课程模块:
在后台kechengguanli方法中,通过selectByexample方法获取所有的数据信息。将其保存到request中,在页面中通过foreach方法
进行循环展示到table中。完成课程查询操作。具体代码如下:
生成课程样例类,通过example定义查询条件 KechengExample example = new KechengExample();
通过kechengdao的selectByExample方法查询出所有的课程信息 List kechengall = kechengdao.selectByExample(example);
将课程信息,保存到request中,在页面通过foreach方法进行展示 request.setAttribute("kechengall", kechengall);
返回课程管理界面
return "forward:/kechengguanli.action";
修改课程模块:
在页面完成课程的修改信息填写后,将该部分数据传入xiugaikecheng.action地址,并通过post进行提交。提交后在kechengController中通过xiugaikecheng进行接收,将所有字段封装为一个课程实体。并将该实体传入kechengdao中的updateByPrimaryKeySelective方法中,在该方法中定义了通过课程id更新其余课程的字段,该部分字段包括上课时间,下课时间,老师姓名,名字,职务,种类,该部分核心代码如下所示:
通过kechengdao的修改方法根据id修改对应的课程 kechengdao.updateByPrimaryKeySelective(kecheng);
将修改课程成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "修改课程信息成功");
返回课程管理界面
return "forward:/kechengguanli.action";
删除课程模块:
在管理页面中,点击删除。页面将通过a标签的href属性,使用get方法将该课程
的id上传到服务器中,在服务器中通过kechengController类中的shanchukecheng进行接收,之后调用kechengMapper中的deleteByPrimaryKey方法根据ID进行删除。将删除信息保存到request的message中,在页面给出用户删除成功的提示信息,该部分核心代码如下:
通过kechengdao的删除方法根据id删除对应的课程 kechengdao.deleteByPrimaryKey(id);
将删除课程成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "删除课程成功");
返回课程管理界面
return "forward:/kechengguanli.action";