每天记录学习,每天会有好心情。*^_^*
今天将为大家分析一个网络硬盘管理系统(随着互联网技术的飞速发展和信息化建设的重视,越来越多的信息都以电子化、网络化的形式而存在。作为日常生活中数据涉及的沟通与存储工作,网络电子文档其价值正在日益提升。本文将要研究解决的问题是面对如此庞大的网络文件,在现有的软硬件技术,如何能高效、方便地对它们进行科学的管理起来。本文根据网络硬盘管理系统的发展现状,深入研究,以网络文件管理为核心,采用JAVA技术,My SQL数据库操作,Java Script进行处理,Ajax与Web Service技术帮助,以B/S模式作为前提,在PHP处理技术的支持下成功获得的一种全新网络硬盘程序。这一程序以完善的Web操作平台为依托,符合操作者需要的全部功能,能够适应Web形式下的基本操作要求,发展空间十分巨大,重点表现在如下几个层面:一,前端样式以j Query结构为基础进行处理,富有表现力;服务器端口以PHP处理技术为基础,可以适应各种环境下的运行;前后端以XML、HTML两种形式作为信息载体,按照HTTP的要求完成信息的交流。二,针对该程序安全标准,可以通过操作者认证、权利范围、文档保存形式等多个方面上提升自我保护能力。三,采取JAVA操作模式满足虚拟硬盘的功能,并具备回收站保存用户删除的文件或文件夹。),该项目使用框架为SSM(MYECLIPSE),选用开发工具为MYECLIPSE。网络硬盘管理系统为一个 后台项目。
为了完成该系统,我们首先需要对该系统进行需求分析。一个网络硬盘管理系统应包含用户角色有管理员。为了能让用户顺利登陆系统完成相关操作,需要为每种登陆角色设置账户和密码字段。
总结得出该系统所有数据为:管理员(admin)、音频(yinpin)、视频(shipin)、图文(tuwen)
管理员表
字段名 | 类型 | 属性 |描述
id| INT(11) | PRIMARY KEY |管理员id
username| VARCHAR(255) | |账号
password| VARCHAR(255) | | 密码
音频表
字段名 | 类型 | 属性 |描述
id| INT(11) | PRIMARY KEY |音频id
mingcheng| VARCHAR(255) | |名称
jieshao| VARCHAR(255) | |介绍
wenjian| VARCHAR(255) | |文件
shangchuanriqi| VARCHAR(255) | | 上传日期
视频表
字段名 | 类型 | 属性 |描述
id| INT(11) | PRIMARY KEY |视频id
mingcheng| VARCHAR(255) | |名称
jieshao| VARCHAR(255) | |介绍
wenjian| VARCHAR(255) | |文件
shangchuanriqi| VARCHAR(255) | | 上传日期
图文表
字段名 | 类型 | 属性 |描述
id| INT(11) | PRIMARY KEY |图文id
biaoti| VARCHAR(255) | |标题
neirong| VARCHAR(255) | |内容
fengmian| VARCHAR(255) | |封面
shangchuanshijian| VARCHAR(255) | | 上传时间
SET FOREIGN_KEY_CHECKS=0;------------------------------
------------------------------
--Table structure for ggwangluoyinpan
------------------------------
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_yinpin`;CREATE TABLE `t_yinpin` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '音频id',`mingcheng` VARCHAR(255) DEFAULT NULL COMMENT '名称',`jieshao` VARCHAR(255) DEFAULT NULL COMMENT '介绍',`wenjian` VARCHAR(255) DEFAULT NULL COMMENT '文件',`shangchuanriqi` VARCHAR(255) DEFAULT NULL COMMENT '上传日期',PRIMARY KEY(`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='音频';------------------------------
DROP TABLE IF EXISTS`t_shipin`;CREATE TABLE `t_shipin` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '视频id',`mingcheng` VARCHAR(255) DEFAULT NULL COMMENT '名称',`jieshao` VARCHAR(255) DEFAULT NULL COMMENT '介绍',`wenjian` VARCHAR(255) DEFAULT NULL COMMENT '文件',`shangchuanriqi` VARCHAR(255) DEFAULT NULL COMMENT '上传日期',PRIMARY KEY(`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='视频';------------------------------
DROP TABLE IF EXISTS`t_tuwen`;CREATE TABLE `t_tuwen` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '图文id',`biaoti` VARCHAR(255) DEFAULT NULL COMMENT '标题',`neirong` VARCHAR(255) DEFAULT NULL COMMENT '内容',`fengmian` VARCHAR(255) DEFAULT NULL COMMENT '封面',`shangchuanshijian` VARCHAR(255) DEFAULT NULL COMMENT '上传时间',PRIMARY KEY(`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='图文';
添加音频模块:
系统中存在添加音频功能,通过点击添加音频可以跳转到该功能模块,在该功能模块中,填写对应的音频信息。音频包含信息名称,介绍,文件,上传日期,填写完所有信息后,通过post方法将数据提交到tianjiayinpin.action中,该地址将在服务器中yinpinController类中的tianjiayinpinact方法中进行响应。响应结果为,获取所有的音频信息,封装一个yinpin类,使用yinpinController类中定义的yinpindao的insert方法,将音频数据插入到数据库的yinpin表中。并给出用户提示信息,添加音频成功,将该信息保存到request的message中,该信息将在页面中进行展示。该部分核心代码如下:
通过yinpindao的insert方法将页面传输的音频添加到数据库中 yinpindao.insert(yinpin);
将添加音频成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "添加音频成功");
返回音频管理界面
return "forward:/tianjiayinpin.action";
查询音频模块:
在后台yinpinguanli方法中,通过selectByexample方法获取所有的数据信息。将其保存到request中,在页面中通过foreach方法
进行循环展示到table中。完成音频查询操作。具体代码如下:
生成音频样例类,通过example定义查询条件 YinpinExample example = new YinpinExample();
通过yinpindao的selectByExample方法查询出所有的音频信息 List yinpinall = yinpindao.selectByExample(example);
将音频信息,保存到request中,在页面通过foreach方法进行展示 request.setAttribute("yinpinall", yinpinall);
返回音频管理界面
return "forward:/yinpinguanli.action";
修改音频模块:
点击修改按钮,可以跳转到音频修改页面。在音频修改页面中,将初始化该音频的所有信息,并将信息一一对应填充到对应编辑栏中。编辑完音频信息后,页面通过post方法将数据封装为一个音频实体,传入到yinpinController中。在xiugaiyinpin中进行接收,接收完毕后,调用yinpinMapper中的updateByPrimaryKeySelective方法进行修改。该部分代码如下:
通过yinpindao的修改方法根据id修改对应的音频 yinpindao.updateByPrimaryKeySelective(yinpin);
将修改音频成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "修改音频信息成功");
返回音频管理界面
return "forward:/yinpinguanli.action";
删除音频模块:
删除音频功能实现在yinpinController中,实现方法为shanchuyinpin。在页面中通过get方法shanchuyinpin.action?Id的形式将需要删除的音频id上传到服务器中,响应对应的方法,调用yinpindao中的deleteByPrimaryKey方法,完成删除操作。将删除成功的提示信息返回到页面中,完成删除数据的操作。该部分核心代码:
通过yinpindao的删除方法根据id删除对应的音频 yinpindao.deleteByPrimaryKey(id);
将删除音频成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "删除音频成功");
返回音频管理界面
return "forward:/yinpinguanli.action";