计算机科学与技术毕业论文-计算机网络应用软件设计-以小说网站设计为例_第1页
计算机科学与技术毕业论文-计算机网络应用软件设计-以小说网站设计为例_第2页
计算机科学与技术毕业论文-计算机网络应用软件设计-以小说网站设计为例_第3页
计算机科学与技术毕业论文-计算机网络应用软件设计-以小说网站设计为例_第4页
计算机科学与技术毕业论文-计算机网络应用软件设计-以小说网站设计为例_第5页
已阅读5页,还剩38页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第一章绪论1.1研究背景随着电脑和电脑网路的迅速发展,人类对电脑网路的依赖性也与日俱增。而电脑网路带来了很多的休闲方式,比如网文,就是其中之一。如今,网络文学已经成了一种时尚的休闲娱乐形式,网上的一些网站也开始出现了。根据国内著名网站iResearch、Alexa、GoogleAdPlanner、GoogleTrends等流量,通过对互联网小说网站流量、点击量和使用量的调查和分析,结果显示:起点中文网、快眼看书、晋江原创网、搜读网、纵横中文网三是用,位列全国五大文学类网站。起点中文网成立的早,类型和开发都很全面,但由于起步太晚,所以它的用户群体更偏向于玄幻、仙侠、武侠小说等题材,所以在寻找玄幻、仙侠之类的作品的时候,首先要考虑的就是起点。像日本的轻小说,还有二次元的作品,都是随着漫画的发展而兴起的,这样的作品,在起点的网络中,属于比较小的一类,因为这样的网络空间比较狭隘,可以给更多的人提供更多的创作空间,让更多的人愿意尝试,让自己的作品更加的专业。首先,现在的网络文学平台,大部分都是以现在流行的玄幻和魔法题材为主,像日本这样的小众化作品更是凤毛麟角,第三,网络小说的下载量也很低,比如日本的那些网络小说,比如没有书架,没有书架,也没有书架,很难让人喜欢。因此其方案的重要作用在于:以方便、快捷、多样化为目的,开发个性化的读物,为使用者带来更好的阅读体验,增加安全的下载途径,为广大读者和作者和站长创造一个真正的交流平台。1.2国内研究现状1.2.1国外研究现状首先,国外的网络文学还没有完全发展起来,主要是因为版权问题,大部分作品都是在同人网站上发表的,比如AO,Fanfiction等等。欧美最出名的一部网文,当属《五十层灰(FiftyShadesofGrey)》(以及《五十层黑》(FiftyShadesDarker)以及《五十层飞》(FiftyShadesFreed)),后者最初是以《暮光之城》的同人作品形式,在互联网上推出的。还有一些正式的许可,比如亚马逊的KindleWorlds。第二,与中国的成熟的网络小说相比,中国的网络小说要差一些,但在商业运作方面,却要差一些。第三,中国的网络小说在不断的拓展,在网络文化公司和政策的驱动下,在中国,成熟的网络小说形式和作品,已经吸引了更多的外国读者,而中国的网络小说公司也开始占领了国外的一些地区。海外的网文发展比较艰难。1.2.2国内研究现状一年前,由于政治和历史的关系,传统的小说并不像现在的网文那么有趣。二十六年以来,由于我们的人口基数不断增加,人们对物质生活的需求也随之增加,而电脑与网路技术的发展,使得网路小说从最初的小规模创作发展到如今的规模宏大的商业性。它是中国新时期文学发展的一个主要内容。这对我们国家的文化和人民的精神生活,都有很大的影响。伴随着互联网与网游的普及,一种新型的文学形式--幻想小说也在悄无声息地崛起,并迅速发展,并在21世纪初期形成了一种令人瞩目的文化形态。因为互联网用户越来越多。而幻想作家也出现了青年创作的趋势,因此,幻想文学成为了“80后”创作的主要途径。它也为中国现代大众文艺创作带来了新的生机但在这一过程中,也存在着诸多问题:首先,每年出现的网络侵权事件都会给作者带来巨大的经济损害和对创作积极性的影响。二是因为网络小说的写作模式,只要有一部热门小说,就会有一批模仿者,缺乏一种独立的创作意识。第三,是网络小说,许多人都知道他的小说赚钱,但关于他的身份和文学位置,鲜有人提起。四是网文相比于传统的文学来说,具有较强的娱乐性,但也存在着文学上的缺陷,因此,在文学上,存在着数量庞大的同质化现象。1.2.3研究述评现在的网络小说,发展的很好,因为有动画和影视的存在,所以有很大的发展余地。从某种意义上来说,起点小说网是一个历史悠久的网络公司,拥有最好的资源和服务。但因为起步太晚,所以他们的固有印象很难被改变,而现在,很多小型的网站都走上了一条新的道路,比如日本的轻薄小说,比如二次元的漫画,还有欧美克苏鲁的作品。网络文学是以因特网、现代化通讯等技术手段为基础而出现的一种全新的文体。当前,关于网络文学的观点尚不统一,但却引发了巨大的兴趣和高度的重视。中国互联网小说自上个世纪末期开始出现,至今仍处在原始状态,还处在一个粗放型、混乱的初始阶段。我们相信。在不久的未来,《红楼梦》必然会突破常规,成为一种主流。在其发展历程中,历经初期、形成和成熟,并最终实现其历史任务。1.3设计的主要研究内容小说网系统开发在idea平台上的,利用Spring+SpringMVC+MyBatis疯狂软件.Spring+MyBatis企业应用实战(第2版).电子工业出版社2018.4作为框架开发的小说网站和管理系统,包括了读者模块,书籍模块,作者模块,编辑模块,网站管理员模块,网站内容模块,这几个模块。本文的主要研究内容如下:疯狂软件.Spring+MyBatis企业应用实战(第2版).电子工业出版社2018.4(1)采用HTML5李军.网页制作—HTML、CSS、JavaScript.清华大学出版社2012.1(2015.7重印),CSS,JavaScript,jQuery。技术姚敦红等.jQuery程序设计教程教程.人民邮电出版社2013.12(2017.5重印)利用Dreamweaver(网页制作)、Photoshop(网站美工)等软件来建立小说网站的门户界面。李军.网页制作—HTML、CSS、JavaScript.清华大学出版社2012.1(2015.7重印)姚敦红等.jQuery程序设计教程教程.人民邮电出版社2013.12(2017.5重印)(2)数据库的建立采用MySQL,以小说网站数据库的内容(3)对系统的模块设计的展示(4)对系统的实现(5)系统方法的测试

