新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 投稿與審稿系統的設計與實現

        投稿與審稿系統的設計與實現

        作者: 時間:2011-12-09 來源:網絡 收藏

        3.3
        3.3.1 模塊

         (1)填寫稿件信息
         作者角色填寫稿件信息:作者在表示層頁面Modify.JSP中填寫稿件信息,點擊提交按鈕時,頁面信息通過form表單發送給控制層,控制層ModifyAction收到作者的請求,調用業務邏輯層處理邏輯Modify方法,業務層處理邏輯調用持久層update方法訪問領域對象層的數據對象。數據對象與數據庫中的數據對應,處理數據對象就相當于處理數據庫中的數據。圖4為作者填寫稿件信息的邏輯時序圖。

        部分代碼如下:
        ModifyAction調用業務層邏輯方法的代碼為:
        public String modify()
        {
        cf.modify(c);
        return Action.SUCCESS;
        }
        操作數據表的業務層接口代碼: public void modify (Caogao c);
        操作數據表業務邏輯層方法modify代碼:public void modify (Caogao c) {
        cd.update(c);
        }
        操作數據表的持久層接口代碼:public Caogao update(Caogao entity);
        操作數據表持久層方法update代碼:
        public Caogao update(Caogao entity) {
            EntityManagerHelper.beginTransaction();
             try {
        Caogao result = getEntityManager().merge(entity);
        EntityManagerHelper.commit();
        return result;
        } catch (RuntimeException re) {
        EntityManagerHelper.rollback();
        throw re;
        }
        }
        (2)上傳稿件
        作者角色上傳稿件:采用在線文件上傳組件Components-FileUPload上傳稿件。作者在表示層頁面Upload.jsp中選擇要上傳的稿件的路徑,點擊上傳按鈕,頁面請求通過form表單發送給控制層UploadAction, form中的enctype屬性用來設置上傳數據的編碼方式,應設為multipart/form-date。UploadActon中的execute()方法中首先創建一個字節型輸入流來讀取傳送來的文件file。然后通過ServletAcrionContext.getRequest().getRealPath()獲取存儲問價的父目錄,然后創建一個destFile文件。該文件用來做為輸出流的目的文件。最后再創建一個關于destFile文件的輸出流。創建完輸入流和輸出流后,就可以創建一個中間字節數組buffer來實現輸入流與輸出流的轉換,從而實現文件的上傳功能。實現上傳功能,還要在struts.xml文件中對實現文件上的Action進行攔截器方面的配置,可以設置允許上傳文件的大小,文件類型等等。上傳成功后返回Uploadsuccess.jsp。
        3.3.2 審稿模塊
        (1)查閱稿件
        編輯角色查看稿件信息:稿件信息包括稿件的基本信息、稿件內容及編輯部工作人員和專家對其的評價。查看稿件內容需要下載稿件,實現方法也是采用Components-FileUPload組件,和上面講到的上傳稿件類似,這里就不再詳述。在編輯角色的ViEW層頁面Editor.jsp點擊目標稿件的查看按鈕,則通過URL鏈接到findSingleContribution.action,并把目標稿件的id傳送給action,此action調用業務層處理邏輯findSingleContribution,業務層調用持久層findById方法查詢數據對象, 查詢完成后返回數據庫結果,返回數據對象結果,返回邏輯處理結果,返回頁面視圖展現結果。
        (2)審理稿件
        編輯角色審理稿件:主要包括評價稿件,提交審理結果。評價稿件與作者角色填寫稿件信息類似,調用持久層的update方法。審理結果有三種:擬錄、退修、退稿、分別對應數據庫flag中的1、2、3。提交審理結果就是修改flag的值。在Editor.jsp中選擇目標稿件的三種稿件的任一種結果,調用控制層的review.action并傳遞目標稿件的id和稿件處理結果flag的值給action,調用業務層的review方法,調用持久層的update方法。返回處理結果。
        4 測試
        布置到tomcate6中,通過瀏覽器訪問。按照注冊、登陸、、審稿的流程操作系統。測試結果表明基本實現了需求分析時的功能。并且該系統通過javascript實現了許多瀏覽器端數據輸入驗證功能,例如文題不能為空、驗證郵箱格式、驗證是否上傳了稿件等等。 圖5是成功后,按照編輯人員審稿的流程操作的測試結果。

        本文的網站和系統是基于B/S結構,采用Dreamweaver制作靜態網頁,采用MVC模式Struts2+Spring+Jpa框架,Java語言和JSP技術,MySQL數據庫實現的方案,完成了投稿和審稿功能。本系統具有如下優點:采用Java語言和JSP技術,具有跨平臺的優點;基于B/S結構,系統運行更簡易;采用MVC模式和Struts2+Spring+Jpa框架,易維護、易升級、易操作。本系統很好地解決了傳統手工投審稿效率低、耗時長、交互性差的問題。
        參考文獻
        [1] 李振捷. JSP網站開發典型模塊與實例精講[M].北京:電子工業出版社,2007.
        [2] 胡異峰.投稿考評及分析系統的與實現[J].計算機工程與應用,2005(29):223-225.
        [3] (荷)范德蘭斯著. MySQL開發者SQL權威指南[M].許杰星,等譯.北京:機械工業出版社,2008.
        [4] 林永傍,劉偉平,黃紅斌,等.EPON故障管理系統的與實現[J].光通信技術,2009,33(10):16-18.


        上一頁 1 2 下一頁

        關鍵詞: 實現 設計 系統 投稿

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 永济市| 贡嘎县| 太白县| 水城县| 剑阁县| 杭州市| 吉隆县| 新河县| 确山县| 阳朔县| 视频| 普陀区| 获嘉县| 临泽县| 石家庄市| 临泉县| 常山县| 桓台县| 嘉兴市| 绥滨县| 公主岭市| 临漳县| 尼玛县| 浦北县| 天台县| 临江市| 泗阳县| 沙雅县| 怀化市| 古交市| 礼泉县| 桦川县| 曲靖市| 赤峰市| 丽江市| 乌兰县| 新余市| 龙门县| 加查县| 勐海县| 庄浪县|