天天記錄學習,天天會有好心情。*^_^*html
今天將爲你們分析一個網絡硬盤管理系統(隨着互聯網技術的飛速發展和信息化建設的重視,愈來愈多的信息都以電子化、網絡化的形式而存在。做爲平常生活中數據涉及的溝通與存儲工做,網絡電子文檔其價值正在日益提高。本文將要研究解決的問題是面對如此龐大的網絡文件,在現有的軟硬件技術,如何能高效、方便地對它們進行科學的管理起來。本文根據網絡硬盤管理系統的發展示狀,深刻研究,以網絡文件管理爲核心,採用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)sql
管理員表數據庫
字段名 | 類型 | 屬性 | 描述 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中,該信息將在頁面中進行展現。該部分核心代碼以下:app
經過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";