第二章系统需求分析2.1系统的需求分析小说站点的主要要求是:(1)网页的浏览和跳跃,用户可以在网页上点击网页的链接,找到自己想要的东西。(2)用户可以登陆,编辑自己的个人资料,将自己喜爱的作品加入到自己的书柜中,为自己喜爱的作品点个赞。(3)阅读章节,点击所选章节即可。(4)创作者可以登陆、编辑自己的资料、创作新的小说、自己的作品、更新章节、更新图书的封面。(5)编辑部可以登陆小说网站的管理系统,对作品的更新、更新和更新的图书进行审查。(6)本网站管理员可以登陆该作品的管理平台,在该平台上对该用户、该创办人、该编辑的账号进行操作,并对该站点的该轮播放进行更新,并修改该图书的相关信息。2.2系统的功能需求按照小说网站的设计内容,其包含的模块包括读者模块,书籍模块,作者模块,编辑模块,网站管理员模块,网站内容模块。图2.1系统的功能模块结构图1.读者模块(1)登录注册功能读者可以通过账号和密码进行登录,同时也可以注册新的账号密码进行登录。(2)修改个人信息读者登录后可以,点击个人信息进行个人的信息修改包括密码,昵称。(3)加入书架读者在登录后,阅读喜欢的书籍可以点击书籍页面的加入书架按钮添加到书架里,点击书架里的书籍内容即可以跳转到书籍页面。(4)下载小说读者在登录后可以下载喜欢的小说内容。(5)点赞读者在登录后,可以对喜欢的小说点击其书籍页面的点赞按钮,进行点赞。2.作者模块(1)登录注册功能读者可以通过账号和密码进行登录,同时也可以注册新的账号密码进行登录。(2)修改个人信息作者登录后可以,点击个人信息进行个人的信息修改包括密码,昵称,头像。(3)创建小说作者在登录后,可以点击创建新作品,填完信息后发到后台编辑进行审核(4)上传章节作者在登录后,点击我的作品可以选择自己的作品进行新章节的上传,上传到后台编辑出进行审核。(5)修改书籍封面作者在登录后,点击我的作品可以选择自己的作品进行封面的更换,上传到后台编辑出进行审核。3.书籍模块(1)书籍页面点击小说网站里的书籍封面即可跳转到相关的小说内容包括目录,小说信息,以及相关作者的作品信息。(2)阅读功能点击书籍页面里的章节目录即可跳转到阅读界面进行阅读。4.编辑模块(1)登录输入账号密码后即可登录。(2)章节审核编辑登录后,可以点击章节审核的按钮,对作者上传的章节进行审核,审核通过后可以在书籍页面看到新的章节目录和内容。(3)作品审核编辑登录后,可以点击作品审核,对作者新建的作品进行审核。(4)变更审核编辑登录后可以对作者对书籍更换的封面或者简介进行审核。5.网站管理员模块(1) 用户管理网站管理员可以对小说网站的用户包括读者,作者,编辑和自己的账户管理。(2) 网站轮播管理网站管理员可以对网站首页的轮播内容进行管理。(3) 小说管理网站管理员可以对小说网站的所有小说内容进行管理。6. 网站网站内容模块(1) 网站首页的轮播对后台管理人员提交的图片进行轮播(2) 排行榜点击排行榜,显示前十的书籍(3)书库点击条件按钮对书库进行搜索2.3数据流图1. 读者登录数据流图用户的登陆流程如下:一是用户登陆,输入帐号和口令,二是服务方确认帐号和口令,三是确认后,读取用户资料,然后跳到了网络管理员的页面上。图2.2读者登录DFD2 读者注册数据流图用户的登记流程如下:一、用户进入登记页面,键入帐号和口令;二、服务器端判定帐号是否存在复制;图2.3读者注册DFD3.读者阅读小说数据流图在这个流程中,读者在看完了一篇作品后,按下了书的封面,然后,在服务器上接受了一个新的任务,进入了一个新的章节,然后进入了一个新的章节,然后进入了一个新的章节。图2.4读者阅读小说DFD4.作者上传章节数据流图章节资料流图:第1个步骤:作者按下“我的工作”键,服务方回复,回到“小说”的状态。图2.5作者上传章节DFD5.网站管理员替换网站轮播图片数据流图网站管理员更换站点轮播图像资料流程:首先,站点管理员单击站点轮播管理,服务方回复,然后返回站点轮播图像,切换到站点轮播图像管理页。图2.6网站管理员替换网站轮播图片DFD2.4数据字典表2.1数据字典表含义符号说明BOOK_STATUS1连载中BOOK_STATUS2完本AUTHORPOST_STATUS3未通过审核AUTHORPOST_STATUS4通过审核WAPPER_STATUS5封推WAPPER_STATUS6书单WAPPER_STATUS7主编WAPPER_STATUS8热门BACKUSER_TYPE9网站管理员BACKUSER_TYPE10编辑BOOK_STATUS11封禁如表2.1所示,这是数据字典表同时也是数据库里的数据字典表dictionary。下面是数据字典的数据项描述:数据项名,数据项含义说明,别名,数据类型,长度,取值范围,取值含义,与其他数据项的逻辑关系(1)数据项名:BOOK_STATUS说明:意为小说状态,即包括完本的状态,连载的状态,封禁的状态数据类型:varchar长度:50取值范围:1,2,11取值意义:1代表小说处于连载的状态,2,代表小说处于完结的状态,11代表小说处于封禁的状态逻辑关系:符号对应着数据库小说表book的booktype(2)数据项名:WAPPER_STATUS说明:意为网站首页轮播图片的位置,即封推,热门,主编数据类型:varchar长度:50取值范围:5,6,7,8取值意义:5代表值网站首页封推的位置,6代表着网站首页书单的位置,7代表着网站首页主编推介轮播图片的位置,8代表着网站首页热门轮播图片的位置。逻辑关系:符号对应数据库网站首页轮播图片表website里的wapperType(3)数据项名:BACKUSER_TYPE说明:意为后台人员的类型,包括编辑和网站管理员数据类型:varchar长度:50取值范围:9,10取值意义:9,代表着后台人员的类型为网站管理员,10,代表着后台人员类型为编辑逻辑关系:符号对应着数据库后台管理人员表backend_user的userType(4)数据项名:AUTHORPOST_STATUS说明:意为作者提交的章节或小说的审核状态数据类型:varchar长度:50取值范围:3,4取值意义:3,代表着作者提交的章节或小说处于未审核的状态,4,代表着作者提交的章节或小说的审核通过的状态逻辑关系:符号对应着数据库checkchange变更审核表,checkbook新书审核表。checkchapter章节审核表的Ischeck2.5实体关系图图2.7系统的实体-联系图(ER图)如图2.7所示,该图是小说网系统的实体-联系图,具体描述如下:(1)书籍的属性包括封面图片地址,编号,作者,类型,书名,创建时间,完结时间,最后更新时间,点赞数,收藏数,章节数,收藏数,简介。(2)作者的属性包括用户名,密码,编号,账号,完结作品的数量,连载作品的数量,头像图片地址,创建时间。(3)编辑的属性包括用户名,编号,创建时间,账号,密码。(4)读者的属性包括编号,用户名,账号,密码,创建时间。(5)需要审核的作品属性包括书名,类型,封面地址,简介,大纲,作者,审核状态。(6)书籍章节的属性包括标题,书籍编号,章节数,章节内容。(7)需审核的章节的属性包括标题,章节内容,书名,章节数,审核状态。

