每天记录学习,每天会有好心情。*^_^*
最近了解了企业公告及资料发布系统项目,在这个平台记录一下这个企业公告及资料发布系统项目,方便以后再次使用或学习的时候能够及时的翻阅。在完成这个项目的时候,考虑了很多框架。最终决定选用SSM(MYECLIPSE),该框架具有极强的移植性,多平台性,便于操作性等优点。此框架能在MYECLIPSE开发工具中完美的编写和运行,企业公告及资料发布系统为一个 后台项目。这个项目的描述是这样的:资料管理工作是现阶段企业管理中较为重要的一环,它的工作流程较为繁琐,给企业管理工作带来不便。而单纯的人工管理方式已经不能完全适应形式发展的具体要求。 目前,在高校中,每位教师都拥有一部分电子文档、纸质书籍等各种形式的资料,这些资料涵盖了教学应用、系统开发、学生指导等多个方面。如果没有资料管理系统,那么所有的授课资料都需要教师自己搜集、整理和制作,这样不仅占用了大量的教学时间,而且由于所有教师都是个人,自己的教学资源都基本上只能限于自己或者几个人使用。若把大部分教师所拥有的资料进行共享,采用一种专门的管理系统进行有针对性的管理维护,由系统管理员进行整理、优化。这样实现了教学资源的共享,避免了重复劳动和重复建设,增进了教学效率,对高校的教学科研工作也有较大的帮助。 企业资料信息系统采用B/S结构,利用MVC模式,使用了Struts、Hibernate、Spring等优秀框架,是一套便于管理又易于操作的管理系统。
在对企业公告及资料发布系统项目进行需求分析的时候,得出系统的登录角色包括了管理员。对应用户可以通过登录自己的账号,进行入系统。系统对不同角色拥有不同权限。
总结得出该系统所有数据为:管理员(admin)、公告(gonggao)、资料(ziliao)
管理员表
字段名 | 类型 | 属性 | 描述 id | INT(11) | PRIMARY KEY | 管理员id username | VARCHAR(255) | | 账号 password | VARCHAR(255) | | 密码
公告表
字段名 | 类型 | 属性 | 描述 id | INT(11) | PRIMARY KEY | 公告id biaoti | VARCHAR(255) | | 标题 neirong | VARCHAR(255) | | 内容 fabushijian | VARCHAR(255) | | 发布时间
资料表
字段名 | 类型 | 属性 | 描述 id | INT(11) | PRIMARY KEY | 资料id mingcheng | VARCHAR(255) | | 名称 wenjian | VARCHAR(255) | | 文件 shangchuanshijian | VARCHAR(255) | | 上传时间
SET FOREIGN_KEY_CHECKS=0; -- ---------------------------- -- ---------------------------- -- Table structure for ggqiyegonggaoziliao -- ---------------------------- 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_gonggao`; CREATE TABLE `t_gonggao` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT ‘公告id‘,`biaoti` VARCHAR(255) DEFAULT NULL COMMENT ‘标题‘,`neirong` VARCHAR(255) DEFAULT NULL COMMENT ‘内容‘,`fabushijian` VARCHAR(255) DEFAULT NULL COMMENT ‘发布时间‘,PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT=‘公告‘; -- ---------------------------- DROP TABLE IF EXISTS `t_ziliao`; CREATE TABLE `t_ziliao` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT ‘资料id‘,`mingcheng` VARCHAR(255) DEFAULT NULL COMMENT ‘名称‘,`wenjian` VARCHAR(255) DEFAULT NULL COMMENT ‘文件‘,`shangchuanshijian` VARCHAR(5000) DEFAULT NULL COMMENT ‘上传时间‘,PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT=‘资料‘;
添加资料模块:
系统中存在添加资料功能,通过点击添加资料可以跳转到该功能模块,在该功能模块中,填写对应的资料信息。资料包含信息名称,文件,上传时间,填写完所有信息后,通过post方法将数据提交到tianjiaziliao.action中,该地址将在服务器中ziliaoController类中的tianjiaziliaoact方法中进行响应。响应结果为,获取所有的资料信息,封装一个ziliao类,使用ziliaoController类中定义的ziliaodao的insert方法,将资料数据插入到数据库的ziliao表中。并给出用户提示信息,添加资料成功,将该信息保存到request的message中,该信息将在页面中进行展示。该部分核心代码如下:
通过ziliaodao的insert方法将页面传输的资料添加到数据库中 ziliaodao.insert(ziliao);
将添加资料成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "添加资料成功");
返回资料管理界面
return "forward:/tianjiaziliao.action";
查询资料模块:
在浏览器中进入资料查询页面时,此时浏览器的地址栏为ziliaoguanli.action,该地址将响应ziliaoController类中的ziliaoguanli,在该方法中,通过selectByexample方法获取所有的资料信息,并将该信息保存到request中,在页面进行循环展示。该部分核心代码如下:
生成资料样例类,通过example定义查询条件 ZiliaoExample example = new ZiliaoExample();
通过ziliaodao的selectByExample方法查询出所有的资料信息 List ziliaoall = ziliaodao.selectByExample(example);
将资料信息,保存到request中,在页面通过foreach方法进行展示 request.setAttribute("ziliaoall", ziliaoall);
返回资料管理界面
return "forward:/ziliaoguanli.action";
修改资料模块:
对已经上传的资料信息可以进行修改操作,该部分操作在资料管理界面中点击修改按钮可以跳转到资料修改页面。在修改页面中,将初始化所有的资料字段信息,字段信息包括名称,文件,上传时间。字段信息内容通过资料id获取。修改后的信息传入到ziliaoController中接收为ziliao。在ziliaoController中包含有提前定义好的ziliaodao,该参数为ziliaoMapper是实现。ziliaoMapper中定义了修改方法,此处使用修改方法为updateByPrimaryKeySelective,该方法可以将修改后信息同步到数据库中,最终将修改成功信息返回页面中。该部分代码如下:
通过ziliaodao的修改方法根据id修改对应的资料 ziliaodao.updateByPrimaryKeySelective(ziliao);
将修改资料成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "修改资料信息成功");
返回资料管理界面
return "forward:/ziliaoguanli.action";
删除资料模块:
删除资料功能实现在ziliaoController中,实现方法为shanchuziliao。在页面中通过get方法shanchuziliao.action?Id的形式将需要删除的资料id上传到服务器中,响应对应的方法,调用ziliaodao中的deleteByPrimaryKey方法,完成删除操作。将删除成功的提示信息返回到页面中,完成删除数据的操作。该部分核心代码:
通过ziliaodao的删除方法根据id删除对应的资料 ziliaodao.deleteByPrimaryKey(id);
将删除资料成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "删除资料成功");
返回资料管理界面
return "forward:/ziliaoguanli.action";
原文地址:https://www.cnblogs.com/mlxbc/p/11580937.html