国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于SpringMVC的漫畫交流分享平臺(tái)設(shè)計(jì)與實(shí)現(xiàn)

2017-03-08 02:15張明會(huì)唐煜杰
電子元器件與信息技術(shù) 2017年4期
關(guān)鍵詞:用例漫畫數(shù)據(jù)庫

張明會(huì),唐煜杰

(1.大連東軟信息學(xué)院 軟件工程,遼寧省 大連市 116023)

1 引言

漫畫讀者已經(jīng)越來越多,在過去,讀者們閱讀紙質(zhì)漫畫,只能與身邊少數(shù)的愛好者討論,分享也只能以借閱的方式,興趣圈非常小,也難以看到很多不同種類的漫畫。很多漫畫讀者選擇在QQ群和漫畫論壇上分與其他漫畫愛好者交流漫畫,但是這樣的交流分享方式十分單一,無法在一個(gè)網(wǎng)站上分享的同時(shí)閱讀漫畫,用戶只能上傳一些截圖,未看過該漫畫的讀者還要自己去別處找漫畫看,這種方式讓廣大漫畫讀者覺得極為不便又浪費(fèi)時(shí)間,漫畫的閱讀與交流需要有一定的連貫性與流暢性。

2 系統(tǒng)開發(fā)技術(shù)

2.1 SpringMVC

Spring MVC是Spring提供的一個(gè)強(qiáng)大而靈活的web框架。借助于注解,Spring MVC提供了幾乎是POJO的開發(fā)模式,使得控制器的開發(fā)和測試更加簡單[1-4]。這些控制器一般不直接處理請求,而是將其委托給Spring上下文中的其他bean,通過Spring的依賴注入功能,這些bean被注入到控制器中??梢暂p松實(shí)現(xiàn)DIP(依賴倒換)、OCP(開閉原則)、IOC(控制反轉(zhuǎn))、AOP(面向切面)等特性[5]。

2.2 Mybatis

MyBatis是支持普通 SQL查詢,存儲(chǔ)過程和高級(jí)映射的優(yōu)秀持久層框架[6-8]。MyBatis消除了幾乎所有的JDBC代碼和參數(shù)的手工設(shè)置以及結(jié)果集的檢索。MyBatis使用簡單的 XML或注解用于配置和原始映射,將接口和Java的POJOs(Plain Old Java Objects,普通的 Java對象)映射成數(shù)據(jù)庫中的記錄[9]。

2.3 MySQL

MySQL是一個(gè)開放源碼的小型關(guān)聯(lián)式數(shù)據(jù)庫管理系統(tǒng)由瑞典MySQL AB 公司開發(fā),目前屬于Oracle 旗下產(chǎn)品[10]。在 WEB 應(yīng)用方面,MySQL是最好的關(guān)系型數(shù)據(jù)庫管理系統(tǒng)之一。由于其體積小、速度快、總體擁有成本低,尤其是開放源碼這一特點(diǎn),許多中小型網(wǎng)站為了降低網(wǎng)站總體擁有成本而選擇了MySQL作為網(wǎng)站數(shù)據(jù)庫[11]。非常流行的開源軟件組合LAMP中的“M”指的就是MySQL[12]。

3 系統(tǒng)功能分析與設(shè)計(jì)

3.1 業(yè)務(wù)流程

通用的管理系統(tǒng)中一般至少都會(huì)根據(jù)不同功能設(shè)置不同的角色,不論是Web系統(tǒng)還是APP[13-15]。本系統(tǒng)主要分為管理員和用戶兩種角色,管理員上傳漫畫、用戶選擇漫畫、閱讀漫畫、評論漫畫等,涉及管理員及用戶兩種用戶類型。漫畫交流分享平臺(tái)的總體業(yè)務(wù)流程如圖1所示。

3.2 功能模塊設(shè)計(jì)

根據(jù)總體業(yè)務(wù)流程,確定本系統(tǒng)主要包括如圖2所示功能模塊。

圖1 總體業(yè)務(wù)流程圖Fig.1 Business process diagram

圖 2 功能結(jié)構(gòu)圖Fig.2 Functional structure diagram

3.3 系統(tǒng)架構(gòu)設(shè)計(jì)

在線漫畫交流分享平臺(tái)的系統(tǒng)架構(gòu)分為四層,如圖3所示。