第三章系统设计小说网系统的设计包括系统的系统总体架构设计,数据库设计,系统模块的设计,以下三个小节就是系统设计的内容。3.1系统总体架构设计图3.1系统总体架构设计如图3.1所示,表现层调用业务接口,持久层即mybaits,即dao接口,业务层即service接口,调用dao接口李洋.SSM框架在Web应用开发中的设计与实现

[J].计算机技术与发展,2016(12):190-194,共5页.李洋.SSM框架在Web应用开发中的设计与实现

[J].计算机技术与发展,2016(12):190-194,共5页.3.2数据库设计王成良,柳玲,徐玲。数据库技术及应用.清华大学出版社2011王成良,柳玲,徐玲。数据库技术及应用.清华大学出版社2011本系统运用MySQL做数据库,如下:(1)读者信息表(readerinfo):表3.1readerinfo表列名数据类型可为空注释IdInt(20) NOTNULL读者编号readernameVarchar(50)NULL读者昵称readerCodeVarchar(50)NOTNULL读者账号readerPasswordVarchar(50)NOTNULL读者密码creationDatedatetimeNOTNULL创建时间如表3.1所示,Id作为读者编号用于执行查询相关信息时的关键词,readername作为读者昵称,readerCode和readerPassword作为读者登录用的账号和密码,creationDate作为读者注册时的创建时间。(2)作者信息表(authorinfo)表3.2authorinfo表列名数据类型可为空注释IdInt(30)NOTNULL作者编号authorCodeVarchar(50)NOTNULL作者账号authorNameVarchar(50)NULL作者昵称authorPasswordVarchar(50)NOTNULL作者密码authorPicPathVarchar(200)NULL图片地址相对路径authorLocPathVarchar(200)NULL图片地址绝对路径acrossWorkInt(30)NULL通过的审核数noAcrossWorkInt(30)NULL未通过的审核数completeWorkInt(30)NULL完结的作品数stillWorkInt(30)NULL连载的作品数creationDatedatetimeNOTNULL创建时间如表3.2所示,Id作为作者的编号用于查询相关信息时的关键词,authorCode和authorPassword则作为作者登录用的账号和密码,authorName则是作者的笔名,authorPicPath和authorLocPath则是用于通过地址获取作者头像的图片相对路径以及绝对路径,acrossWork则是作者通过编辑审核的数量,noAcrossWork则是未通过审核数量,stillWork和completeWork则是目前作者在连载的作品数量以及完结作品的数量,creationDate则是作者注册的创建时间。(3)小说表(book)表3.3book表列名数据类型可为空注释idInt(20)NOTNULL小说编号booknameVarchar(50)NOTNULL小说书名bookimgPicPathVarchar(500)NOTNULL封面地址相对路径bookimgLocPathVarchar(500)NOTNULL封面地址绝对路径authorVarchar(20)NOTNULL作者allclickInt(30)NULL总点赞数allcollectionInt(30)NULL总收藏bookmesssageVarchar(250)NOTNULL简介chapterInt(10)NULL章节数booktypeInt(2)NOTNULL小说类型bookstatusInt(2)NOTNULL小说状态creationDateDatetimeNOTNULL创建时间finishetimeDatetimeNULL完结时间lastUpdateDatetimeNULL最后更新时间downNunbigInt(30)NULL总下载数如表3.3所示,这些都是小说的信息列名,也是在小说目录界面展现给读者的主要内容的列名,其中就包括了小说的封面,小说名,作者,简介,点赞数等等。(4)小说分类表(book_type)表3.4book_type表列名数据类型可为空注释idBigint(30)NOTNULL分类编号valueNameVarchar(50)NOTNULL分类名称creationDateDatetimeNOTNULL创建时间如表3.4所示,id作为分类编号,对应表3.3的booktype,valueName则是分类的名称。(5)章节内容表(bookcontents)Widenius,M.,Axmark,D.,&Dubois,P..(2002).

