摘要:在这个信息技术发展得如火如荼的带领下,网络平台充满着无限的商机。近几年的书画交易市场存在价格虚高,出现一些不够公开和透明的的因素左右了书画艺术市场作品交易,这种不健康的书画艺术作品交易让很多书画作品爱好者望而止步。本着让书画艺术作品交易公平和合理的态度,针对书画作品交易等问题,对书画作品交易进行研究分析,然后开发设计出书画拍卖系统。
书画拍卖系统是基于SSM框架进行开发,根据WEB应用的特点,采取B/S结构,后台数据库使用MySQL数据库。首章先对书画拍卖系统的背景和意义进行介绍;之后又针对书画拍卖系统一些重要的系统化的需求进行了一些详细的研究与分析,接着阐述了为书画拍卖系统的实现进行功能模块方面的设计,然后对数据库方面的设计也进行了详细的探讨与分析,最后顺利开发完成书画拍卖系统,并对模块功能进行了测试。书画拍卖系统主要功能模块包括书画作品竞拍、书画作品搜索、留言发表、作品评论、个人信息管理,能很好的满足实际使用的需求。
书画拍卖系统的开发,恰恰是为了解决书画作品交易公开、公正的问题,其次是书画作品爱好者有更多的选择可以根据自己的需要找到符合自己的作品来交易,不必因地域的限制交易不到自己想要的书画作品;一些没有名气的作品创作者或者卖家也可以找到适合自己的交易对象。这大大提高了书画作品交易的满意度和成功率,对于作品创作者和书画作品爱好者是一个双赢的方式。
关键词:竞拍,书画,交易
Design and implementation of the beacon calligraphy and painting auction system
Abstract:Under the leadership of this information technology development ,the network platform brings endless business challenge. In recent years, the painting and calligraphy trading market has been exorbitantly priced, and there are some factors that are not open and transparent, which have influenced the painting and calligraphy art market works trading. This unhealthy painting and calligraphy art work has made many calligraphy and painting lovers stop. Based on a fair and reasonable attitude to make paintings and calligraphy works of art fair, and in response to issues such as paintings and calligraphy works, research and analysis of paintings and calligraphy works, then develop and design a painting and calligraphy auction system.
This design is developed based on the SSM framework. According to the characteristics of the WEB application, it adopts the B / S structure. The background database uses the MySQL database.In the first place first describe the background and significance of the calligraphy and painting auction system. Afterwards, some detailed research and analysis were conducted on some important systematic needs of the calligraphy and painting auction system, next the design of functional modules for the realization of the calligraphy and painting auction system is explained.and database design is also discussed and analyzed in detail.Finally, the painting and calligraphy auction system was successfully developed and the module functions were tested. The main function modules of the painting and calligraphy auction system include the auction of paintings and calligraphy works, search for paintings and calligraphy works, message posting, work reviews, and personal information management, which can well meet the needs of practical use.
The development of the calligraphy and painting auction system is precisely to solve the problem of open and fair works of calligraphy and painting works. Secondly, lovers of paintings and calligraphy works have more choices to find works that meet their own needs. To the paintings and paintings that you want; some creators or sellers of unknown works can also find suitable trading targets for them. This greatly improves the satisfaction and success rate of painting and calligraphy works transactions, which is a win-win way for the creators and lovers of paintings and calligraphy works.
Key words: Auction, Painting and Calligraphy, transaction
第1章 绪 论 1
1.1研究背景和意义 1
1.2研究现状 2
1.3研究的主要内容 2
第2章 系统需求分析 4
2.1可行性分析 4
2.2系统功能需求分析 4
2.2.1前台用户功能分析 5
2.2.2后台管理员功能分析 6
2.3UML系统建模 6
2.3.1用例图 6
2.3.2用例图规约表 8
2.4非功能需求分析 14
2.5本章小结 14
第3章 系统设计 15
3.1系统架构设计 15
3.2系统功能设计 15
3.3系统类图 16
3.4系统顺序图 17
3.5系统活动图 19
3.6数据库设计 22
3.7本章小结 24
第4章 系统实现 25
4.1数据库访问层的实现 25
4.2注册模块的实现 25
4.3登录模块的实现 26
4.4个人信息模块的实现 27
4.5留言模块的实现 27
4.6竞拍书画商品模块的实现 28
4.7书画商品管理模块的实现 29
4.8订单管理模块的实现 29
4.9本章小结 30
第5章 系统测试 31
5.1测试的意义和目的 31
5.2测试计划 31
5.3系统测试用例 32
5.4本章小结 34
第6章 总结与展望 35
参考文献 36
致谢 37
1.1研究背景和意义
当前,伴随着网络服务技术发展的时代潮流,人们对外界的认识途径有了各种各样的方式,他们对服务的需求不再是以前的传统方式了,普通的物质需求已经不能满足人们的精神愉悦了,他们在逐渐寻找能够满足自己精神享受的活动。然而近几年,在中国艺术作品发展的浪潮下,书画艺术作品收到越来越多的收藏爱好者喜欢。但是,很多书画爱好者表示,直接从卖家手中交易书画作品,作品价格要比原来书画家手里要贵很多,甚至要翻几番。书画艺术作品交易价格比较混乱,价格不合理,书画艺术作品的交易市场处于一种不能接受的程度,这种不公平的要价自然不被书画爱好者认可。
关于一些现在作者创造的书画作品价格的定制和现在存在的市场认同程度其实存在了比较大的差距的,这其中主要通过三种表达方式,第一种对于艺术作品的作者本身自己去定制价格作为一个其对外展示的标准,现实中对于销售市场上这样的方式很简便灵活,虽然可能会与宣传的润格相差比较远,市场价格通常会与画家所定制的润格进行连接,这使得画廊和拍卖行可以获得高额利润。第二种就是走高端路线的画家,这一类高端路线的画家并不需要将作品流入市场,收藏他们画作的一般都是些有钱有势的达官贵人,也在一定的情况下能让画家把润格保持在自己的定价之内。艺术品不同于普通实用在生活以及生产用品中,这是它最大的一个特点,也是区别于标准化的一个不同的特点。而且艺术品最大的价值是在于精神上的洗礼,而不是在于其创造了多大的物质价值,可以这样说,没有任何一个标准或者机构能让一个艺术品去指定它的价格。
现在市场上会有一些机构去进行拍卖,也会定时的举办一些拍卖活动,他们举办一场拍卖会成本很高,征集、宣传、人力等使得拍卖会很难举办好一场领书画爱好者满意的拍卖会,而且由于地域的原因,书画作品收藏爱好者不完全会去一些拍卖会;而且由于有一些机构会举行假拍的现象,在很多人眼里,拍卖机构赚很多钱,需要一种更加公开和公平的方式。
在这样的方式中,网上拍卖是我们耳目一新的一种体验方法,这样的一种体验方法给我们一种新鲜的感觉而且前所未有,它不仅具有一般购物网的特点,更重要的是带给我们一种更加自由灵活和公平合理的方式。
一些书画艺术创作者或者书画的卖家可以把自己喜欢的作品图片及作品相关的信息发在网站上去供买家进行挑选,书画的买主通过网站可以买到自己喜欢的画作然后就行竞拍,这样的网络交易买卖方式,可以让画作的卖家得到自己希望的公平的成交价格,买家也能找到适合自己需求的作品。
通过这种交易方式:
1)买卖的两边在公允公道的情况下进行买卖,不需要其他费用,可以取消地域方面的受限,买卖双方两边可以本身选择买卖伙伴,节约了许多不必要的时间和资金。
2)交易的双方在公平公正的情况下进行交易,不需要其他费用,另外可以借助用户的的力量来营造一个可靠的环境,双方可以自己选择交易伙伴。
3)用户可以在网站上随意浏览,不需要去和其他的商家相比较;卖方不需要为每个客户进行说明。在此基础上,如果双方都对买卖感兴趣,可以进行进一步的讨论。
1.2研究现状
随着越来越多的人进入书画艺术作品收藏领域和国内产出的书画艺术作品数量稳步增多,国内书画拍卖市场呈现出欣欣向荣的现象,书画艺术作品交易也成为了新的热点。 尽管书画作品艺术品交易的市场状况很好,但经过进一步研究发现,部分书画拍卖不可避免地存在一定的人为因素。例如,书画拍卖现场的出价是典型的疑问点,特别是在期间增加过大的情况下,这个涨价基准是否合适呢?这些看似常规的书画拍卖现象,却呈现出一种不同寻常的状态。国内书画拍卖市场存在一些不规范,不尽人意的地方和漏洞,有待整改完善。
1.3研究的主要内容
在进行系统研究和设计期间,为了查阅有关的报告和文献资料以及一些期刊运用了搜索引擎去进行寻找和搜寻,结合国内的环境状况,进行分析比较,了解了本系统开发的背景以及设计系统的意义所在,使本系统能符合国内的用户需求。其次,系统主要在IDEA平台上采用当前企业级SSM[[[]李刚.轻量级JavaEE企业应用实战.电子工业出版社,2016.]]框架来实现可视化的书画拍卖系统。系统主要实现书画拍卖系统获取用户信息、书画商品展示(包括作品分类展示)、搜索书画商品、书画商品竞拍、发布书画拍品、订单管理、个人信息管理等几个模块,使书画作品拍卖变得便捷和公开,提高成交书画作品的成功率,在人力和物力上可以显著节约资源,同时使得网上书画拍卖公开化和透明化。书画拍卖系统的主要研究内容如下:
1)利用IDEA[[[]MartinM,LamMS.AutomaticGenerationofXSSandSQLInjectionAttackswithGoal-directedModelCheckingUsenixSecuritySymposium,July28-August1,2008]]平台、B/S体系结构[[[] 徐明华.Java Web整合开发与项目实战[M].北京:人民邮电出版社,2009.]],Spring[[[]计文柯.Spring技术内幕:深入解析Spring架构与设计原理(第2版).机械工业出版社,2015.]]、SpringMVC[[[]周燕玲.Spring MVC框架开发WEB应用程序的探索与研究[J] 科技广场. 2016(06)]]、MyBatis[[[]李杉,贾彦平,达虎. Mybatis逆向工程在JavaEE中的应用[J]. 通讯世界,2017]]企业级框架、MySQL[[[]Mhruti Hegde,HowToDdesignAWebSurveyUsingSpring BOOTWith MySQL: Journal of the American College of Cardiology, 2013,
]]数据库实现一个实时的书画拍卖管理系统。
2)对网上书画拍卖进行了调查和研究分析,并在需求分析的基础上进行系统的详细设计,包括了系统的总体架构设计,系统功能设计,数据库设计。
3)如何构建一个让书画作品爱好者体验良好、结构清晰的书画拍卖系统以及对系统实现的主要技术进行展述。
随着人们生活质量的和文化修养的提高,受到文人喜爱的画作和绘画作品慢慢出现在普通百姓的家中,书画作品交易也如火如荼。越来越多的人喜欢珍藏书画作品,收藏书画作品除了也是一项投资之外,更重要的是收藏书画作品能给人们带来精神层面的享受和艺术情操的陶冶。这样的系统一般来说就是针对于许多小规模的拍卖书画的系统就可以,这个系统全都考虑了用户对于拍卖中的使用方法和习惯,这样可以让用户很快去学习和使用本系统,我们的系统有着发布书画商品拍卖,竞拍等一站式完成的功能,在一些小规模的书画交易市场中发挥良好的作用。
2.1可行性分析
1).技术性方面,采用当前主流的SSM框架进行系统主体框架的搭建,前台使用Bootstrap框架实现系统页面的设计与美观调整,在部署方面选择以容器的方式进行部署,并使用kubeneters容器管理平台进行容器编排,以上技术,均由本人经过系统学习,并且都是在课程设计中和工作实习中实践过的,可以使得开发更加便捷和系统。
2).实用性方面,本次设计的主要任务是在书画拍卖系统内书画商品竞拍、书画商品搜索、留言发表、个人信息管理等,符合当前的发展趋势。从用户收藏艺术品的角度出发,有些书画作品爱好者因存在着捡漏意识、地域限制导致与符合心水的书画作品失之交臂,而且越来越多的工薪族开始进入书画艺术品收藏领域,很多人把书画收藏和投资书画艺术品作为提升自己物质生活和文化生活水平的一种手段。在这方面的趋势下,搭建书画拍卖系统可以很好地为他们提供这方面的平台。
2.2系统功能需求分析
书画拍卖系统的功能主要分为前台用户根据自己的需求进行注册登录,浏览书画商品信息并对选中的商品进行竞拍操作。后台系统管理员主要进行注册用户、书画商品审核、拍卖详细信息进行处理。
书画拍卖系统功能模块图如下:
图2.1 系统功能模块图
2.2.1前台用户功能分析
前端用户可分为未注册用户需求和已注册用户需求。
未注册用户的功能如下:
(1).注册账号:注册信息时,用户必须提供注册所需的信息并输入符合格式的个人信息(包括用户名、电话号码、密码、真实姓名、性别、地址等)。
(2).浏览书画商品:系统用户如果要浏览书画商品信息,可以选择要浏览的商品类型,然后选择目标书画商品来查看商品信息。
已注册用户的功能如下:
(1).登录:根据用户账号密码进行登录操作。
(2).个人信息管理:系统用户可以根据自己的需求变化随时变更个人信息以及修改密码。
(3).浏览书画商品:系统用户如果要浏览书画商品信息,可以选择要浏览的商品类型,然后选择目标书画商品来查看商品信息。
(4).书画商品竞拍:用户根据自己的喜好选中某个书画商品进行竞拍操作,用户竞拍成功之后可以查看订单信息(包括订单状态)。
(5).发布竞拍商品:用户可以发布要拍卖的书画商品,对商品信息进行维护,添加、删除、修改信息等。
(6).留言:用户可以根据自己的观点看法对相关书画商品进行留言。
2.2.2后台管理员功能分析
系统管理员功能如下:
(1).书画商品管理:对用户上传的书画商品进行审核管理。
(2).订单管理:对订单信息进行维护,添加、删除、修改信息。
(4).会员管理:可以查看和管理已注册用户的信息。
(3).留言管理:可以查看用户的留言,及时了解用户发起的建议。
2.3UML系统建模
2.3.1用例图
图图2.2系统用例图
书画拍卖系统用例图如下图2.,2所示。
游客用例图如下图2.3所示,
图2.5 系统用例图
2.3.2用例图规约表
游客用例规约表
表2-1注册用例规约表
用例编号 2-1 用例名称 注册
功能描述 游客注册成为会员用户
执行者 游客
前置条件 游客还没有注册成为会员用户
后置条件 新用户信息保存到系统中,游客便可登录到系统中
涉众利益 游客
基本事件 1.游客:游客请求注册
2.书画拍卖系统弹出用户注册页面
3.用户输入个人信息,包括用户名、密码、联系电话\、用户地址并选择注册
4.系统保存注册信息
5.角色变为用户并成功进入系统。
扩展 1.用户输入的注册信息不完整,其中某一项没有填写,并选择注册,系统给出提示信息
2.用户输入的注册信息不符合格式要求,并选择注册,系统给出提示信息
3.游客选择取消,系统返回注册页面
4.如果系统已经有重名的用户名,系统不保存新建的用户,系统给出提示信息:”此用户名已存在”
字段列表 用户名、密码、联系电话、邮箱、出生日期
备注 无
会员用例规约表
表2-2登录用例规约表
用例编号 2-3 用例名称 登录
功能描述 用户登录系统
执行者 会员
前置条件 用户已注册
后置条件 用户登录系统
涉众利益 会员
基本事件 1.会员请求登录
2.书画拍卖系统弹出用户登录页面
3.用户输入账号、密码,并选择确定
4.系统校验登录信息,返回系统主界面
扩展 1.用户输入的信息不完整,如某一项没有填写,并选择确定,系统给出提示信息
2.用户输入的信息不符合格式要求,并选择确定,系统给出提示信息
3.用户输入的账号密码不对应或没有此账户时,则系统给出提示信息
4.系统校验时出现系统故障,系统弹出系统异常页面,提示用户登录失败
字段列表 用户:用户名、密码
备注 无
表2-3个人信息用例规约表
用例编号 2-4 用例名称 个人信息
功能描述 会员个人信息管理
执行者 会员
前置条件 用户已注册
后置条件 用户修改个人信息
涉众利益 会员
基本事件 1.用户请求查询个人信息,系统弹出用户个人信息页面
2.用户根据个人的信息选择相应的某一项进行修并选择提交
3.用户请求更改密码,系统弹出修改密码页面,提示用户输入旧密码和更改新密码
扩展 1.用户选择取消,系统返回首页
2.用户输入的信息不符合规则,给出提示信息,要求重新输入
3.系统保存信息时出现系统故障,提示用户修改个人信息失败
字段列表 用户名、密码、联系电话、邮箱、出生日期
备注 无
表2-4浏览书画商品用例规约表
用例编号 2-5 用例名称 浏览书画商品
功能描述 用户浏览书画商品
执行者 会员
前置条件 用户已注册
后置条件 用户登录系统
涉众利益 会员
基本事件 1.会员请求浏览书画商品
2.书画拍卖系统弹出浏览页面
3.点击书画图片即可进行浏览详细的书画商品信息
扩展 1.浏览书画作品图片时出现系统报错,例如网络错误、服务器故障、系统弹出“系统异常页面”,提示游客浏览书画商品失败
字段列表 商品名称、商品类型、商品价格
备注 无
表2-5书画商品竞拍用例规约表
用例编号 2-6 用例名称 书画商品竞拍
功能描述 用户选择对应的书画商品进行竞拍
执行者 会员
前置条件 用户已登录系统
后置条件 用户已选择对应书画商品
涉众利益 会员
基本事件 1.会员浏览书画商品,选择对应的书画商品
2.点击详情,系统弹出竞拍页面,查看详细的书画商品信息(包括书画商品留言信息)
3.会员输入相应的金额,点击加价对书画商品进行竞拍
扩展 1.用户余额不足时点击充值可以进行充值
2.竞拍书画商品出现系统故障,例如网络故障、服务器故障、系统弹出“系统异常页面”,提示会员竞拍书画商品失败
字段列表 商品图片、商品名称、商品底价
备注 无
表2-6发布竞拍书画商品用例规约表
用例编号 2-7 用例名称 发布竞拍书画商品
功能描述 会员可以发布自己的书画商品到系统上进行拍卖
执行者 会员
前置条件 用户已登录系统
后置条件 用户点击我发布的商品可以查看用户上传的商品
涉众利益 会员
基本事件 1.会员点击发布拍卖书画商品,系统弹出发布拍卖书画商品页面
2.会员输入相应的书画商品信息(包括商品名称、底价、种类、商品描述、图片),点击上传
3.会员在我发布的商品可以查看已发布的书画商品(包括审核通过和审核未通过的)
扩展 1.发布竞拍书画商品出现系统报错,例如网络错误、服务器故障、系统弹出“系统异常页面”,提示会员发布竞拍书画商品失败
字段列表 商品名称、价格、种类、商品描述
备注 无
系统管理员用例规约表
表2-7管理员登录用例规约表
用例编号 2-8 用例名称 管理员登录
功能描述 管理员登录系统后台
执行者 系统管理员
前置条件 系统管理员的账号在数据库中授权
后置条件 管理员登录状态进入系统后台管理页面
涉众利益 管理员
基本事件 1.系统管理员进入管理员登录页面
2.管理员输入管理员账号、密码,并选择登录按钮
3.系统检验登录信息
扩展 1.管理员输入的信息不符合格式要求,并选择确定,系统给出提示信息
2.管理员输入的账号密码不对应或没有此账户时,则系统给出提示信息
字段列表 管理员:用户名、密码
备注 无
表2-8会员管理用例规约表
用例编号 2-9 用例名称 会员管理
功能描述 会员管理
执行者 管理员
前置条件 管理员成功登录系统
后置条件 管理系统中的会员信息
涉众利益 管理员
基本事件 1.管理员在导航栏上点击会员管理,进入会员管理页面
2.在会员管理页面可以查询会员信息,每条记录包括用户名、会员余额、联系电话、用户编号、操作
3.管理员在会员查询管理页面中,在每一条会员记录的操作这一栏中点击删除可以删除会员
扩展 1.对系统发出的确认消息框,点击取消按钮,返回原来的会员查询结果页面
字段列表 用户名、会员余额、电话、编号、操作
备注 无
表2-9订单管理用例规约表
用例编号 2-10 用例名称 订单管理
功能描述 订单管理
执行者 管理员
前置条件 管理员成功登录系统
后置条件 管理系统中的会员信息
涉众利益 管理员
基本事件 1.管理员在导航栏上点击订单管理,进入订单管理页面
2.在订单管理页面可以查询会员信息,每条记录包括订单号、商品名称、成交用户、成交价格、收货地址、快递单号、订单状态和操作
3.管理员在订单查询管理页面中,在每一条订单记录的操作这一栏中点击删除可以删除订单
扩展 1.对系统发出的确认消息框,点击取消按钮,返回原来的订单查询结果页面
字段列表 订单号、商品名称、成交用户、成交价格、收货地址、快递单号、订单状态和操作
备注 无
表2-10书画商品管理用例规约表
用例编号 2-11 用例名称 书画商品管理
功能描述 对用户发布的书画商品进行审核管理
执行者 管理员
前置条件 管理员成功登录系统
后置条件 管理系统中的书画商品
涉众利益 管理员
基本事件 1.管理员在导航栏上点击商品管理,进入商品管理页面
2.在商品管理页面可以查询会员发布书画商品信息,每条记录包括编号、图片、书画商品名称、商品底价、书画商品描述
3.管理员在商品管理页面中,在每一条书画商品记录的操作这一栏中点击审核可以审核书画商品
扩展 1.对系统发出的确认消息框,点击取消按钮,返回原来的审核页面
字段列表 编号、图片、商品名称、商品底价、商品描述、商品分类、操作
备注 无
2.4非功能需求分析
与以前的系统架构相比,今天的系统架构变得非常复杂。在过去,几乎所有的应用程序架构都采用三层架构,应用被部署到仅有的几台物理服务器上。如今的应用被各种服务来构建和组装,并且这些应用持续被部署到不同的环境中。
容器是一种轻量级、可移植、自包含的软件打包技术,是应用程序可以在任何地方以相同的方式运行[[[] CloudMan,每天5分钟玩转kubernetes,清华大学出版社,2018]]。负责开发的人不需要再像以前一样用传统的方式部署,只需要负责制作镜像并把代码放入到镜像中,就可以实现快速交付,只需要启动镜像就能够运行。为了尽可能地保证让每种应用服务能够在所部署的环境中持续稳定运行,引入容器技术。容器几乎支持所有的主流操作系统,能够快速启动和迁移。不仅如此,容器在系统中运行,资源、网络和库都是隔离的,不会出现依赖问题。
Kubuneters是容器集群管理系统,是现在企业主要运用的容器编排系统,容器和kubuneters可以说是无缝融合,kubuneters的核心功能主要包括容器的应用部署、负载均衡和服务发现、自动伸缩和滚动更新。使用kubuneters可以快速发布我们的应用。
2.5本章小结
通过本章对书画拍卖系统的需求分析,我对系统需求分析有了更加深刻认识,首先对书画拍卖系统采用的技术和实用性方面分析,接着从功能需求模块对前台用户和后台管理员进行功能分析,然后对书画拍卖系统进行UML系统建模。需求分析没有想象中那么简单,需要考虑的方面比较多和一定的耐心分析。
3.1系统架构设计
书画拍卖系统的架构设计主要是MVC[[[]GuptaP,GovilMC.SpringWebMVCFrameworkforrapidopensourceJ2EEapplicationdevelopment:acasestudy.InternationalJournalofEngineeringScience&Technology,2015,2(6).]],分为3层,主要有Web层,业务层,Model层。其中web层还包括View层和Controller层,Model层包括元数据扩展层和数据访问层。
系统架构如下图所示。
图3.1 系统架构图
3.2系统功能设计
(1)登录注册模块:系统登录是进入系统的第一步,在进入系统时,用户首先需要登录自己的个人信息才能进行访问系统,当我们登录到我们的个人信息时,我们需要输入用户的用户名和密码。如果登录成功,则从数据库中获取用户权限并跳转到用户主页。如果游客尚未在系统中注册,请按登录页面上的注册按钮跳至注册页面,用户可以根据相应的表单输入和注册个人信息。
(2)个人信息模块:用户在成功登录系统后,在我的-修改个人信息导航栏中,可以查看当前成功登录账户的个人信息(包括用户名、电话号码、地址信息等)。除了用户信息,用户还可以修改自己的密码(用户需要先输入自己的旧密码才能重新设置新密码)。用户点击修改后,个人信息更新到数据库。用户再次查看个人信息,数据成功更新。
(3)竞拍模块:用户根据自己的喜好浏览书画商品,选择目标书画商品,点击详情进入竞拍页面并查看书画商品的详细信息,用户输入不低于书画商品底价的金额,点击加价可以对书画商品进行竞拍。
(4)发布模块:用户在成功登录系统后,在我的-发布拍卖物品导航栏中,可以进行用户的书画商品发布,用户填写书画商品信息(包括书画商品名称、商品底价、商品类型、书画商品描述、上传书画商品图片等),点击上传即可以发布自己的拍卖物品。在我的-我发布的宝贝中可以看到用户发布的书画商品。
(5)用户管理模块:管理员登录系统后,可以看到成功注册的用户人数,管理员可以根据条件查找特定的用户并且对用户进行管理操作。
(6)留言模块:留言模块促进用户对书画商品进行留言,查看某个书画商品已存在的留言,发表留言可以达到明辨书画商品的效果。
(7)管理员商品管理模块:用户发布自己的书画商品后,不能立即在书画商品展示页面上显示,必须等待系统管理员的审核。对于审核通过的书画商品才可以进行拍卖,审核不通过的书画商品则返回给用户不能进行拍卖。
(8)订单管理模块:订单方面的信息管理将会分为几个方面,第一点是订单信息的添加、修改以及订单的发货,订单方面的内容将会由系统进行修改、删除以及添加等一系列的操作,订单的发货信息也将会有商品发布者进行操作。
3.3系统类图
类图(Class diagram)由许多(静态)说明性的模型元素(例如类、包和它们之间的关系,这些元素和它们的内容互相连接)组成。类图(Class diagram)是最常用的UML图,显示出类、接口以及它们之间的静态结构和关系;它用于描述系统的结构化设计。类图(Class diagram)最基本的元素是类或者接口[[[] 常梅 冯君 万川梅,Java面向对象程序设计入门,西南交通大学出版社,2014]]。
系统类图如图3.2:
图3.2书画拍卖系统类图
界面类图:
图3.3书画拍卖系统界面类图
3.4系统顺序图
1.会员登录顺序图
图3.6竞拍顺序图
4.发布书画商品顺序图
图3.7发布书画商品顺序图
3.5系统活动图
1.用户注册活动图
图3.11发布书画商品活动图
3.6数据库设计
设计合适的数据库是最基础和最核心的,数据库设计决定了以后数据好不好维护、后期需求好不好发展,同时也决定了系统的性能,一个坏的数据库设计、一个功能点的改动可能会涉及多张表的改动,一不小心可能会引起数据的不一致[[[] 姜承尧,MySQL技术内幕,机械工业出版社,2014]]。为了便于数据库的后续维护,在数据库设计的早期就必须考虑这些问题。以下是对书画拍卖系统用户信息表、书画商品信息表、订单信息表、留言信息表的设计,后台数据库采用MySQL。
1.Puser(用户信息表),表的详细数据见下表3-1用户信息表:
表3-1用户信息表
序号 字段名称 字段类型 是否为空 主外键 描述
1 uid Int Not null 主键 用户编号
2 uname varchar(20) Not null 用户名
3 upassword varchar(20) Not null 登录密码
4 urealname varchar(20) Not null 用户真实姓名
5 utype Int Not null 用户角色
6 usex Int Not null 用户性别
7 utel varchar(18) Not null 联系电话
8 uaddress varchar(50) Not null 用户地址
9 uaccount Float Not null 用户余额
2.pgoods(书画商品信息表),表的详细数据见下表3-2书画商品信息表:
表3-2书画商品信息表
序号 字段名称 字段类型 是否为空 主外键 描述
1 gid Int Not null 主键 商品编号
2 gname varchar(20) Not null 商品名称
3 gprice Float Not null 商品价格
4 gowner varchar(20) Not null 商品拥有者
5 gbuyer varchar(20) Not null 商品买家
6 gstate Int Not null 商品状态
7 gdetail varchar(50) Not null 商品描述
8 gpicture varchar(20) Not null 图片名称
9 gkindid Int Not null 分类编号
10 gstarttime DateTime Not null 开始时间
11 gendtime DateTime Not null 结束时间
3.liuyaninfo(留言信息表),表的详细数据见下表3-3留言信息表:
表3-3留言信息表
序号 字段名称 数据类型 是否为空 主外键 描述
1 id Int Not null 主键 用户编号
2 username varchar(20) Not null 用户名
3 content varchar(50) Not null 留言内容
4 gid Int Not null 外键 商品编号
5 gname varchar(18) Not null 商品名称
6 createtime DateTime Not null 留言时间
4.gkind(商品种类表),表的详细数据见下表3-4商品种类表:
表3-4商品种类表
序号 字段名称 数据类型 是否为空 主外键 描述
1 kindid Int Not null 主键 分类编号
2 kindname varchar(20) Not null 分类名称
5.pusergoods(订单信息表),表的详细数据见下表3-5订单信息表表:
表3-5订单信息表
序号 字段名称 数据类型 是否为空 主外键 描述
1 ugid Int Not null 主键 订单编号
2 pgoodid Int Not null 外键 商品编号
3 puser varchar(20) Not null 买家
4 pnowprice Float Not null 商品价格
5 address varchar(50) Not null 收货地址
6 kuaidinum varchar(30) Not null 快递单号
7 zhuangtai varchar(20) Not null 订单状态
8 fahuotime DateTime Not null 发货时间
3.7本章小结
通过本章对书画拍卖系统的设计,其实系统设计是后面系统实现的前期工作,设计不清楚,整个系统不完全,后续就难以扩展。本章首先介绍了书画拍卖系统的架构和功能设计,接着展示了书画拍卖系统类图和界面类图的设计,然后根据功能模块给出了系统的顺序图和活动图,最后简要介绍并设计了系统中使用的数据库。通过本章的设计加深了对书画拍卖系统的结构认识,在整个过程中,设计的思维得到很好的提升。
4.1数据库访问层的实现
系统是通过jdbc和Mysql达成连接的,建立一个jdbc.properties文件来填写与数据库连接所需要的驱动和参数。先编写driverClass驱动连接数据库MySQL,然后使用jdbcUrl确定数据库的连接地址和名称,并输入用于连接到数据库的用户名和口令。
4.2注册模块的实现
用户在填写数据的时候必须与注册页面上的验证相匹配否则会注册失败,当注册失败时,在进行通过验证的表单必须要进行验证,我们系统的用户必须在6-18长度之间,邮箱也要带有@符号,密码和密码确认必须相同,电话号码必须要求输入格式与生活相符合,当你前台验证通过的时候点击注册,表单会将用户输入的值通过key值传递给后台并保存到数据库中。
用户注册界面如下图所示:
图4.1用户注册界面
4.3登录模块的实现
登录模块可以分为两个部分,在用户登录前有一个登录界面以及在用户登录后会有一个功能主界面,在登录前,用户必须输入自己的用户名和密码,当用户名和密码中的某一项输入了空时就会显示出一个提示信息“用户名及密码不能为空”。如果数据库中存在用户名和密码,则会显示“登录成功”,如果不存在于数据库中,则会显示“登录失败”。登录失败时会显示出提示信息,并且提示信息会显示在文本框中。若登录成功就会进入到系统的首页,并在系统首页可以看到当前登录的用户。在系统首页可以进行会员信息的修改并且可以发布商品的信息管理页面以及退出系统功能,退出系统功能可以清除全系统变量username的值,最后再跳回系统的登录页面。
用户登录界面如下图所示:
图4.3用户个人信息界面
4.4个人信息模块的实现
用户登录/注册成功之后可以查看并修改自己的基本信息。修改页面的表单中每一个input的name值都要与实体类中的数据类型相匹配,在用户点击修改页面的时候,如果改后用户名与数据库里面重复了,页面会提示该用户名已经存在了,否则通过Id来查询用户,并将用户的信息修改为表单提交的数据,如图4-3所示。
4.5留言模块的实现
用户可以对发布的书画商品进行评论留言。用户浏览书画商品后,选择目标书画商品查看详情,在书画商品详情页面在留言框输入要发表的内容,点击发布按钮之后就会显示在书画商品详情页面留言栏下面,后台通过PinglunController的publish方法将相关信息保存到数据库系统。
留言界面如下图所示。
图4.4用户留言界面
4.6竞拍书画商品模块的实现
竞拍书画商品功能整体流程:用户预览书画商品并选中书画商品查看详情,用户根据商品详情描述信息和会员留言信息决定是否参与竞拍,用户对书画商品进行竞拍,必须填写竞拍金额且竞价金额不得低于商品当前最高竞价金额,等待竞拍结果,完成竞拍书画商品的流程。用户对书画商品进行竞拍的具体时间是按照起拍时间等待竞拍时间,最后到达截止时间,由当前竞拍金额最高的用户成功竞拍。
商品竞拍界面如下图所示:
图4.6竞拍管理界面
4.7书画商品管理模块的实现
用户点击发布拍卖书画商品,填写相关完整的书画商品信息并确认无误后点击上传,等待系统管理员审核后才能进行发布。系统管理员对用户上传的书画商品进行甄别审核,对于审核不通过的书画商品不允许发布。用户可以在我发布的书画商品页面中查看自己审核通过和审核不通过的商品
商品添加界面如下图所示:
图4.8商品管理界面
4.8订单管理模块的实现
用户成功竞拍书画商品之后,可以在我的拍卖订单查看订单信息,等待发布书画商品的卖家发货。发布书画商品的卖家根据订单需要输入快递单号,并选择发货,等待成功竞买商品的买家发货。
订单发货页面设计效果如下图所示:
图4.10订单管理界面
4.9本章小结
本章介绍了书画拍卖系统的具体实现,首先介绍了系统如何与数据库获得连接,接着描述书画拍卖系统的功能模块的具体实现以及展示功能模块对应的页面展示效果。通过本章实现了书画拍卖系统的各个功能模块。
5.1测试的意义和目的
对于所有的系统来说,在测试这方面至关重要,一个系统的交付,不仅需要以功能的实现为标准,还要注重用户的体验。对软件项目开发时,不能在每个用户功能的实现都达到需求,用户的某些不规范操作可能会让系统出现预测不到的错误。在测试中可以分析出系统中存有的问题,所以在项目上线之前都有必要进行系统测试,才能保证在上线后不会发生一些小问题和错误,减少后期的维护工作。
5.2测试计划
黑盒测试也称作功能测试,它是通过测试来检验每个功能是否能正常使用[[[] 周元哲,软件测试,清华大学出版社,2013]]。根据需求规划来确定测试用例,需要检测输入和输出的对比,根据实际输出结果和预期输出结果进行对比,测试功能的正确性。具体的测试计划如下:
测试1:名称:用户登录测试
目的:测试用户登录功能
内容:用户名和密码输入,合法性检查
测试2:名称:用户注册测试
目的:测试用户注册功能
内容:用户名、密码、电话号码、地址输入,合法性检查
测试3:名称:书画商品发布测试
目的:测试用户书画商品发布功能
内容:发布书画商品页面显示、书画商品名称输入、价格输入、类型选择、书画商品描述输入、商品图片上传输入
测试4:名称:个人信息修改测试
目的:测试用户个人信息修改功能
内容:个人信息页面显示、用户名输入、电话号码输入、真实姓名输入、地址输入
测试5:名称:书画商品竞拍测试
目的:测试书画商品竞拍功能
内容:书画商品竞拍页面显示、书画商品选择、竞拍金额输入
5.3系统测试用例
功能描述:用户用注册的账号密码进行登录,当输入的用户名或密码错误时,将提示错误信息。
表5-1 系统登录测试用例表
测试目的 测试输入 测试结果 测试说明
用户名 密码
空用户名 (为空) admin@123 用户名或密码不能为空 用户名或密码为空
空密码 admin (为空) 用户名或密码不能为空
空用户名、空密码 (为空) (为空) 用户名、密码不能为空
用户名、密码正确输入 admin admin@123 用户名或密码正确 进入系统首页
用户名、密码错误输入 123 admin 用户名或密码不正确
功能描述:用户进行用户信息注册,当输入的信息格式不正确时,将提示错误信息。
表5-2 系统注册测试用例表
测试目的 测试输入 测试结果 测试说明
输入的用户名或者密码为空 (为空) 用户名、密码不能为空,请重新输入 用户名或密码为空
输入的用户名已存在 admin 用户名已存在 用户名已存在
输入的手机号不合法 137@6087226 输入的手机号码格式错误 手机号格式错误
输入的真实姓名为空 (为空) 用户真实姓名不能为空
功能描述:用户发布书画拍卖商品时必须填写书画商品名称、书画商品价格、选择书画商品类型、书画商品描述、上传书画商品图片,当输入的信息有误,将会出现错误信息提示。
表5-3 书画商品发布测试用例表
测试目的 测试内容 测试结果 测试说明
输入的书画商品名为空 (为空) 输入的书画商品名称不能为空 书画商品名称为空
输入的商品价格为空 (为空) 输入的价格不能为空 价格为空
输入的商品描述为空 (为空) 输入的描述不能为空 商品描述为空
上传的图片不能为空 点击选择文件 上传的图片不能为空 书画商品号不在书画商品信息表中
功能描述:用户登录到系统后,可以查看用户的个人信息或更改用户的个人信息。
表5-4 个人信息修改测试用例表
测试目的 测试内容 测试结果 测试说明
修改的用户名已存在 输入已存在的用户名点击修改 提示输入的用户名已存在,请重新输入 用户名已存在
修改用户的手机号码 重新输入错误格式手机号码点击修改 提示输入电话号码格式错误 手机号格式错误
修改用户地址 重新输入空地址点击修改 提示输入的地址不能为空
修改用户密码 输入不相同的密码点击修改 提示输入的密码不一致
功能描述:用户选择目标书画商品后,可以对书画商品进行竟拍
表5-5 书画商品竞拍测试用例表
测试目的 测试内容 测试结果 测试说明
输入小于当前书画商品价格 提示输入的金额小于当前商品价格
对书画商品留言空内容点击发布 提示留言不能为空
5.4本章小结
通过这章测试,我对于系统测试有了更加深刻的认识,对于具体的测试部分,我做的主要是黑盒测试,软件测试也没有想象中的那么简单,需要一定的耐心和细心。经过这次Java Web应用的测试,我的测试能力也有了进步。
随着计算机互联网技术的迅猛发展,各行各业都已经实现采用计算机相关技术对日益放大的数据进行管理。本系统是书画拍卖系统为核心展开的,主要是为了实现书画拍卖信息化管理和书画作品爱好者在线竞拍的需求。
书画拍卖系统的开发是以Java编程语言作为基础,在IDEA平台上完成编码工作,系统整体为B/S架构,数据库系统使用MySQL。在设计过程中详细分析了书画拍卖系统的研究背景、研究的目的和存在的意义、系统需求分析、以及系统中详细的设计和功能测试等方面的一系列的内容。系统实现了书画拍卖系统所需要的一些基本功能,并通过测试对这些功能进行了改进,提高了系统的整体实用性。整个系统的开发过程中主要使用了SSM框架以及前端使用的Bootstrap框架等。
但是由于自己在系统开发过程中对一些用到的相关知识和技术掌握不够牢固,再加上自身开发经验欠缺,因此系统在有些方面的功能还不够完善,考虑的不够全面,因此整个系统还有待日后逐步完善。
[1]徐明华.Java Web整合开发与项目实战[M].北京:人民邮电出版社,2009.
[2]MartinM,LamMS.AutomaticGenerationofXSSandSQLInjectionAttackswithGoal-directedModelCheckingUsenixSecuritySymposium,July28-August1,2008
[3]李刚.轻量级JavaEE企业应用实战.电子工业出版社,2016.
[4]计文柯.Spring技术内幕:深入解析Spring架构与设计原理(第2版).机械工业出版社,2015
[5]Spring MVC框架开发WEB应用程序的探索与研究[J]. 周燕玲. 科技广场. 2016(06)
[6]李杉,贾彦平,达虎. Mybatis逆向工程在JavaEE中的应用[J]. 通讯世界,2017
[7]ShrutiHegde,HowToDdesignAWebSurveyUsingSpringBOOTWithMySQL,Journal of theAmericanCollegeofCardiology, 2013
[8]CloudMan.每天5分钟玩转kubernetes,清华大学出版社,2018
[9]GuptaP,GovilMC.SpringWebMVCFrameworkforrapidopensourceJ2EEapplicationdevelopment:acasestudy.InternationalJournalofEngineeringScience&Technology,2015
[10]常梅 冯君 万川梅,Java面向对象程序设计入门,西南交通大学出版社,2014
[11]姜承尧.MySQL技术内幕.机械工业出版社,2014.
[12]周元哲,软件测试, 清华大学出版社., 2013
本次设计历时3个月。在这个毕业设计中,它离不开指导教师的指导,使事情基本顺利。指导老师无论是在毕业设计历经中,还是在论文做完中都给了了我特别大的助益。另一个方面,教师认真负责的工作姿态,谨慎的教学精神厚重的理论水准都使我获益匪浅。我从老师那里学到了很多东西,在理论和实践中,我的技能得到了特别大的提高。在此,特向教师表示由衷的感激。
经过对该毕业设计的全部研究和开发,我的系统研发经历了从需求分析到实现详细功能,最后到最终的测试和维护方面的进展,让我对于系统的研发方面的知识有了更加深刻的理解和感悟。如今我的动手本领单独处理问题的能力也获取到了特别大的演练,这是这次毕业设计最好的收获。
最后,在整个系统开发过程中,我周围的老师、同学以及朋友都给予了我很多该方面的意见,我在这里,再次对他们表示深深的谢意!