基于bs模式及jsp技术的网上拍卖系统的设计与实现_第1页
基于bs模式及jsp技术的网上拍卖系统的设计与实现_第2页
基于bs模式及jsp技术的网上拍卖系统的设计与实现_第3页
基于bs模式及jsp技术的网上拍卖系统的设计与实现_第4页
基于bs模式及jsp技术的网上拍卖系统的设计与实现_第5页
已阅读5页,还剩50页未读 继续免费阅读

下载本文档

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

文档简介

[26]。综上所述,国内外对于网上拍卖系统的研究主要集中在移植性、便捷性、低成本、美观性等方面,但是在拍卖网站信誉评价功能方面研究不够深入。解决网上拍卖的信用问题,就是要在网上拍卖或购买的环境中,解决信息的私密性、完整性、不可抵赖性以及身份确认问题。本文就设计实现了一个带有信誉评价功能的网上拍卖系统。第2章系统的开发技术2.1JSP技术JSP是一种用于创建动态Web页面的Java技术,它能够与JavaEE平台的其他组件协同工作,实现数据处理和业务逻辑。JSP技术可以帮助开发者快速地搭建出面向用户的Web应用程序。1、JSP与ASP相比JSP可以在任何支持JVM的平台上运行,而ASP只能运行在Windows平台上;JSP的编译和执行过程比ASP更加高效;由于ASP的代码是运行在服务器端的COM组件中,安全性不如JSP,容易被攻击和破坏;JSP的开发成本相对较低,因为Java语言具备良好的可维护性和可扩展性,而且有完善的开发工具和框架支持。2、JSP与PHP相比JSP通常比PHP具有更高的性能,因为JSP的编译和执行过程更加高效,而PHP需要进行解析和执行;JSP的安全性通常比PHP更好,因为Java语言本身就具备较高的安全性,而且JavaEE平台提供了完善的安全机制和API支持;JSP相对于PHP来说更加稳定,因为Java语言的强类型、静态类型特征使得JSP更容易开发出健壮的应用程序。3、JSP与Servlet、JavaBean相比与Servlet相比,JSP可以将Java代码和HTML代码混合在一起,以便快速生成动态网页;而与JavaBean相比,JSP省去了手动编写代码的麻烦;相对于Servlet来说,JSP更容易阅读和理解,因为JSP页面中包含的Java代码更加直观,并且不需要像Servlet那样手动拼接HTML标签;JSP可以与Servlet协同工作,实现数据处理和业务逻辑,从而提高了应用程序的可扩展性;而JavaBean可以在不同的页面和组件之间共享数据和状态,方便了应用程序的扩展和维护。在Web应用程序开发过程中,JSP、Servlet和JavaBean都是非常重要的组件。通过灵活结合它们的优点,可以快速构建出具有高性能、可扩展性、易读性和易维护性的Web应用程序。总之,JSP具有跨平台性、高性能、更好的安全性和开发成本更低等优点。因此,在选择动态Web页面开发技术时,JSP通常是较为理想的选择。2.2Tomcat和MySQLTomcat和MySQL均是用于Web应用程序开发的重要技术组件:Tomcat是一个以Java语言为底层实现的开源Web应用服务器,支持多种JavaWeb框架(如Struts、Spring等);MySQL是一个被当今众多互联网公司所认可并使用的关系型数据库管理系统。因高效、可靠、兼容多种OS等优点受到互联网技术人员的青睐。Tomcat和MySQL常常被同时使用,以构建出完整的Web应用程序。例如,Tomcat可以作为Web应用程序的运行环境和中间件容器;而MySQL则可以用于存储和管理Web应用程序中的数据。综上所述,Tomcat和MySQL各自在不同的领域发挥着重要的作用。通过灵活地结合它们的优点,我们可以快速构建出高性能、高安全性、易扩展性和易维护性的Web应用程序。网上拍卖系统的需求分析3.1系统的需求概述拍卖者将拍品的参考相片、拍品详情、起拍价格、每次加价数额、截至竞拍日期、生产日期等信息上传至系统服务器后,系统就会生成一个线上拍卖网站供所有注册用户使用。竞拍者能按个人检索习惯根据不同条件查询拍品信息,并参与竞拍中意的拍品。系统会根据拍卖者预先规定的截至时间拍卖物品,最后出价最高者得。因为网络的虚拟特性,网络欺诈现象难以避免。而网上交易的信用问题恰好是交易成交额的决定性因素之一。针对上述问题,本系统使用下述方式保障消费者权益:用户注册包含以下内容:姓名,性别,手机号码,通信地址,用户名,密码,头像。用户注册成功后会获得一个名为信誉值的属性,默认值为100。当用户信誉值低于90时会无法发布新拍品,信誉值低于80时无法参与拍品的竞拍。信誉值的更新数额是根据第三方买家的评价情况决定的,而不是用户在注册时就能直接注册信用度。同时,每当一件拍品拍卖成功得到用户的评价后,拍品发布者的信誉度就会发生改变。具体实施为:拍品得到好评,拍品所属人信誉值加2,拍品得到中评,拍品所属人信誉值加1,拍品得到差评,拍品所属人信誉值减5。通过上述用户信誉评价功能,该系统在一定程度上减轻了网络诈骗的危害。3.2系统具体的功能需求本系统需要实现的具体功能有用户信息管理、拍品信息管理、竞价记录管理、用户信誉评价、拍卖系统功能。用户信息管理:(1)用户的注册功能及其输入框的非空、格式验证;(2)用户可以选择手机验证码或账号密码登录;(3)用户登录成功后进入欢迎界面,显示登录用户的姓名进行欢迎;(4)用户个人资料的查看、修改;(5)用户修改个人信息不允许改变手机号码、用户身份、注册日期、用户信誉值等特殊信息项;(6)管理员对用户资料的检索方式有按手机号检索和按姓名检索,两种检索方式都有非空验证。同时按姓名检索用户信息可以使用精确查询和模糊查询,保证管理员能轻易找到对应的用户信息;(7)管理员可以浏览并修改所有用户信息。拍品信息管理:(1)用户可以浏览所有拍品或者仅浏览自己发布的拍品、上传自己的拍品供竞拍者竞拍;(2)拍品信息展示页面不仅应该能展示拍品相关信息,还应该能显示出拍品所属人的姓名及其信誉值等关键信息;(3)普通用户仅可以对自己发布的拍品进行修改和删除,拍品信息修改或者删除的同时与之对应的竞价记录也应该被删除。因此每当有用户修改或删除拍品信息时,系统应给予适当的提醒;(4)拍品可按照用户的要求进行分类检索,另外还可以使用拍品名称进行有非空验证的精确搜索与模糊搜索,保证用户能轻易找到想要的拍品。竞价记录管理:(1)竞价信息展示页面不仅应该能展示拍品竞价的相关信息,还应该能显示出竞拍者的姓名及其邮寄地址信息;(2)系统应能提供给用户个人发布拍品相关的竞价信息展示功能、个人参与的拍品竞价相关信息展示功能、他人竞拍己方拍品成功相关竞价信息展示功能、个人参与拍品竞价成功的记录信息展示功能,使得用户能高效地获取想要的信息;(3)管理员应有权撤回竞价信息异常的竞价记录。用户信誉评价功能:(1)竞拍成功的用户可以根据所得商品的实际情况对该次成功竞拍的拍品进行评价,即对拍品所属人进行信用评价;(2)竞拍成功的用户每次交易结束后仅能对拍品所属人进行一次信誉评价;(3)竞拍成功的用户对拍品做出评价后,系统应能根据评价的不同情况及时修改拍品所属人的信誉值并将评价结果告知拍品所属人。拍卖系统功能:(1)用户信息、拍品信息的修改以及生成竞拍记录的系统界面应首先展示对应的原有信息以供修改者参考;(2)当普通用户试图删除他人所属拍品时,系统应当阻止该操作并具体告知该用户哪些商品非其所属;(3)竞拍者可以竞拍别人的商品,但不能竞拍自己的商品,防止恶意竞拍;(4)每当有用户登录成功后,系统应能分辨该用户的身份并根据具体身份分配其具体信息的管理权限;(5)普通用户发起竞拍后,生成的竞价记录无法删除,即无法撤回竞价。因此每当有用户发起竞价时,系统应给予适当的提醒;(6)竞拍加价幅度限制,每次加价幅度必须是拍卖者规定的数额的倍数,防止恶意竞拍;(7)每当一份竞拍报告生成后,更新下次竞拍时的竞拍价格;(8)当拍卖品到达竞拍截止日期时,不能再进行竞拍;(9)拍卖品到达竞拍截止日期时,系统应能计算出哪位竞价者在规定日期内出价最高并将竞价成功的记录信息告知拍品所属人和成功竞拍者。第4章网上拍卖系统的设计4.1系统功能结构设计4.1.1系统全局流程图网上拍卖系统网上拍卖系统用户注册登录模块登陆成功欢迎模块用户信息管理模块拍品信息管理模块竞价记录管理模块用户信誉评价模块用户注册我的竞价记录查询账号密码/验证码登录我的拍品竞价记录查询显示当前登录用户姓名并欢迎用户信息展示、修改按姓名/手机号查询用户信息管理员删除非法竞价记录按拍品名称查询竞价记录拍品的发布与删除功能按分类/名称查询拍品信息拍品信息的修改竞拍者对拍品发起竞拍查看我发布的拍品用户竞拍成功后评价拍品更新拍品所属用户的信誉值拍品所属用户查看所获评价图4.1系统全局流程图4.1.2系统总体结构设计本网上拍卖系统总体结构设计如图4.2所示。图4.2系统总体结构设计图4.1.3系统具体功能模块设计(1)用户信息功能模块。①用户注册功能:该系统的新用户需要先注册账号。注册账号需要输入姓名、邮寄地址、用户名、密码、手机号等必要信息。除显式输入框外,隐式的用户属性还有信誉值、用户身份、用户ID和用户注册成功时间会在注册成功时一并加入用户个人信息中。同时为了数据库的完整性和规范合法性,所有用户信息数据项都不允许为空值,即每个输入框都需要加入非空验证。验证不通过无法完成注册。特别的,用户名和手机号码要需要具有唯一的特性,即需要在这两个输入框加入唯一验证机制。另外手机号码还需要根据地域区别和具体规范检验其格式是否合法,即还需要对手机输入框添加格式验证。以上为显示输入框的验证需求,而隐式数据的验证合法性则仅需后端代码加以控制即可。用户注册流程图如图4.3所示。开始开始输入姓名选择性别判断手机号是否已注册输入手机号判断手机号格式是否正确输入邮寄地址输入用户名输入密码判断用户名是否已注册上传头像立即注册否否否是是是注册成功结束图4.3用户注册流程图②用户登录功能:用户注册成功后可以在账号密码登录和手机号验证码登录两种方式中选择自己心仪的登录方式。此登录过程在用户输入完对应信息单击登录按钮后,客户端浏览器会携带输入框信息向后端发送登录请求。系统数据库中若存在该用户信息则登录成功,页面跳转至系统首页的用户欢迎界面,反之阻止用户进入系统首页提示用户重新输入正确的用户信息。用户登录流程图如图4.4所示。开始开始是否登录判断用户名、密码是否正确注册输入用户名、密码查询角色权限是是否跳转对应的页面结束否图4.4用户登录流程图③用户注销功能:用户删除自己的个人信息视为用户自主注销。④系统首页欢迎用户功能:当用户登录成功来到系统欢迎界面时,会在首页显示用户的姓名,并欢迎用户。⑤用户信息管理功能:如果有注册时失误输错的的数据,可以单击修改个人信息按钮在修改页面修改。特别的,手机号码、用户身份、用户信誉值、用户注册日期这些特殊信息在修改界面无法修改,仅支持展示。另外管理员拥有查看所有用户信息的权限的同时,还可以按照用户姓名或用户手机号的方向精准查询到想要的用户信息。为了方便管理员管理用户信息,按姓名查询用户信息还实现了模糊查询和精准查询相结合的方式。管理员还具有删除、修改所有用户信息的权限,以便维护系统的环境。(2)拍品信息功能模块。①拍品信息展示功能:页面仅展示所有可以参与拍卖的拍品信息,即仅展示截止日期在当前日期之后的拍品。在拍品信息展示页面中,拍品所属人信誉值信息的展示给予了竞拍者更多的参考角度,以便竞拍者借此信息做出更加适合自己的竞拍选择和发起更合理的加价数额。拍品每次最低加价属性表示其他用户对该拍品发起竞价时加价的最低数额,并且加价数额必须是拍品所属者规定数额的倍数。拍品的当前竞价价格信息并非固定的,而是跟随拍品竞价报告的生成而动态改变的。即每当有其他用户成功参与某商品的竞价时,系统会根据其加价数额动态改变商品展示页面对应商品的当前竞价数额信息,以便竞拍者有更好的竞拍体验。特别的,拍品起拍价格属性决定了其他用户参与拍品竞价时的起始价格;而交易截止日期属性更是本系统非常重要评判竞拍成功所属者的关键信息。②发布新拍品功能:用户点击页面左侧功能栏的拍品信息管理后,在商品列表上方即可看到发布新拍品的按钮。点击按钮就会进入拍品添加页面。此添加页面需要依次输入拍品分类、拍品名称、拍品描述、拍品起拍价格、每次最低加价数额、商品展示图、拍品生产日期、拍品竞价交易截止日期。其中,拍品分类信息的输入方式为下拉列表选择方式,无需用户自己输入;错误的输入加价数额,系统会给予提示,阻止用户的输入,直至用户输入大于规定数额的加价数并且是规定加价数额的倍数;拍品展示图的添加需要用户选择个人客户端所属下的图片;另外,拍品的生产日期和交易截止日期输入时,用户仅需单击输入框,小型日历就会出现供用户选择具体日期时间。③拍品删除功能:在发布新拍品按钮旁边就是拍品删除功能。当拍品所属者因其个人原因想要下架其发布的拍品时,用户可以通过此按钮轻松实现。仅需先点击个人所属商品所在行的选择按钮,再点击拍品删除按钮即可完成拍品的删除。普通用户仅支持删除个人所属拍品,管理员才拥有删除所有拍品的权限。特别的,当某一在其交易截止日期内的拍品被删除时,其他竞拍者就无法再对此拍品发起竞拍且该拍品对应的拍品竞价记录都会被删除。每当由普通用户试图删除非其所属的商品时,系统会阻止此次操作并且具体告知该用户哪些商品信息非其所属,以便该用户下次的正确选择其个人所属商品。④拍品信息修改功能:当拍品所属用户想要修改其拍品信息时,系统会先展示对应拍品的原有信息,以便该用户精确修改真正需要修改的信息项。特别的,每当有拍品的信息修改成功时,与之对应的所有已成功参与竞价的记录都会被删除,以此维护系统所展示竞价记录信息和数据库信息的合法合理性。同上述拍品删除功能一样,普通用户仅能修改个人所属拍品的信息,管理员才有权限修改所有拍品信息。⑤拍品查询功能:该系统提供了三种拍品查询功能:用户个人所发布的拍品信息查询、按拍品分类查询、按拍品名称的精确/模糊查询。用户所属拍品查询功能的实现,使用户能快速高效精确地查询到个人所发布的拍品信息;拍品分类查询功能和按拍品名称模糊/精确查询功能实现使有意竞拍的用户能够以较高的效率检索到其心仪的拍品,适当增加了该系统的竞拍总次数。⑥拍品的竞价功能:当用户有意竞拍某款拍品时,可以点击竞拍按钮进入竞拍详情页。竞拍详情页首先会向竞拍者展示拍品的名称、当前竞价价格、每次最低加价、交易截至日期等关键详情信息,以供竞拍者参考做出恰当的加价。特别的,竞拍者仅能参与其他用户发布的拍品,禁止竞拍个人所属的拍品并且参与竞拍后无法撤回以免恶意加价的现象发生。因此,在竞拍者试图发起竞价时系统会给予适当的警示。(3)拍品竞价记录信息功能模块。①竞价信息展示功能:根据拍卖现场实际情况考虑,本系统相关拍品竞价的记录信息会以优先展示最新生成的拍品竞价记录信息,以便各位参与竞拍者准确把握当前竞价趋势做出合理的加价。拍品竞价记录具体展示出的信息项包括拍品所属人、拍品出价者、出价者邮寄地址、拍品类别、拍品名称、拍品参考图、竞价记录生产前价格、出价者加价具体数额、拍品当前的竞价起始价格、竞价记录生成时间、拍品竞价截至日期。拍品出价者姓名、加价数额、拍品竞价截至日期这三个信息的展示,简单明了地告知了每个参与竞拍者当前的竞价局势,帮助所有竞价者做出更具理性更加合理的加价。②竞价信息查询功能:根据不同用户的多样化的查询需求,该系统提供了六种不同的竞价记录查询方式。这六种方式包括:按竞价拍品的类别分类查询、按拍品名称精确结合模糊的形式查询、用户个人发布拍品相关的竞价记录查询、用户个人参与的竞价记录查询、他人竞拍己方拍品成功的竞价记录查询、个人参与拍品竞价成功的竞价记录信息查询。③竞价记录删除功能:此功能按钮仅在管理员的竞价信息管理页面出现,普通用户页面无此按钮,即普通用户没有删除竞价记录权限。当有恶意非法竞价记录生成时,管理员有权立即删除该非法竞价记录。(4)拍卖系统功能模块。①当用户成功登录时,系统将识别该用户,并根据其身份为其分配管理权限。对用户权限的限制具体包括普通用户仅能查看或修改个人信息和个人所属拍品、普通用户仅能删除个人信息和个人所属拍品、普通用户无法删除竞价记录。②每当有新的竞价记录生成时,系统会将商品展示页对应商品的当前竞价起拍价格更新。③拍品到达竞价截至日期后,用户无法发起竞拍。④当用户信誉值低于90时禁止发布新拍品,信誉值低于80时禁止参与拍品的竞拍。⑤竞价者发起竞价后无法撤回。⑥拍品所属者删除或者修改所属拍品后,对应的所有已生成的竞价记录都会被系统删除。⑦系统对竞拍加价幅度的限制:每次加价幅度必须是拍卖者规定的数额的倍数,否则无法成功参与竞价。⑧当物品达到最后报价时,系统会自动统计出在最后报价时间内报价最高的竞拍者,并向拍品拥有者及竞拍成功者发出通知。用户竞拍流程图如图4.5所示。开始开始是否登录判断加价数额是否大于规定数额且是规定数额的倍数注册对拍品发起竞价系统统计出在拍品截止日期内出价最高的竞拍者并通知拍品所属者和竞拍成功者是否系统生成竞价记录判断用户信誉值是否大于80结束是是否否图4.5用户竞拍流程图(5)信誉评价功能模块。①在拍卖中,竞拍成功的用户可以按照拍卖物品的具体状况,对这次拍卖的拍品进行评价,也就是对拍品的拥有者进行信誉评价。②拍品得到好评,拍品所属人信誉值加2,拍品得到中评,拍品所属人信誉值加1,拍品得到差评,拍品所属人信誉值减5。③在拍卖成功的使用者对拍卖物品进行评估之后,该系统在评估结束后会自动对拍卖物品所属人的声誉进行更新,并将评价的结果通知拍卖物品的拥有者。④只有用户竞拍成功后才会获得一次信誉评价机会。4.2数据库设计4.2.1数据库概念结构设计本系统包括的实体有拍卖者、竞拍者、拍品、竞价报告,多个实体与多个实体间都存在明显联系。数据库概念结构设计总体ER图如4.6所示。图4.6数据库概念结构设计总体ER图在本网上拍卖系统中,拍卖者实体发布新拍品后,拍卖者就与个人所属的拍品产生了拍卖关系。这种拍卖关系是1:n型的,即一个拍卖者可以发布多个新拍品而一个拍品仅能为一个拍卖者所有。具体关系ER图如图4.7所示。图4.7拍卖者-拍品ER图每当有竞价者实体对某一拍品实体成功发起竞价后,竞价者实体就与拍品实体产生了竞拍关系。这种竞拍关系是n:m型的,即一位竞价者可以对多件拍品发起竞价同样一件拍品也可以被多位竞价者竞价。具体竞拍关系ER图如图4.8所示。图4.8竞价者-拍品ER图当拍品实体成功被某一位竞价者实体发起竞拍时,拍品实体就与竞价报告实体产生了记录关系。这种记录关系属于1:n型,即一件拍品在多人竞价的情况可以生成多个竞价报告而一个竞价报告只能记录一件拍品的信息。具体记录关系ER图如图4.9所示。图4.9拍品-竞价报告ER图4.2.2数据库逻辑结构设计创建网上拍卖系统的数据库:(1)用户个人信息表如表4.1所示。表4.1用户个人信息表字段名数据类型长度可否为null是否为主键注释uidint否是用户IDunamevarchar100否否姓名genderint否否性别phonevarchar20否否手机号码areavarchar100否否邮寄地址managerint否否用户身份usernamevarchar50否否用户名passwordvarchar50否否密码photovarchar100可以否头像creditint否否信誉度create_timedate否否注册时间(2)拍品信息表如表4.2所示。表4.2拍品信息表字段名数据类型长度可否为null是否为主键注释gidint否是拍品IDuidint否否拍品所属IDgnamevarchar255否否拍品名称descriptionvarchar255可以否拍品描述lowest_pricedoubler否否起拍价格up_pricedouble否否最低加价now_pricedouble否否当前价格picvarchar255否否拍品展示图product_datedatetime否否生产日期end_datedatetime否否交易截止时间categoryint否否拍品分类(3)竞价记录信息表如表4.3所示。表4.3竞价记录信息表字段名数据类型长度可否为null是否为主键注释ridint否是竞价记录IDuidint否否拍品所属IDbuyUidint否否竞价者IDgidint否否拍品IDgnamevarchar255否否拍品名称picvarchar255否否拍品展示图old_pricedouble否否竞价前价格up_pricedoubler否否加价数额now_pricedoubler否否竞价后价格create_datedatetime否否记录生成时间end_datedatetime否否交易截至时间categoryint否否拍品分类sayvarchar255否否评价状态allsayvarchar255可以否评价内容第5章网上拍卖系统的实现5.1用户信息管理的实现5.1.1用户注册实现无论是拍卖者还是竞拍人都要先注册为会员,在注册时需要提交个人信息,包括姓名、性别、手机号码、通信地址、用户名、密码、头像。用户注册页面如图5.1所示。图5.1用户注册账号图用户注册输入的个人信息验证有:(1)姓名、电话号码、邮寄地址、用户名、密码非空验证,如图5.2所示;(2)电话号码唯一验证,如图5.3所示;(3)用户名唯一验证,如图5.3所示;(4)电话号码格式验证,如图5.4所示。图5.2用户信息非空验证图图5.3用户信息唯一验证图图5.4电话号码格式验证图具体实现的核心代码如下:$("#username").blur(function(){varusername=$(this).val();if(username==""||username.trim()==""){$("#usernameInfo").text("用户名不能为空").css("color","red");}else{$.ajax({url:"user",type:"post",data:{"username":username,"func":"checkUsername"},dataType:"json",success:function(isRegist){if(isRegist){$("#usernameInfo").text("用户名已被注册").css("color","red");}else{$("#usernameInfo").text("用户名ok").css("color","green");}}})}})5.1.2用户登录实现用户注册成功后会跳转至用户登录页面,然后输入用户名和密码进行验证,如图5.5所示。图5.5用户登录页面图用户登录信息输入有误的情况如图5.6所示。图5.6用户信息输入有误展示图用户除了可选择使用用户名和密码登录方式外,还可以使用手机号验证码的方式登录。仅需点击图5.6中的手机号登录按钮。具体如图5.7所示。图5.7手机验证码登录展示图用户如果输入未注册的手机号进行发送验证码服务,系统将提示手机号码未注册,请先去注册。如图5.8所示。图5.8手机号未注册报错展示图用户如果输入错误的验证码尝试登陆时,系统同样会提示登陆失败,请重新登录。如图5.9所示。图5.9手机验证码输入错误展示图用户登录信息对应的核心代码实现如下:$("#zphone").click(function(){varphone=$("#phone").val();if(phone==""||phone.trim()==""){$("#msg").text("手机号码不能为空").css("color","red");}else{if(!(/^1[3456789]\d{9}$/.test(phone))){$("#msg").text("手机号码格式不正确").css("color","red");}else{$.ajax({url:"user",type:"post",data:{"phone":phone,"func":"checkPhone"},dataType:"json",success:function(isRegist){if(isRegist){RemainTime();sendCode(phone);}else{$("#msg").text("手机号码未注册,请先注册吧!").css("color","red");}}})}}})5.1.3用户信息管理实现普通用户只能显示并修改个人信息,如图5.7,5.8所示。图5.10普通用户信息展示图图5.11普通用户信息修改展示图登录用户身份如果是管理员则将展示所有用户信息,并且有权限进行用户信息查询和修改。如图5.12所示。图5.12用户信息管理功能展示图用户信息管理功能实现的核心代码如下:Datedate=null;date=sdf.parse(create_time);}catch(ParseExceptione){e.printStackTrace();}Partpart=request.getPart("pic");Stringpic=part.getSubmittedFileName();pic=UUID.randomUUID()+pic;StringdirPath="D:/tupian";Filefile=newFile(dirPath);if(!file.exists()){file.mkdirs();}part.write(dirPath+"/"+pic);Useruser=newUser(Integer.valueOf(uid),uname,Integer.valueOf(gender),phone,area,Integer.valueOf(manager),username,password,pic,date);booleanisSuccess=userService.addUser(user);response.sendRedirect("user?func=findUserList");}}5.2拍品信息管理的实现用户点击页面左侧功能列表中的拍品信息管理按钮即可查看所有正在拍卖中的拍品信息。另外普通用户可以按照拍品名称搜索自己心仪的拍品信息、查看我发布的拍品。如图5.13所示。图5.13拍品信息展示图用户还可以按拍品所属类别分类查询拍品信息,如图5.14所示。图5.14按分类搜索拍品信息展示图普通用户仅允许修改个人发布的拍品信息,修改拍品信息页面如图5.15所示。图5.15修改拍品信息展示图普通用户不允许竞拍自己所属的拍品,参与他人所属拍品竞价页面如图5.16所示。图5.16参与拍品竞价页面展示图用户单击添加拍品按钮,然后在添加页面输入个人所属拍品的详细信息,具体添加页面如图5.17所示。图5.17发布新拍品页面展示图拍品信息管理功能实现的核心代码如下:try{List<User>ower=userService.findOwer();request.setAttribute("ower",ower);inttotalCount=errorCount;StringcurrentPage=request.getParameter("currentPage");PageToolpageTool=newPageTool(totalCount,currentPage,6);List<Goods>goodes=arrayList;request.setAttribute("goodes",goodes);request.setAttribute("pageTool",pageTool);request.getRequestDispatcher("admin/goods_errorDelete.jsp").forward(request,response);}catch(ServletExceptione){e.printStackTrace();}}elseif(isManager||flag){booleanisSuccess=goodsService.goodsDelete(idg);if(isSuccess){for(Strings:split){reportsService.deleteByGid(Integer.valueOf(s));}response.sendRedirect("goods?func=findAllGoods");}}}5.3竞价记录管理的实现用户点击页面左侧功能列表中的竞价记录管理按钮即可查看所有已经参与竞价成功生成的竞价记录。另外用户可以按照拍品名称搜索自己心仪的拍品信息、按拍品分类查询竞价记录、查看和自己相关的所有竞价记录。如图5.18所示。图5.18管理员竞价记录管理页面展示图图5.18所展示的竞价记录管理页面为以管理员身份登录的页面,而普通用户无权删除已经生成的竞价记录,即没有删除按钮。具体页面如图5.19所示。图5.19普通用户竞价记录管理页面展示图当多位用户竞拍同一个拍品时,拍品的当前价格会实时更新。当用户参与竞拍时,看到的是最新的拍品竞拍价格。多人竞价同一拍品系统生成的竞价记录如图5.20所示。图5.20多人竞价同一拍品系统生成的竞价记录展示图拍品竞价截止日期到达后,系统会以竞价记录的方式告知拍品所属者竞价结果。竞价结果如图5.21所示。图5.21拍品所属者竞价结果展示图同样的,拍品竞价截止日期到达后,系统会以竞价记录的方式告知竞价成功者竞价结果。竞价结果如图5.22所示。图5.22竞价成功者竞价结果展示图竞价记录管理功能实现的核心代码如下:publicintfindSuccessCount(intuid){intcount=0;try{longc=(Long)qRunner.query("SELECTcount(*)fromreportswhereridin(SELECTmax(rid)fromreportswhereend_date<?groupbygid)andbuyUid=?",newScalarHandler(),LocalDateTime.now(),uid);count=(int)c;}catch(SQLExceptione){e.printStackTrace();}returncount;}publicList<Reports>findSuccess(PageToolpageTool,intuid){List<Reports>reports=null;try{reports=qRunner.query("SELECT*fromreportswhereridin(SELECTmax(rid)fromreportswhereend_date<?groupbygid)andbuyUid=?limit?,?",newBeanListHandler<Reports>(Reports.class),LocalDateTime.now(),uid,pageTool.getStartIndex(),pageTool.getPageSize());}catch(SQLExceptione){e.printStackTrace();}returnreports;}5.4用户信誉评价功能的实现每当竞价者成功竞拍到一件拍品时,该竞价者就会有且仅有一次对该次交易的拍品进行评价的机会,即对该拍品的所属人进行信誉评价。竞拍成功后查看个人竞拍成功竞价记录后的页面如图5.23所示。图5.23竞价记录待评价展示图竞拍成功的竞价者收到拍品体验完想要对该拍品进行评价时,即可点击上图5.23中的评价按钮,具体页面展示如图5.24所示。图5.24竞价记录评价展示图当某拍品被成功竞拍者评价后,系统会告知此次交易拍品前所属人具体的评级内容并对该用户的信誉值进行更新。查看他人的评价内容页面如图5.25所示。图5.25查看评价展示图收到竞拍者好评的用户信誉值超过默认值(100)的页面展示如图5.26所示。相反收到过多差评的用户信誉值会降低,具体信息如图5.27所示。图5.26查看好评结果展示图图5.27查看差评结果展示图用户信誉评价功能实现的核心代码如下:if(flag){UseruserByUid=userService.findUserByUid(u);booleanb1=userService.updateCredit(userByUid,say);reportsService.addOver(rid);report.setSay("评价成功");System.out.println(report);booleanisSuccess=reportsService.update(report);if(isSuccess){request.setAttribute("mss","未评价");inttotalCount=reportsService.findSuccessCount(buyUid);StringcurrentPage=request.getParameter("currentPage");PageToolpageTool=newPageTool(totalCount,currentPage,6);List<Reports>success=reportsService.findSuccess(pageTool,buyUid);request.setAttribute("reports",success);request.setAttribute("pageTool",pageTool);request.getRequestDispatcher("admin/reportsSay.jsp").forward(request,response);}}else{request.setAttribute("mss","未评价");report.setSay("已评价");booleanisSuccess=reportsService.update(report);if(isSuccess){inttotalCount=reportsService.findSuccessCount(buyUid);StringcurrentPage=request.getParameter("currentPage");PageToolpageTool=newPageTool(totalCount,currentPage,6);List<Reports>success=reportsService.findSuccess(pageTool,buyUid);request.setAttribute("reports",success);request.setAttribute("pageTool",pageTool);request.getRequestDispatcher("admin/reportsSay.jsp").forward(request,response);}}}第6章网上拍卖系统的测试6.1用户信息管理的测试6.1.1用户注册测试图6.1用户注册测试图测试用例:(1)输入未被注册的用户名、手机号码,并且其他输入框全部正确输入,注册成功。(2)输入错误格式的手机号码,注册失败。(3)输入已被注册的用户名或密码,注册失败。图6.2注册失败测试图图6.3注册失败测试图图6.4注册成功测试图6.1.2用户登录测试账号密码登录方式测试用例:(1)输入错误的用户名和密码或者未注册的账户信息,登录失败。(2)输入正确的用户名密码,登录成功,跳转到系统欢迎页面。图6.5登录失败测试图图6.6登录成功测试图手机验证码登录方式测试用例:(1)输入未注册的手机号,获取验证码失败。(2)输入正确的手机号,获取验证码成功,输入正确的验证码跳转到系统欢迎页面。图6.7获取验证码失败测试图图6.8验证码发送成功测试图图6.9验证码方式登录成功测试图6.1.3用户信息管理测试普通用户登录后的功能测试用例:单击功能列表中的用户信息查看按钮,普通用户仅展示个人信息。图6.10查看个人信息测试图单击修改个人信息按钮,成功展示出了个人原有信息。普通用户仅支持修改姓名、性别、用户名、密码、头像和邮寄地址信息。修改邮寄地址信息为梁山,修改成功。图6.11修改个人信息测试图图6.12修改个人信息成功测试图管理员登录后的功能测试用例:(1)管理员有权限删除用户信息,即强制用户注销。图6.13删除用户信息测试图图6.14成功删除用户信息测试图(2)管理员有权限按手机号、用户姓名查找用户信息。并且用户姓名支持精确查找和模糊查找相结合的方式。图6.15按姓名查找用户信息测试图图6.16按手机号查找用户信息测试图6.2拍品信息管理的测试拍品信息管理测试用例(1)单击左侧功能列表中的拍品信息管理按钮,成功展示所有正在拍卖中的拍品信息。(2)单击拍品展示列表上方的我的拍品按钮,成功查询到当前登录用户姓名为库里的所有所属商品。(3)单击拍品展示列表上方的分类检索按钮,选择手机/运营商/数码分类,成功查询到所有该类别的拍品信息。(4)单击拍品展示列表上方的添加拍品按钮,输入汤家凤1800题的图书信息,成功发布新拍品供他人竞拍。图6.17拍品信息展示测试图图6.18我的拍品信息展示测试图图6.19按分类查询拍品信息测试图图6.20按分类成功查询到拍品信息测试图图6.21添加新拍品信息测试图图6.22成功添加新拍品信息测试图(5)普通用户仅能删除个人所属拍品,批量删除时试图删除他人所属拍品时,系统提示删除失败,并展示删除失败的拍品信息。图6.23删除他人拍品失败测试图6.3竞价记录管理的测试竞价记录管理的测试用例:(1)竞价个人发布的拍品,竞价失败。系统禁止竞价自己发布的拍品。图6.24竞价个人所属拍品失败测试图(2)竞拍新添加的汤家凤1800题,加价8元。加价数额不是拍品发布者规定的5元的倍数,竞价失败。图6.25加价数额错误竞价失败测试图(3)竞拍新添加的汤家凤1800题,加价10元,竞价成功且成功生成竞价记录。然后点击展示页面上方的我的竞价报告按钮,即可查看刚刚成功参与竞价的记录。图6.26竞价成功提示测试图图6.27查看我的竞价记录测试图(4)使用新注册姓名为关羽的用户发布一件羽绒服,把竞价截至时间设定为当前时间的两分钟后。然后使用另外三个用户对这件羽绒服发起竞价,最后达到截止时间时,系统成功计算出哪位用户竞拍成功。此次拍卖结束后,姓名为关羽的用户点击我拍卖成功的拍品按钮即可清楚应该给哪位用户发货。同时竞拍成功的用户可以点击我竞价成功的商品按钮查看竞价成功的拍品信息。图6.28发布新拍品测试图图6.29多位用户竞价同一拍品测试图图6.30竞价成功者查看拍品信息测试图图6.31拍卖成功者查看成功的竞价记录测试图6.4用户信誉评价功能的测试用户信誉评价用例:(1)使用上述成功竞拍到羽绒服姓名为杨洋的用户对该拍品做出评价,选择好评。(2)竞拍成功者给出好评后,系统将拍品所属者关羽的信誉值增加2。(3)拍品拍卖成功姓名为关羽的用户单击展示栏上方的我拍卖成功的拍品按钮,成功查看到竞拍者给的好评。图6.32评价测试图图6.33评价成功测试图图6.34信誉值更新成功测试图图6.35成功查看到评价内容测试图结论本文采用B/S模式,基于Java、Jsp技术实现的网上拍卖系统满足了拍卖业务的实际需求。系统会在拍品竞价截止时间前为竞价者开放竞价通道。到达截止时间时系统会关闭竞价通道,并依据出价最高的用户信息生成竞价成功报告。系统会限制用户不能竞价自己的商品,并且禁止用户竞价他人的拍品后撤回竞价记录;系统还会限制普通用户仅能修改、删除个人所属的记录信息;系统还实现了一个小型的用户信誉评价功能:竞拍成功的用户可以根据所得商品的实际情况对该次成功竞拍的拍品进行评价,即对拍品所属人进行信用评价。竞拍成功的用户对拍品做出评价后,系统会根据评价的不同情况及时修改拍品所属人的信誉值并将评价结果告知拍品所属人。系统会限制低信誉值的用户的操作权限,一定程度上保障了消费者的权益。本系统实现了电子商务平台的核心功能,具备一定规模并且可视为一个小型电子商务平台。虽然本文开发的网上拍卖系统并未实现物流追踪服务和支付功能,但是随着市场对于网上拍卖的需求不断提高,此类功能将变得越来越重要。因此,在未来的研究中,可以考虑引入物流追踪服务和支付功能,以满足用户的需求并提高整个系统的可信度。参考文献赵佳文.基于信任管理的拍卖系统的研究与实现[D].中国矿业大学,2020.CNNIC发布第51次《中国互联网络发展状况统计报告》[J].互联网天地,2023(03):3.CaiZ,LiuY,GanY,etal.Designan

温馨提示

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

评论

0/150

提交评论