今日思考,完成一个基于web的班级风采网站的设计项目,需要实现哪些功能?
此类项目常见描述如下:
以“智慧化、网络化、智能化”作为主要特点的现代信息化技术已经涉及普通民众日常生活的方方面面。高等院校作为重要培养基地已经经过若干年的高校信息化建设工作。校园信息化建设工作是具体化复杂工程。根据校园数字化现状,为了提高高校相关职能部门工作效率,同时也更好地为教学科研服务,目前相对独立地存在各种信息系统。本文主要是基于Web技术同时以B/S模式为架构的关于校园智能化系统的设计和研究,首先介绍Web技术的特点和应用,并重点介绍系统访问模式的B/S架构,从而对基于B/S架构及J2EE框架下Web项目进行分析和研究工作。
SSM(MYECLIPSE)框架及其适合本类项目,使用MVC的思想可以极大程度减少重复工作量。和SSM(MYECLIPSE)框架最配的开发工具是MYECLIPSE。MYECLIPSE集成了大量插件,可以更好的使用SSM(MYECLIPSE)进行项目的开发,使得项目开发时事半功倍。
通过对基于web的班级风采网站的设计系统的仔细分析,可以得出基于web的班级风采网站的设计系统是一个 后台项目。
在这样一个项目中,系统的登录角色是必不可少的,对每个登录角色设置账号、密码。以确保系统可以正常登录使用。SSM(MYECLIPSE)项目中包含的登录角色有管理员、用户。
总结得出该系统所有数据为:管理员(admin)、用户(yonghu)、班级组成(banjizucheng)、班级活动(banjihuodong)
管理员表
字段名 | 类型 | 属性 | 描述 id | INT(11) | PRIMARY KEY | 管理员id username | VARCHAR(255) | | 账号 password | VARCHAR(255) | | 密码
用户表
字段名 | 类型 | 属性 | 描述 id | INT(11) | PRIMARY KEY | 用户id xingming | VARCHAR(255) | | 姓名 nianling | VARCHAR(255) | | 年龄 xingbie | VARCHAR(255) | | 性别 banji | VARCHAR(255) | | 班级 quanxian | VARCHAR(255) | | 权限 username | VARCHAR(255) | | 账号 password | VARCHAR(255) | | 密码
班级组成表
字段名 | 类型 | 属性 | 描述 id | INT(11) | PRIMARY KEY | 班级组成id laoshi | VARCHAR(255) | | 老师 xuesheng | VARCHAR(255) | | 学生 banzhuren | VARCHAR(255) | | 班主任
班级活动表
字段名 | 类型 | 属性 | 描述 id | INT(11) | PRIMARY KEY | 班级活动id huodongxiangmu | VARCHAR(255) | | 活动项目 huodongliuying | VARCHAR(255) | | 活动留影 ganrenshike | VARCHAR(255) | | 感人时刻
SET FOREIGN_KEY_CHECKS=0; -- ---------------------------- -- ---------------------------- -- Table structure for ggjuwebdbjfcwzdsj -- ---------------------------- 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 ‘姓名‘,`nianling` VARCHAR(255) DEFAULT NULL COMMENT ‘年龄‘,`xingbie` VARCHAR(255) DEFAULT NULL COMMENT ‘性别‘,`banji` 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_banjizucheng`; CREATE TABLE `t_banjizucheng` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT ‘班级组成id‘,`laoshi` VARCHAR(255) DEFAULT NULL COMMENT ‘老师‘,`xuesheng` VARCHAR(255) DEFAULT NULL COMMENT ‘学生‘,`banzhuren` VARCHAR(255) DEFAULT NULL COMMENT ‘班主任‘,PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT=‘班级组成‘; -- ---------------------------- DROP TABLE IF EXISTS `t_banjihuodong`; CREATE TABLE `t_banjihuodong` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT ‘班级活动id‘,`huodongxiangmu` VARCHAR(255) DEFAULT NULL COMMENT ‘活动项目‘,`huodongliuying` VARCHAR(255) DEFAULT NULL COMMENT ‘活动留影‘,`ganrenshike` VARCHAR(255) DEFAULT NULL COMMENT ‘感人时刻‘,PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT=‘班级活动‘;
添加班级组成模块:
系统中存在添加班级组成功能,通过点击添加班级组成可以跳转到该功能模块,在该功能模块中,填写对应的班级组成信息。班级组成包含信息老师,学生,班主任,填写完所有信息后,通过post方法将数据提交到tianjiabanjizucheng.action中,该地址将在服务器中banjizuchengController类中的tianjiabanjizuchengact方法中进行响应。响应结果为,获取所有的班级组成信息,封装一个banjizucheng类,使用banjizuchengController类中定义的banjizuchengdao的insert方法,将班级组成数据插入到数据库的banjizucheng表中。并给出用户提示信息,添加班级组成成功,将该信息保存到request的message中,该信息将在页面中进行展示。该部分核心代码如下:
通过banjizuchengdao的insert方法将页面传输的班级组成添加到数据库中 banjizuchengdao.insert(banjizucheng);
将添加班级组成成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "添加班级组成成功");
返回班级组成管理界面
return "forward:/tianjiabanjizucheng.action";
查询班级组成模块:
班级组成的查询模块实现方式为,在页面中发起banjizuchengguanli.action请求。通过该请求,响应服务器banjizuchengController类中的banjizuchengguanli,在该方法中通过selectByexample进行数据的查询操作。将所有的班级组成信息查询后,保存到request中的banjizuchengall中,在页面中进行展示,返回banjizuchengguanli.jsp,该部分核心代码如下所示:
生成班级组成样例类,通过example定义查询条件 BanjizuchengExample example = new BanjizuchengExample();
通过banjizuchengdao的selectByExample方法查询出所有的班级组成信息 List banjizuchengall = banjizuchengdao.selectByExample(example);
将班级组成信息,保存到request中,在页面通过foreach方法进行展示 request.setAttribute("banjizuchengall", banjizuchengall);
返回班级组成管理界面
return "forward:/banjizuchengguanli.action";
修改班级组成模块:
在页面完成班级组成的修改信息填写后,将该部分数据传入xiugaibanjizucheng.action地址,并通过post进行提交。提交后在banjizuchengController中通过xiugaibanjizucheng进行接收,将所有字段封装为一个班级组成实体。并将该实体传入banjizuchengdao中的updateByPrimaryKeySelective方法中,在该方法中定义了通过班级组成id更新其余班级组成的字段,该部分字段包括老师,学生,班主任,该部分核心代码如下所示:
通过banjizuchengdao的修改方法根据id修改对应的班级组成 banjizuchengdao.updateByPrimaryKeySelective(banjizucheng);
将修改班级组成成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "修改班级组成信息成功");
返回班级组成管理界面
return "forward:/banjizuchengguanli.action";
删除班级组成模块:
删除班级组成功能实现在banjizuchengController中,实现方法为shanchubanjizucheng。在页面中通过get方法shanchubanjizucheng.action?Id的形式将需要删除的班级组成id上传到服务器中,响应对应的方法,调用banjizuchengdao中的deleteByPrimaryKey方法,完成删除操作。将删除成功的提示信息返回到页面中,完成删除数据的操作。该部分核心代码:
通过banjizuchengdao的删除方法根据id删除对应的班级组成 banjizuchengdao.deleteByPrimaryKey(id);
将删除班级组成成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "删除班级组成成功");
返回班级组成管理界面
return "forward:/banjizuchengguanli.action";