其中第一層為Web層,包含前臺(tái)JSP頁面與Action部分的DispatcherServlet,負(fù)責(zé)接收前臺(tái)發(fā)來的請求并控制轉(zhuǎn)發(fā)請求。第二層為Service層,負(fù)責(zé)處理業(yè)務(wù)邏輯。第三層為Dao層,由持久層文件組成,負(fù)責(zé)接收Service的請求并對操作數(shù)據(jù)庫。第四層為實(shí)體類,負(fù)責(zé)存放各種實(shí)體類文件及其構(gòu)造函數(shù)。

3.4 數(shù)據(jù)庫設(shè)計(jì)

本系統(tǒng)主要有四個(gè)實(shí)體,分別為漫畫、漫畫類別、用戶與評論,四個(gè)實(shí)體間的關(guān)系(ER圖)如圖4所示。

通過對領(lǐng)域?qū)ο?、業(yè)務(wù)對象及對象間關(guān)聯(lián)的分析,對本系統(tǒng)的數(shù)據(jù)庫表進(jìn)行了設(shè)計(jì),如表3.1--表3.8所示。本系統(tǒng)數(shù)據(jù)庫管理采用MySQL。

表1 用戶信息表(t_user)Tab.1 User information table(t_user)

(1)用戶信息表(t_user)

用戶信息表主要用于保存系統(tǒng)管理員的信息,主要字段包括:用戶ID、用戶名、登錄密碼、用戶年齡、用戶性別、用戶郵箱、用戶身份。表結(jié)構(gòu)如表1所示。

(2)漫畫信息表(t_goods)

漫畫信息表主要用于保存漫畫的信息,主要字段包括:漫畫ID、類別ID、漫畫名稱、漫畫簡介、漫畫作者、漫畫地區(qū)、漫畫上傳時(shí)間、漫畫推薦度、漫畫圖片地址。表結(jié)構(gòu)如表2所示。

(3)分類信息表(t_category)

用戶信息表主要用于保存漫畫分類的信息,主要字段包括:分類ID、分類名、分類圖片、分類狀態(tài)。表結(jié)構(gòu)如表3所示。

圖 3 系統(tǒng)架構(gòu)圖Fig.3 System architecture diagram

圖4 系統(tǒng)ER圖Fig.4 System ER diagram

表2 漫畫信息表(t_goods)Tab.2 Comic information table(t_goods)

表3 分類信息表(t_category)Tab.3 category information table(t_category)

(4)評論信息表(t_comment)

評論信息表主要用于保存用戶評論的信息,主要字段包括:評論ID、漫畫ID、用戶ID、評論內(nèi)容、評論時(shí)間。表結(jié)構(gòu)如表4所示。

表4 評論信息表(t_comment)Tab.4 comment information table (t_comment)

3.5 對象設(shè)計(jì)

本系統(tǒng)的主要功能包括用戶瀏覽漫畫、評論漫畫、上傳漫畫以及管理員對基本信息管理等,介于篇幅有限,下文僅對評論漫畫和上傳漫畫兩個(gè)模塊進(jìn)行詳細(xì)設(shè)計(jì)。

3.5.1 評論漫畫用例對象設(shè)計(jì)

(1)用例實(shí)現(xiàn)

用戶選擇漫畫后進(jìn)入閱讀界面,然后可以在閱讀界面中添加評論,評論通過post請求發(fā)送給Controller層的CommentAction類,然后通過AddComment()方法傳給CommentService,后發(fā)送給持久層寫進(jìn)數(shù)據(jù)庫。

(2)設(shè)計(jì)類圖

根據(jù)順序圖的分析得到評論漫畫用例的設(shè)計(jì)類圖,分為實(shí)體類user,控制層CommentAction類和邏輯層CommentService類,如圖5所示。

圖5 評論漫畫用例的設(shè)計(jì)類圖Fig.6 Class diagrams for comments on comic use cases

3.5.2 上傳漫畫用例對象設(shè)計(jì)

(1)用例實(shí)現(xiàn)

用戶登錄后可以上傳自己的漫畫,上傳內(nèi)容和漫畫實(shí)體類中的元素相統(tǒng)一,點(diǎn)擊上傳按鈕之后發(fā)送post請求到UploadAction類中,再獲取用戶ID,用AddGoods()方法發(fā)送到UploadService類中,檢查漫畫是否已存在,如不存在,傳入持久層插入數(shù)據(jù)庫,并將結(jié)果返回到頁面。

(2)設(shè)計(jì)類圖