Widenius,M.,Axmark,D.,&Dubois,P..(2002).

MysqlReferenceManual.O'Reilly&Associates,Inc.表3.5bookcontents表列名数据类型可为空注释chapterBigint(30)NOTNULL章节数bookidBigint(30)NOTNULL小说编号contentLongtextNOTNULL小说内容如表3.5所示,bookid对应表3.3的id,用于查询相关信息的关键词,content则是展现给读者的小说内容,章节数则是小说内容对应的章节。(6)小说内容标题表(booktitle)表3.6booktitle表列名数据类型可为空注释bookidBigint(30)NOTNULL小说编号chapterBigint(30)NOTNULL章节数titleVarchar(20)NOTNULL小说标题如表3.6所示,bookid对应表3.3的id,chapter对应表3.5的chapter,用于查询对应章节的内容,title则是小说章节目录里的章节标题。(7)书架表(bookshelf)表3.7bookshelf表列名数据类型可为空注释IdBigint(30)NOTNULL读者编号valueNameVarchar(50)NOTNULL小说书名creationDateDatetimeNOTNULL创建时间如表3.7所示,Id对应表3.1的id,也就是读者的编号,valueName对应表3.3里的bookname,即小说名。(8)后台管理人员表(backend_user)表3.8backend_user表列名数据类型可为空注释idInt(30)NOTNULL后台人员编号backCodeVarchar(50)NOTNULL后台人员账号backNameVarchar(50)NOTNULL后台人员名称userTypeInt(30)NOTNULL后台人员类型backPasswordVarchar(50)NOTNULL后台人员密码creationDateDatetimeNOTNULL创建时间如表3.8所示,这表主要存储后台人员的信息表,Id作为后台人员的编号,backName则是后台人员的真实姓名,backCode和backPassword则是后台人员用于登录系统的账号和密码,userType则是后台人员的类型。(9)数据字典表(dictionary)表3.9dictionary表列名数据类型可为空注释idInt(10)NOTNULL数据字典编号typeCodeVarchar(50)NOTNULL数据分类valueidInt(10)NOTNULL字典值编号valueNameVarchar(50)NOTNULL字典名称如表3.9所示,该表的主要作用就是用于存储数据字典,数据字典的符号基本为数字,即valueid。(10)章节审核表(checkchapter)表3.10checkchapter表列名数据类型可为空注释booknameVarchar(50)NOTNULL书名chapterBigint(30)NOTNULL章节数booktitleVarchar(20)NOTNULL标题contentLongtextNOTNULL章节内容IscheckInt(2)NOTNULL审核状态如表3.10所示,该表用于存储作者提交审核的章节,除Ischeck以外,其他列名均是小说的内容信息,而Ischeck则是用于表示审核的状态。(11)新书审核表(checkbook)表3.11checkbook表列名数据类型可为空注释booknameVarchar(50)NOTNULL小说书名booktypeInt(2)NOTNULL小说类型bookimgPicPathVarchar(500)NOTNULL封面图片相对地址bookimgLocPathVarchar(500)NOTNULL封面图片绝对地址bookmesssageVarchar(250)NOTNULL小说简介bookoutlineLongtextNOTNULL小说大纲authorVarchar(50)NOTNULL作者IscheckInt(2)NOTNULL审核状态如表3.11所示,该表用于存储作者提交新建作品的内容,除Ischeck以外,其他列名均是小说的内容信息,bookoutline则是作者新建作品的大纲内容。(12) 网站首页轮播图片表(website)表3.12website表列名数据类型可为空注释idBigint(30)NOTNULL小说编号wapperTypeInt(2)NOTNULL轮播类型wapperBooknameVarchar(50)NOTNULL轮播小说书名wapperBookLogoPicPathVarchar(200)NOTNULL轮播图片地址相对路径wapperBookLogoLocPathVarchar(200)NOTNULL轮播图片地址绝对路径如表3.12所示,该表用于存储小说网系统的首页轮播图片的地址信息。id对应小说表的小说编号,wapperType则是轮播图片在首页的地址。3.3系统模块的设计 基于对网络的需要,网络小说网络的开发主要由以下几个部分组成:阅览、图书、著者、编辑部、网管部、站点内容部。下面重点讨论了一些关键的单元。1.读者阅读小说功能模块在网页中,读者可以通过点击该作品的书刊或书名,进入到该作品的书目页面,点击该章节的书目,进入到该作品的阅读页面。图3.2小说阅读功能流程图如图3.2所示,该流程图展示的即时读者阅读小说时的流程图2.读者添加书籍进书架功能模块读者点击网站内的小说封面或书名,跳转到小说目录界面,点击加入书架按钮就可添加书籍进书架。图3.3读者添加书籍进书架流程图如图3.3所示,该图是读者在添加书籍进书架的流程图,当书籍已在读者书架时,界面显示的是已在书架,当书籍不在读者书架时,界面显示的是加入书架。3.网站管理员对小说进行封禁功能模块网站管理员点击小说管理,跳转到小说管理页面,点击小说管理页面里的封禁按钮,同时刷新页面,被封禁的小说展示出解封的按钮。图3.4网站管理员对小说进行封禁流程图如图3.4所示,该图是网站管理员对小说执行封禁的流程图。4.作者上传章节模块作者登录后点击我的作品,显示出作者的作品,点击操作下的上传章节按钮,跳转到上传章节的页面,填写好内容后即可点击提交按钮,提交到后台编辑进行审核。图3.5作者上传章节流程图如图3.5所示,该图是作者在上传章节时的流程图。5.作者新建作品流程图作者成功登录后,点击新建作品,跳转到新建作品的页面,填写新建作品的内容,点击提交按钮即可提交到后台编辑进行审核。图3.6作者新建作品流程图如图3.6所示,该图是作者在新建作品时的流程图。6.章节审核模块编辑登录后,点击章节审核,核对章节后,点击审核通过按钮,章节即可通过审核添加到小说的章节目录里。图3.7章节审核流程图如图3.7所示,该图是编辑在后台系统进行审核时的流程图7.轮播图片更换模块网站管理员成功登录后,点击网页轮播图片管理,跳转到网页轮播图片管理界面,点击修改即可跳转到修改页面,点击上传图片即可重新更换轮播图片。图3.8轮播图片更换流程图如图3.8所示,该图是网站管理员在更换轮播图片的流程图。

