1.结合毕业设计(论文)课题情况,根据所查阅的文献资料,每人撰写不少于1000字的文献综述:
一、选题的背景和目的
ACG,即Animation(动漫),Comic(漫画)和Game(游戏)的缩写,是动漫、漫画、御宅想游戏的总称,也被称之为二次元文化。ACG文化最早起源于日本,但ACG这个词汇确实由台湾一出版社使用的。随着社会的发展,网络的日益普及,人们的娱乐方式也更加多样化,越来越多的人有机会接触到ACG文化,不仅仅是动漫,手游产业的兴起,各大漫展也在全国各地举办,使得二次元领域得到了进一步的扩张,尤其是在我们这些90后、00后之间。
因此,开发这样一个高效的专门提供ACG周边的交易平台是有一定的市场前景的。本平台的优点是,不仅可以为一些资深ACG圈的用户提供一个购物平台,更是针对一些初入圈子的新人用户来提供更加贴心的服务。许多初入ACG圈子的新人面对大量的信息和商品可能会感到不知所措,本平台可以根据其喜好、浏览的记录来智能的推荐一些商品来满足用户的需求,使得用户有更好的购物体验。
二、文献综述
70年代末,随着电脑硬件和电脑图形图像软件的发展,电脑游戏因运而生。90年代起动画和漫画的制作开始普遍使用电脑,由因特网的普及带动了网络游戏;21世纪,有迎来了手机的动漫游戏时代。随着新科技、新媒体以及新的商业模式的起步,新产业的发展无可限量[1]。
2.系统实现的技术的演变
基于如MVC架构模式的抽象模型,我们可以将该架构模式发展如下三个阶段:
阶段一:Servlet阶段
在该阶段架构模式中,Servlet/Filter扮演Controller角色,JSP扮演View角色,JavaBean扮演Model角色[7]。该阶段的数据库访问技术为具体DB的JDBC,该模式虽然实现了所谓的MVC模式,但却存在诸多问题:1.前后端分离不彻底。由于JSP技术前后端分离不彻底,开发人员往往会在JSP页面中嵌套Java代码,从而需要前端开发人员懂java技术。2.JSP页面可读性差,编写效率低,尽管引入EL,JSTL等技术[8][9]。3.Sevlet/Filter作为控制器,面临的稳定性,安全性考验(Servlet是线程不安全的)等。
阶段二:SSH(Spring+Structs+Hibernate)阶段
在该架构模式中,Controller采用Spring框架技术,View采用Structs框架技术,DB访问技术采用Hibernate框架技术[10]。从SSH中,很容易看出前后端出现了专业化,精细化分工,且朝框架演变,如前端框架采用Structs,后端框架采用Spring等。然而,SSH架构模式虽然解决了Servlet/Filter架构模式存在的问题,实现了专业化、精细化分工,实现了模块化和抽象化,但其却存在一个比较大的问题:框架笨重不灵活。如Hibernate虽然能满足业务需求,能解决业务,但其笨重不灵活,不能很好地实现可配置化的灵活方式,Structs也过于笨重。
阶段三:SSM阶段(Spring+SpringMVC+Mybatis)阶段
该模式中,Spring扮演Controller角色,SpringMVC扮演View角色(当然,小型系统,可直接采用SpringMVC即可),Mybatis扮演DB访问技术SSM架构模式。在当前的JavaEE中,算是比较流行的开发模式了,也是大都数企业的技术选型之一[11]。SSM框架的优越性我们可以从他与SSH框架之间的对比中看出,不难看出两者的区别在于Structs与SpringMVC、Hibernate与Mybatis之间的差异。
1.与SpringMVC相比,struts2开发较为简单,但是能力较弱,而且存在一些bug和漏洞,而且性能较差,一些对form表单提交的封装和一些页面语法的支持导致性能偏弱,spring-mvc处理请求能力强大一些,性能高许多,而且spring-mvc能够更好的整合进入spring中,不像struts2还需要一些插件;所以综上所述,其实spring-mvc在综合能力上是远超struts2的,目前struts2基本以快被spring-mvc淘汰了。
由此我们基本可以判断当下SSM框架比SSH框架更有优势,最主要的还是学习成本更低,所以我选择使用SSM框架来完成本次的课题。
3.国内外推荐算法的研究现状
推荐算法的研究一直是学术界一个炙手可热的话题,在深度学习兴起之前、推荐系统一直采取传统的机器学习方法来进行推荐,其基本思路是利用已经收集到的用户的行为举证来对未知的用户-物品评分进行预测,然后选取具有最高评分的物品向用户进行推荐。随着电子商务的发展,推荐成了一种新兴的市场需求。根据用户兴趣进行推荐可以有效提高其购买力,促进一些潜在用户的增加。很多电子交易平台比如:亚马逊、京东等都利用此算法以推荐用户感兴趣的信息。协同过滤算法是推荐系统领域热度很高的算法。根据挖掘资源对象的不同,协同过滤推荐算法可以分为基于用户的协同过滤算法和基于物品的协同过滤算法。基于用户的协同过滤算法主要包含两个步骤:1.找到和目标用户兴趣相似的用户群;2.找到这个用户群中用户喜欢的,而目标用户没有看过(听过\点击过)的物品推荐给该用户——当然还需要给出一个顺序。基于物品的协同过滤算法与基于用户的协同过滤算法主要区别在于其对象是物品。
4.特色功能
三、参考文献
[1]许可葭,陈姗,章彰.基于用户研究的未来ACG产业发展初探[J].华东理工大学艺术设计与传媒学院,2017
[2]张雪.日本动漫的文化特征及其对中国动漫的发展启示[D].吉林大学2008
[3]黄哲.ACG御宅文化的发展以及流行原因再探析[J].湖北函授大学学报.2015(16)
[4]李常庆.日本现代漫画出版研究[J].北京大学学报(哲学社会科学版).1999(05)
[5]EntertainmentSoftwareAssociation.2019EssentialFacts,AbouttheComputerandVideoGameIndustry[R].EntertainmentSoftwareAssociation,2019
[6]陈强,腾莺莺.日本动漫在中国大陆传播分析[J].现代传播(中国传媒大学学报).2006(04)
[7]冯锡炜,侯彤璞,张飞侠.Servlet技术在Web应用中的实现[J].辽宁工学院学报.2005(01)
[8]杨旭.JAVA编程语言在计算机软件开发中的应用[J/OL].电子技术与软件工程,2018,(07):59-60.
[9]耿祥义.JSP基础编程[M].清华大学出版社,2004.55-162
[10]赵洋,张丽,王恩东,张素宁.基于Structs+Spring+Hibernate的J2EE的架构研究[J].现代电子技术,2009,2(289):107-110.
[11]王艳清,陈红.基于SSM框架的智能web系统研发设计[J].计算机工程与设计,2012,33(12):4751-4757.
[12]J.Ebert,G.Vossen.Objectconfigurationsinsoftwareengineeringdatabases[J].EngineeringwithComputers,1997,13(3).
[13]魏应彬,周星.《网页设计与Web数据库发布技术》清华大学出版社,2002.
[14]贺春旸.MySQL管理之道:性能调优、高可用与监控[M].北京:机械工业出版社,2016.
[16]ParsaHeidaryMoghadam,VahidHeidari,AliMoeini,AliKamandi.Anexponentialsimilaritymeasureforcollaborativefiltering[J].SNAppliedSciences,2019,Vol.1(10),pp.1-4
2.本课题要研究或解决的问题和拟采用的研究手段(途径):
一、本课题的研究目标
本课题要研究或解决的问题:设计并实现一个基于SSM框架的ACG周边交易平台。近几年来,随着人们思想觉悟以及生活水平的提高,上网已是人们生活中不可缺少的部分,如今的计算机已经走进了千家万户,对于大多数来说,可以足不出户的在自己的计算上上查看自己喜欢的商品,并购买商品已经是很普遍的了。因此,网购得到了飞速的发展,已经成为当下的潮流趋势。本交易平台设计的目的就是在于通过互联网为用户提供一个更加高效、贴心的专门贩卖ACG周边的交易平台,使得用户能够有更好的购物体验。
二、关键技术和难点
1.系统整体的框架
2.系统界面的优化与设计
作为一个交易平台,人性化的设计和美丽的外观是十分必要的。首先,我会使用大量的div标签,使界面更加条理清晰。页面将使用CSS样式表,添加许多的Jquery插件来美化界面效果,例如滚动、轮播图片等,前台的设计还将采用JS,Layer等开发语言。
3.智能推荐模块
该模块的实现主要采用基于物品的协同过滤算法,他主要利用用户对物品的兴趣来找到相似的物品,然后根据用户的历史兴趣,给该用户推荐相似的物品。主要分为两个步骤:
(1)根据用户对物品的历史行为计算物品相似性,然后生成近似物品集合;
(2)根据用户的行为,生成推荐列表。
三、现有的研究基础
四、实施方案
1、系统架构
本系统的实现使用SSM框架,即Spring,SpringMVC和MyBatis,使用MVC的三层架构模式,首先在浏览器发出请求,控制层为Controller进行控制,负责具体的业务模块流程的控制,调用Service层的接口控制业务流程。之后到业务逻辑层,也就是Service层,主要负责业务模块的逻辑应用设计。持久层也就是DAO层,该层所做事务直接操作数据库,针对数据的增添、删除、修改、更新、查找等。然后响应的数据显示在JSP页面。系统的总体架构图如图1所示。
图1总体架构图
2、总体结构
本课题主要分为前端和后端两大模块,前端由客户进行使用来完成商品的交易,后端由管理员进行操作。结构如下图2所示:
图2总体功能图
前端功能模块:
后端功能模块:
用户管理功能、商品管理功能和订单管理功能。
3、各个功能详细设计及流程图
(2)注册时会检测帐号和密码的格式是否正确,帐号是否重复,密码需要进行2次确认是否相同。在密码确认正确过后用户需要填写一些身份信息,比如姓名、身份证号等。最后系统还会随机生成验证码进行验证,只有当所有操作无误时才可能注册成功。
流程图如下图3所示:
个人中心功能:
(1)用户可以在对自身的个人信息进行编辑和修改。
历史浏览记录功能:
用户在该模块可以查看自己之前浏览商品的历史记录,可以按日期进行筛选。
(1)用户可以在购买完商品后对这次交易进行评价或者后续追加评价。
流程图如下图4所示:
图4用户个人中心流程图
商品管理功能:
(1)用户可以在平台上检索自己想要商品。检索的方式分为2种:一种是关键字查询,另一种是通过网页上的商品分类来进行跳转。
(2)在商品的列表页面上,会按自上往下的顺序依次陈列出符合条件的商品,可以使用滑轮上下拖动页面,一页可以显示的最大商品数目有限制。该页面只会展示出商品的一些简单信息,例如缩略图片、名称、价格,点击后可进入该商品的详细展示页面。该界面可以按照商品的一些信息(如价格)来进行升、降排序。
(3)在商品的详细展示页面上,用户可以看到关于商品的更多详细信息,例如滚动图片、更加细致的介绍等,在该页面用户可以将商品选入购物车内。
识别功能:
用户可以通过对人物的一些外模特征,甚至台词来识别该人物的出处,方便一些新手用户进行操作。
智能推荐功能:
在商城主界面上,用户可以点击智能推荐这一功能,系统会自动跳转到推荐结果的页面,由于根据动态信息来进行推荐,即推荐的过程是自动的,推荐结果的产生是系统从用户的购买行为或浏览记录等隐式信息拿到的,无需用户通过填表格等方式来明确自己的喜好。如果用户推荐的结果不满意,还可以选择使用手动的方式来搜索商品。
流程图如下图5所示:
图5智能推荐及用户选购流程图
购物车功能:
(2)点击下单后系统自动跳转至支付界面,并生成订单信息。
(3)支付界面会自动生成二维码。
订单功能:
(1)用户可以在此功能下进行订单的地址管理,即增加地址、修改地址和删除地址。
(3)用户可以在这里查看订单当前的状态以及历史订单记录。
流程图如下图6所示:
图6用户提交订单流程图
用户管理功能:
管理员可以在此功能下对用户的账号信息进行管理,例如可以查看到用户的身份信息、历史浏览记录和订单信息等。
(1)管理员可以查看商品信息,对其进行修改,例如对商品的描述、数量和照片进行修改
(2)管理员可以上架、下架商品。
订单管理功能:
(1)管理员可以查看订单当前的状态。
(2)管理员可修改订单的状态,并将其发送到用户方。
(3)管理员能够查看总的订单列表。
流程图如下图7所示:
图7管理员业务流程图
特色功能的设计:
4、数据库设计
E-R图是抽象和描述显示世界的有力工具。用E-R图表示的概念模型独立于具体的DBMS所支持的数据模型,它是各种数据模型的共同基础,因而比数据模型更一般、更抽象、更接近现实世界。
用户总体E-R图如下图8所示:
图8用户总体E-R图
确定实体集:
(4)购物车实体集:用户编号、商品编号、商品数目、商品名称、商品总价格等。
五、可行性分析
本交易平台采用的是B/S模式,用户不需要安装客户端,只需通过浏览器就可轻松访问平台,极大的提高系统的兼容性。在技术方面,该系统采用SSM框架技术来开发的,该技术现已成熟,可以在各大公司中看到其身影。该框架将系统分成Dao层、Service层、Controller层以及View层,由于Dao层、Service层都可以单独开发,互相的耦合度很低,完全可以独立进行,这样的一种模式在开发大项目的过程中尤其有优势,这种模式不管是安全角度还是开发角度来看都是一种很好的选择,这点已从大量的项目中得到证实。