根據(jù)分析得到上傳用例的設(shè)計(jì)類圖,分為user和comic兩個(gè)實(shí)體類及上傳的控制層和邏輯層類,如圖6所示。

圖6 上傳用例的設(shè)計(jì)類圖Fig.6 Class diagrams for uploading usecase

4 系統(tǒng)實(shí)現(xiàn)

4.1 上傳功能

第一個(gè)核心功能是用戶的漫畫上傳功能,因?yàn)槁嫿涣鞣窒砥脚_(tái)強(qiáng)調(diào)的就是交流和分享,用戶登錄后即可分享漫畫,進(jìn)入上傳漫畫頁面,填入漫畫信息,上傳封面和內(nèi)容圖片,點(diǎn)擊上傳即可上傳完畢。點(diǎn)擊分享漫畫,進(jìn)入分享漫畫頁面,并填入漫畫信息,點(diǎn)擊上傳進(jìn)行分享。Mapper層實(shí)現(xiàn)的部分代碼如下:

4.2 評論功能

用戶在漫畫瀏覽頁面上可以對當(dāng)前瀏覽的漫畫進(jìn)行評論,用戶先打開主頁,然后選擇分類,選擇漫畫進(jìn)入閱讀頁面,然后進(jìn)行評論。實(shí)現(xiàn)評論功能的Service和Mapper層代碼如下所示:

@Override public Page<Goods> getGoodsByCate(String cateId,String sort){

5 總結(jié)

本文總結(jié)了漫畫交流系統(tǒng)分析、設(shè)計(jì)與實(shí)現(xiàn)的全過程,系統(tǒng)最終實(shí)現(xiàn)了用戶瀏覽漫畫、漫畫交流及分享的功能,為漫畫愛好者及漫畫作者提供了很好的交流分享平臺(tái)。本項(xiàng)目主要有兩個(gè)特點(diǎn):

(1)業(yè)務(wù)邏輯上簡明直接,目標(biāo)用戶設(shè)定準(zhǔn)確,以漫畫愛好者與漫畫作者為主,為漫畫愛好者提供了一個(gè)分享自己喜愛的漫畫與他人交流的平臺(tái),也為新手漫畫作者提供了直接展示自己漫畫的機(jī)會(huì),目前網(wǎng)絡(luò)上并沒有功能主題相似的網(wǎng)站,本系統(tǒng)可以填補(bǔ)市場空白,有著廣闊的發(fā)展空間。

(2)程序上,由于使用了Spring與Mybatis框架,使得項(xiàng)目十分精簡,代碼量比傳統(tǒng)的Servlet +JDBC精簡很多,便于維護(hù)。開發(fā)過程中使用了敏捷開發(fā)的思想,把開發(fā)與測試相結(jié)合,故UAT階段的Bug數(shù)非常少。此外,Spring框架的使用使得系統(tǒng)相應(yīng)性能及安全性也比傳統(tǒng)架構(gòu)出色。

[1] 周燕玲. SpringMVC框架開發(fā)WEB應(yīng)用程序的探索與研究[J].科技廣場,2016,(6):25-28.Zhou Yanling.Exploration and Research on developing WEB application program based on SpringMVC framework, Science Mosaic,2016,(6):25-28.

[2] 趙璘.基于Spring MVC+JDBCTemplate的Web系統(tǒng)的研究與應(yīng)用[J],軟件工程,2017,1:5-8.Zhao Lin.Research and application of Web system based on Spring MVC+JDBCTemplate, Software Engineer,2017,1:5-8.

[3] 林躍進(jìn). 論Spring編寫J2EE程序的優(yōu)勢[J]. 遼寧師專學(xué)報(bào)(自然科學(xué)版),2007,(01):34-35.Lin Yuejing. On the advantages of writing J2EE program by Spring ,Journal of Liaoning Teachers College(Natural Science Edition) ,2007,(01):34-35.

[4] 李洋. SSM框架在Web應(yīng)用開發(fā)中的設(shè)計(jì)與實(shí)現(xiàn)[J]. 計(jì)算機(jī)技術(shù)與發(fā)展,2016,(12):190-194.Li Yang.Design and implementation of SSM framework in Web application development, Computer Technology and Development, ,2016,(12):190-194.

[5] 陽小蘭,羅明.基于Spring+SpringMVC+MyBatis網(wǎng)上論壇的設(shè)計(jì)與實(shí)現(xiàn)[J]. 黑龍江科技信息, 2016(36):279-280.Yang Xiaolan ,Luoming.Design and implementation of online forum based on Spring+SpringMVC+MyBatis, Heilongjiang Science and Technology Information, 2016(36):279-280.

[6] Zhang D, Wei Z, Yang Y. Research on Lightweight MVC Framework Based on Spring MVC and Mybatis[C]// Sixth International Symposium on Computational Intelligence and Design. IEEE, 2014:350-353.

[7] 姜英,王嘉. 基于Struts2+Spring+Freemarker的自定義框架研究[J]. 電腦編程技巧與維護(hù),2013,(12):4-5.Jiang Ying,Wang Jia.Research of custom framework based on Struts2+Spring+Freemarker, Computer Programming Skills & Maintenance,2013,(12):4-5.

[8] 董英茹. 簡談AngularJS在下一代Web開發(fā)中的應(yīng)用[J]. 軟件工程師,2015,(05):30-31.Dong Yingru.Brief talk about the application of AngularJS in next generation Web development, Software Engineer, 2015,(05):30-31.

[9] 羅迪,云龍,楊姣. 基于Spring+MyBatis的高校人事管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J]. 數(shù)字技術(shù)與應(yīng)用,2017,(04):179.Luo Di,Yun Long,Yang Jiao.Design and implementation of university personnel management system based on Spring+MyBatism. Digital Technology and Application,2017,(04):179.