第四章系统实现根据上一章的系统模块的设计,本章给出了它们的实现。下面分别是它们实现的界面效果和代码实现。4.1网站替换图片的功能实现(1)下图4.1是网站替换图片的界面,界面中有一个文件上传的按钮,点击按钮即可上传图片,书名的文本框可以调整轮播的书籍名称,单击替换按钮即可替换网站首页的轮播图片以及小说。图4.1网站替换图片页面图如图4.1所示,进行表单的填写和上传后,点击替换按钮即可看到网站首页轮播图片的改变。(2)以下即网站替换图片的功能实现的主要代码publicStringupdatewapper(Websitewebsite,HttpServletRequestrequest,@RequestParam(value="w_logoPicPath",required=false)MultipartFileattach){StringlogoPicPath=null;StringlogoLocPath=null;if(!attach.isEmpty()){Stringpath=System.getProperty("catalina.home")+java.io.File.separator+"img";("uploadFilepath:"+path);StringoldFileName=attach.getOriginalFilename();//原文件名Stringprefix=FilenameUtils.getExtension(oldFileName);//原文件后缀intfilesize=500000;if(attach.getSize()>filesize){//上传大小不得超过50krequest.setAttribute("fileUploadError",Constants.FILEUPLOAD_ERROR_4);return"manager/wapperchange";}elseif(prefix.equalsIgnoreCase("jpg")||prefix.equalsIgnoreCase("png")||prefix.equalsIgnoreCase("jepg")||prefix.equalsIgnoreCase("pneg")){//上传图片格式StringfileName=website.getWapperTypevalue()+website.getNewwapperBookname()+".jpg";//上传LOGO图片命名FiletargetFile=newFile(path,fileName);if(!targetFile.exists()){targetFile.mkdirs();}try{attach.transferTo(targetFile);}catch(Exceptione){//TODOAuto-generatedcatchblocke.printStackTrace();request.setAttribute("fileUploadError",Constants.FILEUPLOAD_ERROR_2);return"manager/wapperchange";}logoPicPath=fileName;logoLocPath=path+File.separator+fileName;}else{request.setAttribute("fileUploadError",Constants.FILEUPLOAD_ERROR_3);return"manager/wapperchange";}}website.setWapperBookLogoPicPath(logoPicPath);website.setWapperBookLogoLocPath(logoLocPath);try{Stringfile=managerWorkService.getwapperImg(website.getId(),website.getWapperType()).getWapperBookLogoLocPath();FilefileLoc=newFile(file);fileLoc.delete();if(managerWorkService.updatewapperimg(website)){return"redirect:/manager/flatform/wappermanager";}}catch(Exceptione){//TODOAuto-generatedcatchblocke.printStackTrace();}return"redirect:/manager/flatform/wappermanager";}代码描述:当上传封面图片不为空时,path是获取服务器存储静态资源的路径,判断上传文件的大小,符合条件的就获取上传文件名的后缀,判断文件是否符合上传要求,然后就可以上传新的图片,同时根据上传图片的地址更新数据库里的图片地址和小说名即,managerWorkService.updatewapperimg(website)。4.2编辑审核章节功能的实现(1)下图4.2是编辑审核作者提交新章节的功能界面,书名为要审核的小说书名,章节则是目前小说总章节数的加一,章节标题和章节内容则是编辑需要审核的内容。图4.2编辑审核章节页面图如图4.2所示,在编辑审核过后,点击审核通过按钮即可通过该章节,并在小说目录界面看到该章节的内容信息。(2)以下是编辑审核章节功能的实现代码:@RequestMapping(value="/doeditaddchapter",method=RequestMethod.POST)publicStringaddchapter(Bookinfobookinfo){try{editWorkService.editAddChapterOne(bookinfo);editWorkService.editAddChapterTwo(bookinfo);editWorkService.updateIscheck(bookinfo);}catch(Exceptione){e.printStackTrace();}return"redirect:/edit/flatform/chaptercheck";}代码简单描述:编辑审核后点击审核通过按钮,即可提交表单,代码主要执行三个操作,editWorkService.editAddChapterOne(bookinfo);将相关表单信息添加到数据库bookcontents表,editWorkService.editAddChapterTwo(bookinfo);将相关表单信息添加到数据库booktitle表,即分别添加到章节内容,章节标题里,editWorkService.updateIscheck(bookinfo);则是更新新章节的审核状态。4.3网站管理员对小说管理的功能实现(1)如下图4.3所示前面的展现,除操作外其他栏目显示的均是小说的相关信息,操作栏目下的按钮就是网站管理员可以对小说进行的管理操作。图4.3小说管理界面如图4.3所示,点击修改,查看,上传按钮都会跳转到对应的操作页面,点击封禁就会刷新页面,同时更改小说的状态。(2)下面是小说管理功能里的封禁代码实现@RequestMapping(value="/setbookstatus/{id}",method=RequestMethod.GET)publicStringsetbookstatus(@PathVariableIntegerid){try{managerWorkService.setbookstatus(id);}catch(Exceptione){e.printStackTrace();}return"redirect:/manager/flatform/bookmanager";}代码简单描述:在小说管理页面获取小说id后,点击封禁按钮,主要执行操作managerWorkService.setbookstatus(id);更新小说的状态为封禁。(3)下面是小说管理功能里的查看代码实现@RequestMapping(value="/getbook/{id}",method=RequestMethod.GET)publicStringgetbook(@PathVariableIntegerid,Modelmodel){Bookinfobookinfo=null;try{bookinfo=managerWorkService.getBookById(id);}catch(Exceptione){e.printStackTrace();}model.addAttribute("bookinfo",bookinfo);return"manager/getbook";}代码简单描述:获取小说管理页面的小说id,点击查看按钮即可跳转到查看小说信息的页面,bookinfo=managerWorkService.getBookById(id);执行从数据库里根据id编号获取小说的信息,model.addAttribute("bookinfo",bookinfo);通过model.addAttribute()把这些信息存到bookinfo里,在jsp页面里通过el表达式将值拿出来展现在界面上。4.4小说阅读功能的实现(1)如图4.4所示,读者点击章节目录里的任一章节即可跳转到章节阅读界面。图4.4小说章节目录图如图4.4所示,点击章节目录里的标题即可跳转到小说的阅读界面。(2)以下是点击小说章节目录标题进行阅读的代码实现@RequestMapping(value="/bookview/{id}/{chapter}",method=RequestMethod.GET)publicStringcontent(@PathVariableStringchapter,@PathVariableIntegerid,HttpServletRequestrequest){Bookinfocontent=null;try{content=bookService.getContent(String.valueOf(chapter),Integer.valueOf(id));}catch(Exceptione){e.printStackTrace();}request.setAttribute("content",content);return"book/bookcontent";}代码简单描述:获取小说目录界面的小说编号和章节目录里的章节数,执行操作content=bookService.getContent(String.valueOf(chapter),Integer.valueOf(id));从数据库里根据小说id和章节数进行查询获取相关的章节内容并在小说阅读界面里通过el表达式拿出来,展现在小说阅读界面。4.5作者对小说的管理的功能实现(1)下图4.5是作者登录后点击我的作品展现的界面,除操作以外,其他栏目均是小说的基本信息,操作里包括修改小说信息以及上传章节。图4.5作者查看我的作品界面图如图4.5所示,界面包括作者作品的的基本消息包括封面,Id,书名,总点击数,总收藏数等等,点击上传章节,即会跳转到上传章节的界面,点击修改,也会跳转到修改小说信息的界面。(2)以下是作者对小说进行修改的功能代码实现bookinfo.setBookimgPicPath(logoPicPath);bookinfo.setBookimgLocPath(logoLocPath);try{if(authorService.addbookimg(bookinfo)){return"author/authorbook";}}catch(Exceptione){//TODOAuto-generatedcatchblocke.printStackTrace();}return"author/authorbook";代码简单描述:在获取小说修改页面的图片上传路径后,将相对路径和绝对路径保存到bookinfo里,在小说修改页面里点击提交按钮,提交表单后,执行操作authorService.addbookimg(bookinfo)将bookinfo里的值添加到数据库的变更审核表。(3)以下是作者对小说进行上传章节的功能代码实现@RequestMapping(value="/doaddchapter",method=RequestMethod.POST)publicStringaddchapter(Bookinfobookinfo){try{authorService.addchapter(bookinfo);}catch(Exceptione){e.printStackTrace();}return"author/addchapter";}代码简单描述:作者在上传章节的界面里填写内容后,点击上传按钮提交表单,执行操作authorService.addchapter(bookinfo);将表单内容添加到数据库的章节审核表里。4.6读者小说书架管理的功能实现(1)如图4.6所示,读者的小说书架主要内容包括小说封面和小说名,鼠标移动到小说封面后弹出遮罩层,遮罩层上包括两个链接,立即阅读和取消收藏。图4.6读者书架界面图如图4.6所示,遮罩层上有两个链接,点击立即阅读即可跳转到小说目录界面,点击取消收藏,即可将本书从书架里删除。(2)以下是读者加入书架的功能代码实现@RequestMapping(value="/doaddbookshelf/{id}/{bookname}",method=RequestMethod.GET)publicStringaddbookshelf(@PathVariableIntegerid,@PathVariableStringbookname,HttpSessionsession){List<Bookshelf>bookshelves=null;try{bookShelfService.addBookShelf(id,bookname);bookshelves=bookShelfService.getBookShelf(id);}catch(Exceptione){e.printStackTrace();}session.setAttribute(Constants.Reader_BOOKSHELF_SESSION,bookshelves);returnnull;}代码简单描述:读者登录后点击小说目录界面的加入书架按钮,执行两个操作bookShelfService.addBookShelf(id,bookname);将小说书名内容添加到数据库书架表里,同时bookshelves=bookShelfService.getBookShelf(id);session.setAttribute(Constants.Reader_BOOKSHELF_SESSION,bookshelves);获取读者的书架信息,更新读者的书架session。

第五章系统测试5.1系统测试本节系统测试主要包括以下内容:测试的意义,测试的目的,软件测试的方法。5.1.1测试的意义由于现在人们对于软件的质量要求越来越高,软件的系统测试非常重要,它可以排除一些隐蔽的错误,避免用户在使用时的一些错误请求,而跳转到错误界面。5.1.2测试的目的这个测试是为了找出这个软件有什么问题。系统检测中出现的错误种类繁多,根据其程度和本质可以分为功能错误、系统错误、过程错误、数据错误、编码错误等几种类型,这些类型的错误都是用来查找错误的。软件工程导论张海潘,牟永敏编著.-6版.-北京:清华出版社,2013(2017.12重印)软件工程导论张海潘,牟永敏编著.-6版.-北京:清华出版社,2013(2017.12重印)5.1.3软件测试方法本系统是采用按照软件开发的阶段的测试方法,因而本系统在交付运行之前要进行单元测试、集成测试和系统测试。5.2测试计划黑盒测试着重测试软件功能,黑盒测试并不能取代白盒测试,它是与白盒测试互补的测试方法,它很可能发现白盒测试不易发现的其他类型错误[40]。小说网系统的具体测试计划如下:测试1:名称:网站轮播内容替换测试目的:测试网站轮播内容能否正常替换内容:在网站轮播管理界面里替换网站轮播内容。测试2:名称:编辑审核章节测试目的:测试编辑审核通过章节后能否在小说目录界面看到小说章节内容:编辑审核章节点击审核通过,查看小说目录界面。测试3:名称:网站管理员对小说进行封禁的测试目的:测试网站管理员对小说进行封禁的操作内容:网站管理员点击小说的封禁按钮,查看小说书库是否出现该小说。测试4:名称:小说加入书架功能测试目的:测试小说能否正常加入到读者书架里内容:在小说目录界面里点击加入书架按钮,查看读者书架。测试5:名称:小说阅读界面获取章节内容功能测试目的:测试小说阅读界面能否正确获取小说章节内容内容:在小说目录界面点击章节目录里的章节标题进行阅读。5.3系统测试用例本节内容包括网站轮播内容替换测试,编辑审核章节测试,网站管理员对小说进行封禁的功能测试,小说加入书架功能测试小说阅读界面获取章节内容功能测试。5.3.1网站轮播内容替换测试功能描述:网站管理员点击网站轮播管理,跳转到网站轮播管理的界面,选择要上传的图片和小说书名后,点击替换即可完成网络轮播管理的操作。表5.1网站轮播内容替换测试用例表序列测试目的测试输入测试结果测试说明测试updatewapper()能否正常执行点击浏览按钮,选择图片,填写书名文本框网站轮播内容成功替换,服务器静态资源文件夹旧图已删除,数据库成功更新上传文件超大,和上传文件格式错误均有提示。如表5.1所示,该测试用例是为了测试网站管理员替换网站轮播内容时,提交的表单触发的方法updatewapper()。5.3.2编辑审核章节测试功能描述:编辑在作者提交新章节后,点击章节审核,审核内容后,点击审核通过按钮,新章节即可通过审核,并在小说目录界面里显示。表5.2编辑审核章节测试用例表序列测试目的测试输入测试结果测试说明测试addchapte()方法是否正常执行点击章节审核界面里的审核按钮,点击审核通过按钮成功将新章节的内容添加的数据库里,同时在小说目录界面也成功显示出来如表5.2所示,该用例测试是为了测试编辑在点击审核通过按钮时,触发的方法addchapte()。5.3.3网站管理员对小说进行封禁的功能测试功能描述:网站管理员在小说管理页面里点击封禁按钮,对小说进行封禁。表5.3对小说进行封禁的测试用例表序列测试目的测试输入测试结果测试说明测试setbookstatus()方法能否正常执行网站管理员在小说管理界面,点击封禁按钮。成功将小说的状态变为封禁,网站内也无法搜索到封禁小说的内

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论