[10] 劉雪香. 大型ERP 實(shí)施中數(shù)據(jù)庫的設(shè)計(jì)優(yōu)化研究[J]. 軟件,2017,38(5):137-139.Liu Xuexiang. Research on database design optimization in large scale ERP implementation, Electronic Design Engineering[J] , Software,2017,38(5):137-139.

[11] 王慶福.網(wǎng)站建設(shè)中數(shù)據(jù)庫技術(shù)與WEB 技術(shù)的應(yīng)用對比研究[J].軟件,2013,34(2):86-87.Wang Qingfu. Comparative study of database technology and WEB technology in website construction[J], Software, 2013,34(2):86-87.

[12] 賈躍,付麗梅,韓羽佳. 軟件開發(fā)技能測評系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J]. 電子技術(shù)與軟件工程,2016,(22):64-65.Jia Yue,F(xiàn)u Limei, Han Yujia.Design and implementation of software development skills evaluation system, Electronic Technology &Software Engineering,2016,(22):64-65.

[13] Serdar Yegulalp,Serdar Yegulalp. MySQL 8.0: More Unicode, less hassle[J]. InfoWorld.com,2016

[14] 付麗梅,劉英鵬,賈躍. 基于騰訊微校平臺(tái)的校園移動(dòng)辦公APP設(shè)計(jì)與實(shí)現(xiàn)[J]. 信息系統(tǒng)工程,2017,(01):156-157.Fu Limei,Liu YingPeng, Jia Yue. Design and implementation of campus mobile office APP based on Tencent micro school platform .China CIO News, 2017, (01):156-157.

[15] 李緒成,王紅,閆海珍. 基于B/S架構(gòu)的MIS生成系統(tǒng)[J]. 長春師范學(xué)院學(xué)報(bào)(自然科學(xué)版),2009,(02):24-26.Li Xucheng,Wang Hong,Yan Haizhen. MIS generation system based on B/S architecture,Journal of Changchun Normal University(Natural Sciences) ,2009,(02):24-26.

猜你喜歡
用例漫畫數(shù)據(jù)庫
UML用例間包含關(guān)系與泛化關(guān)系的比較與分析
UML用例模型中依賴關(guān)系的比較與分析
聯(lián)鎖軟件詳細(xì)設(shè)計(jì)的測試需求分析和用例編寫
從出土文獻(xiàn)用例看王氏父子校讀古書的得失
數(shù)據(jù)庫
知識(shí)漫畫
漫畫4幅
漫畫與幽默
數(shù)據(jù)庫
數(shù)據(jù)庫
昭平县| 三亚市| 大同市| 孝义市| 视频| 奉节县| 富裕县| 镇坪县| 微博| 进贤县| 聂荣县| 象山县| 保靖县| 高清| 承德市| 博野县| 瓦房店市| 南江县| 南华县| 宜兰县| 堆龙德庆县| 循化| 香格里拉县| 唐海县| 开远市| 平乐县| 永城市| 新乐市| 乐业县| 宁晋县| 隆回县| 安达市| 孟村| 商丘市| 民和| 龙游县| 天门市| 枣阳市| 阳东县| 固原市| 二连浩特市|