毕业论文网上拍卖平台系统的设计与实现.docx
- 文档编号:14369480
- 上传时间:2023-06-22
- 格式:DOCX
- 页数:37
- 大小:657.65KB
毕业论文网上拍卖平台系统的设计与实现.docx
《毕业论文网上拍卖平台系统的设计与实现.docx》由会员分享,可在线阅读,更多相关《毕业论文网上拍卖平台系统的设计与实现.docx(37页珍藏版)》请在冰点文库上搜索。
毕业论文网上拍卖平台系统的设计与实现
论文题目网上拍卖平台系统的设计与实现
姓名
学院
专业计算机科学与技术
指导教师
备注
2010年6月4日
网上拍卖平台系统的设计与实现
作者姓名:
指导教师:
单位名称:
计算机科学与技术系
专业名称:
软件工程
东北大学东软信息学院
2010年6月
DesignandImplementationofOnlineAuctionPlatformSystem
NortheasternUniversityNeusoftInstituteofInformation
June2010
毕业设计(论文)任务书
毕业设计(论文)题目:
网上拍卖平台系统的设计与实现
设计(论文)的基本内容:
网上拍卖平台系统的设计与实现是模拟了eBuy拍卖网系统的部分功能,抽取了实际电子拍卖系统部分功能,主要实现了电子拍卖系统中核心功能。
了解网上拍卖平台系统的运营模式,以及国内外电子拍卖平台的现状,分析网上拍卖平台系统的功能需求以及设计与实现该系统功能的技术。
介绍Struts2+Spring+Hibernate技术以及分析了基于这三大框架上建立网上拍卖系统的技术手段,设计拍卖平台系统的总体结构。
实现用户在该系统完成用户对物品的管理与竞价,并对所实现的部分进行测试和评价。
毕业设计(论文)专题部分:
题目:
设计或论文专题的基本内容:
学生接受毕业设计(论文)题目日期
第1周
指导教师签字:
2009年12月4日
网上拍卖平台系统的设计与实现
摘要
拍卖是购买和销售中的一种主要的交易方式,随着Internet的日益普及和电子商务的发展,网上拍卖迅速成为一种非常活跃的C2C电子商务模式。
因为它充分利用了互连网的特性开创了一个前所未有的巨大市场而被广泛看好。
对商家而言,以拍卖的形式在网上采购、销售物品,因为不受时间和空间限制、并且可以有效降低运营成本并提高效率而具有极大的吸引力。
本中详细介绍了Struts2、Spring、Hibernate三大框架技术,以及它们之间的整合。
通过这三个框架建立整个系统结构,采用JavaEE的三层结构,分为表现层、业务逻辑层和数据服务层。
三层体系将业务规则、数据访问等工作放到中间层处理,客户端不直接与数据库交互,而是通过控制器与中间层建立连接,再由中间层与数据库交互。
三个框架的整合是通过SpringIoC容器的支持,将Struts2的Action、基于Hibernate的DAO组件都纳入Spring容器的管理下,从而避免了在Struts2的Action中直接调用HibernateAPI。
本文结合软件工程的各个阶段,对网上拍卖平台系统进行分析、设计,然后编码实现,最终进行测试,完成了系统的核心功能。
关键词:
拍卖系统,框架,三层结构
DesignandImplementationofOnlineAuctionPlatformSystem
Abstract
Auctionthepurchaseandsaletransactionsinamajorway,withtheincreasingpopularityofInternetande-commercedevelopment,onlineauctionquicklybecameaveryactiveC2Ce-commercemodel.BecauseitmakesfulluseofthecharacteristicsoftheInternethascreatedatremendousandunprecedentedmarketiswidelyoptimistic.Businessmenareintheformofonlineauctionpurchase,saleitems,asfromtimeandspaceconstraints,andcanreduceoperatingcostsandincreaseefficiencyhasgreatappeal.
ThedetaileddescriptionoftheStruts2,Spring,Hibernatethreeframeworktechnology,andintegrationbetweenthem.Frameworkthroughtheestablishmentofthewholesystemofthesethreestructures,three-tierstructurewithJavaEEdividedintopresentationlayer,businesslogicanddatalayer.Three-tiersystemwillbebusinessrules,dataaccessandsoonintothemiddlelayerofprocessing,theclientdoesnotdirectlyinteractwiththedatabase,butthroughthecontrollerandthemiddlelayertoestablishaconnection,thenthemiddletieranddatabaseinteraction.
IntegrationofthethreeframeworksisthesupportthroughtheSpringIoCcontainerwillStruts2inAction,basedonHibernateforDAOcomponentsintotheSpringcontainermanagement,thusavoidingtheActioninStruts2directlycalltheHibernateAPI.
Inthispaper,allstagesofsoftwareengineering,on-lineauctionplatformsystemanalysis,design,andcodingtoachievetheultimatetestandcompletedthecoresystem.
Keywords:
AuctionSystem,Frame,ThreeLevelStructure
第1章 绪论
电子商务(electroniccommerce)是计算机网络所带来的又一次革命,它的发展将形成新的交换体制,产生新的市场规则,冲破时间与空间的限制,加快全球市场一体化的进程,电子商务还将有力地推动信息和信息服务业的发展。
它不仅涉及电子技术和商业交易本身,而且涉及到诸如金融、税务、教育等其他社会层面,是一个与社会大环境息息相关并且具有完整结构体系的系统工程。
电子商务的发展为网上拍卖带来了勃勃生机,使得网上拍卖迅速成为一种非常活跃的电子商务模式。
网上拍卖系统是一个C2C模式下的电子商务系统,提供了一个网上拍卖的市场给买方和卖方,企业可以以拍卖的方式出售自己的产品。
拥有商品展示、拍卖竞投、用户注册、网上支付、信息反馈和新商品发布几项基本功能。
使得网上的用户可以安全、便捷的使用该系统。
企业可以通过该系统观察到消费者、客户之间的买卖情况,从中获取最直接的市场消息,掌握最详细的市场动态。
它与传统的拍卖模式相比具有以下五个方面的主要优势。
(1)降低了采购价格,借助EDI企业能够完成自动的例行采购,可减少采购过程中人力、印刷和邮寄的费用。
(2)采用“零库存”管理方式,可大大缩短资金的周转周期。
(3)互联网商务更有利于开拓全球市场。
(4)实现24小时不问断营业,有利于提高营业额。
(5)可使用多媒体手段进行促销活动,可依靠客户数据库提供全新个人服务。
随着通信技术和网络技术的飞速发展,网上拍卖的开展势在必行。
应该说网上拍卖发展的前景十分广阔,作用越来越大。
文中论述了构建网上拍卖系统的技术手段及其实现的关键方法。
1.1论文研究主要内容
本次毕业设计完成的系统主要实现的功能包括用户注册、发布商品、竞拍商品、查看商品的详细信息以及通过Web方式对系统的数据进行管理。
网上拍卖平台是为用户与用户之间的交易竞价而搭建的平台,负责用户通过这个系统自动的在异地完成交易而毋须人工来操作。
以高内聚低耦合的系统结构,灵活处理新增功能服务,主要表现在面向接口编程等软件架构宗旨。
从而使得该系统在实际的应用环境中有足够的生存能力。
软件结构的好坏直接影响的软件的质量,所以运用Struts2、Spring、Hibernate这三个框架来建立软件的框架,严格按照JavaEE的MVC三层体系去实现。
1.2国内外现状
说起拍卖网站就一定少不了eBay,这家美国网站缔造了一个美妙的网络发家致富的奇迹。
几年前eBay出现的时候,它还只是个小不点,但崭新的商业思想却使eBay在短时间内成为网络巨人。
它带动起网络时代新的行为方式,为买卖双方在网上提供交易的场所,供应一些别人看不上眼的零碎物品,例如二手电脑,旧书等等。
这个点子引出了一颗闪耀的新星,如今的eBay已经成为拍卖网站中首屈一指的名牌。
本来市场活跃并非不好,只是目前拍卖网站的涌现还只能为网络经济带来崭新的概念和广阔的发展空间,特别是在国内大陆地区,目前还没有以拍卖为电子商务中心的网站。
除去没有意义的新闻炒作,大多数网站对网友的影响尚乏善可陈。
而现在他们面对的将是“谁会买”和“怎样卖”两大难题。
对于“网上拍卖”系统,要完成的主要是网上的拍卖流程,要求对拍卖信息的发布、查询都能在线进行,而且,对于用户满意的拍卖品,要求能够在线出价。
因为拍卖是一种公开的投标方式,所以竞价人在竞价时也应该可以查看历史的竞价记录。
对拍卖商来说,他应该可以随时掌握拍卖品的拍卖情况,所以也应该为拍卖商提供一个查看竞价情况的空间。
对某一拍卖品,它的拍卖状态应该是可以设置的。
第2章 关键技术介绍
本系统的IoC容器使用Spring框架,Spring容器负责管理本系统中所有组件,是系统最大的工厂。
数据的持久化使用Hibernate完成,表现层的MVC框架使用Struts2,这些框架都是目前最流行的轻量级JavaEE框架。
2.1Java语言简介
Java是一种语法简洁、清晰的语言,它的程序运行需要一个解释器,也就是所谓的“虚拟机”。
虚拟机以某种高速算法解释执行Java的面向对象语言代码。
Java是基于WWW开发的,主要分为客户端和服务器端两大类型。
Java客户端软件包括Applet应用小程序,传统的客户端图形界面程序、各类加点设备的客户端应用程序。
服务器端软件则包括利用Socket套接字或使用封装了Socket功能函数的Java高级网络流类编写的Server并发程序、Servlet程序、JSP网页程序和服务器端的EJB组件等。
根据Sun的Java语言白皮书中的归纳和总结,简单地说,Java语言有如下特点:
(1)简单(Simple)。
程序较小,编写容易,能够在小型机器上执行,基本的解释器约为40KB,若加上基本的程序库,约为215KB。
(2)面向对象(Object-Oriented)。
一个对象的状态只由对象自己可知的变量定义。
Java把这些变量称为数据域或者成员变量。
数据域对对象来说是私有的,除非显示地使用关键字来定义它们的作用域,使它们对其他类可见。
一个对象的行为是由它上面的操作定义的。
在Java中,这些操作被叫做方法。
方法可以改变一个对象的状态,创建新对象,实现实用的功能等。
(3)分布式(Distributed)。
Java有一个庞大的程序库,且容易地与HTTP和FTP等TCP/IP通信协议相配合。
(4)健壮性(Robust)。
有Java所编写的程序,在多数情况下执行稳定。
Java与C/C++最大不同是Java通过一个指针模型来排除内存被覆盖和毁损数据的可能性。
(5)安全性(Secure)。
Java是被设计用于网络及分布式的环境中,Java拥有数个阶层的互锁保护措施,能有效地防止病毒的侵入和破坏行为的发生。
(6)结构中立(ArchitectureNeutral)。
Java的编译器产生一种结构中立的目标文件格式,这使得编译码得以在很多种处理器中执行。
(7)解释执行(Interpreted)。
Java解释器能直接在任何机器上执行Java位元码,这对于缩短程序的开发过程,有很大的帮助。
(8)高性能(HighPerformance)。
Java位元码可迅速地能被转换成机器码,从位元码转换到机器码的性能与C和C++几乎没有分别。
(9)多线程的(Multithreaded)。
Java语言具有多线程的功能,这对于交互回应能力及即时执行行为是有帮助的。
(10)动态性(Dynamic)。
Java比C或C++语言更具有动态性,更能适应时刻在变的环境,Java不会因程序库的更新而必须重新编译程序。
2.2JSP技术
JSP技术可以以一种简捷而快速的方法生成Web页面。
使用JSP技术的Web页面可以很容易地显示动态内容。
JSP技术的设计目的是使得构造基于Web的应用程序更加容易和快捷,而这些应用程序能够与各种Web服务器、应用服务器、浏览器和开发工具共同工作。
本系统使用JSP技术作为表现层技术,它负责收集用户的请求数据,并将用户请求数据提交到指定的控制器。
当系统处理完用户请求后,JSP页面还负责将处理结果呈现给用户。
本系统中的JSP页面禁用可Java脚本,保证JSP页面只能作为系统表现层使用,避免将业务逻辑混杂在表现层中。
通过使用Struts2的页面标签,可以保证JSP页面中不再出现任何小脚本,从而保证了JSP页面只有变现逻辑。
2.3Struts2技术
用户的所有请求都由Struts2的FilterDispatcher过滤,通过这种方式,将系统的所有请求都转入Struts2系统内,从而保证所有请求都交给Struts2的Action处理。
本系统采用了Struts2和Spring的整合策略,当Struts2和Spring整合时,使用了Struts2提供的Spring插件,该插件将Struts2的objectFactory设置成Spring,这意味着Struts2的Action实例也是由Spring容器负责生成,让后通过制定Spring的自动装配策略,从而让struts2的Action定位Spring容器中的业务逻辑组件。
因为Struts2的objectFactory直接改为了Spring容器,从而让Struts2的Action直接由容器来产生,进而让用户请求进入Spring容器内部,一旦进入了SpringIoC容器的内部,Ioc容器就负责管理所有的业务逻辑组件、DAO组件,从而以这种方式将系统中所有组件串接起来。
2.4Spring框架
借助于SpringIoC容器的支持,容器中各组件以松耦合的方式组合在一起,组件与组件之间的依赖通过Spring的依赖注入进行管理。
系统中的各组件之间面向接口编程,降低了系统异构的代价。
DAO对象的创建实际上是使用了Spring的HibernateDaoSupport作为基类,使得继承HibernateDaoSupport的DAO对象实现更加简单,程序开发人员无需管理Hibernate的SessionFactory、Session等对象。
程序开发者通过Spring提供的HibernateTemplate完成数据库操作。
事务采用Spring的声明式事务框架。
通过声明事务,无需将事务策略以硬编码的方式与代码耦合在一起,而是放在配置文件中声明。
业务逻辑组件可以更加专注于业务的实现,从而简化开发。
同时,声明事务降低了不同事务策略的切换代价。
2.5Hibernate框架
Hibernate作为O/RMapping框架使用,Hibernate提供的O/RMapping功能简化了数据库访问,Hibernate在JDBC层上提供了更好的封装,以面向对象的方式操作数据库,更加符合面向对象程序设计的思路。
然而Hibernate的内置标识生成器根据数据库的不同而选用不同的方法,在MySQL中把ID设为auto_increment类型,MSSQLServer把ID设为identity类型,数据库就会自动为主键赋值,但是本程序中使用的是Oracle数据库,因此在Oracle中是从序列(Sequence)中获取自动增长的标识符。
Hibernate以优雅、灵活的方法操作数据库,无需开发者编写繁琐的SQL语句,执行冗长的多表查询,而通过对象与对象之间的关联操作数据库。
Hibernate为底层的DAO对象的实现提供了支持。
第3章 系统分析
3.1构架概述
3.1.1功能构架
根据需求调研结果确定本系统主要包括以下功能模块,如图3.1所示。
后台数据库
买家竞标管理
卖家发布商品管理
前台程序
用户信息管理
图3.1系统体系结构
3.1.2模块需求描述
(1)用户管理
客户第一次登录需要填写注册信息,由于拍卖行业的特殊性故此每位客户必须填写真实信息。
对于以注册用户只需登录即可进入系统。
客户在系统中有两个角色。
一种是买家,另外一种是卖家。
每个客户可以是其中一种角色,也可以是两种。
如图3.2所示。
用管理分为用户注册与用户登录,用户注册用例起始于用户想要注册成为会员,当用户点击用户注册按钮时,系统将自动跳转到用户注册页,用户按要求填写完注册信息点击提交按钮,系统则成功响应,完成注册。
用户登录用例起始于用户想要登录该系统,当用户正确输入用户名与密码后,点击登录按钮,系统响应用户的请求,将用户的Session记录,同时提示成功登录。
图3.2用户管理用例图
(2)发布新商品
当用户正常登录系统后,就可以添加自己的拍卖物品了,添加拍卖物品是本系统中需要处理表单域比较多的场景。
而且添加物品时,应该能让用户选择所添加物品所属的种类,这要求进入添加物品表单页之前,先使用一个取得所有物品种类。
如图3.3所示。
发布新商品用例起始于,用户以卖家的身份想要添加拍卖的物品,当用户按规定填写好要发布商品的信息后,点击发布新商品按钮,系统则成功响应用户的请求,将其信息正确的添加到后台数据库。
图3.3发布新商品用例图
(3)用户竞价
处理用户竞价是系统中比较复杂的一个模块,涉及到用户表、物品表,如果用户需要对指定物品进行竞价,必须先进入查看物品详细信息的页面,然后由bid.action进行处理,完成对物品表的状态、最后竞价人等信息的更新。
如图3.4所示。
竞价管理用例是用户以买家的身份来实现的一个模块,该用例起始于用户想要在某个商品完成对该商品的出价。
当用户填写高于当前物品竞价的最高价格时,点击竞价按钮,系统正确的响应该用户的请求,并在数据库中修改物品类的相应元素。
图3.4用户参与竞价用例图
(4)其它业务功能
其它业务功能见表3.1。
表3.1其它业务功能
功能编号
功能名称
功能描述
优先级
1
查看用户信息
查看登录用户的详细信息
3
2
商品查看
实现查看商品详细信息的功能
1
3.2系统开发环境
硬件环境:
450*2MHZ/40G/1024MB/40G/
软件环境:
WindowsXP/MyEclipse6.0/tomcat6.0/ORACLE9I/
3.3系统任务的可行性分析
3.3.1技术可行性
本系统采用Struts2+Hibernate+Spring三个框架整合,采用Java作为开发语言,数据库采用Oracle,前台的页面使用JSP。
这些软件和技术都已经非常的成熟,软件的波动性很小。
(1)典型的J2EE三层结构,分为表现层、中间层(业务逻辑层)和数据服务层。
三层体系将业务规则、数据访问及合法性校验等工作放在中间层处理。
客户端不直接与数据库交互,而是通过组件与中间层建立连接,再由中间层与数据库交互。
一个良好的框架可以让开发人员减轻重新建立解决复杂问题方案的负担和精力;它可以被扩展以进行内部的定制化;并且有强大的用户社区来支持它。
框架通常能很好的解决一个问题。
然而,你的应用是分层的,可能每一个层都需要各自的框架,然而这三个框架正是开发人员所需要的。
(2)表现层是传统的JSP技术,自1999年问世以来,经过多年的发展,其广泛的应用和稳定的表现,为其作为表现层技术打下了坚实的基础。
JSP技术可以以一种简捷而快速的方法生成Web页面。
使用JSP技术的Web页面可以很容易地显示动态内容。
JSP技术的设计目的是使得构造基于Web的应用程序更加容易和快捷,而这些应用程序能够与各种Web服务器、应用服务器、浏览器和开发工具共同工作。
(3)Oracle的关系数据库是世界第一个支持SQL语言的数据库,经历过20多年的发展,由于其优越的安全性、完整性、稳定性和支持多种操作系统、多种硬件平台等特点,得到了广泛的应用。
加上Hibernate对Oracle的支持,使得该系统的有更足够的技术支持。
3.3.2系统安全性分析
(1)本系统除了浏览商品信息外,进行其他的操作必须要经过登录模块,从数据库中验证是否存在该用户的信息。
用户每次发出请求都是经过Struts2的拦截器的过滤,拦截器拦截用户Session,判断Session中是否保存了当前用户ID,如果保存了用户ID,即该用户已经登录,否则没有登陆。
(2)添加服务器端校验使得侵入者不容易侵入该系统,很多恶意的侵入者,并不是通过浏览器来破解某个应用,他会采用更底层的Socket通信进行侵入。
然而通过校验文件可以提高该系统的安全性。
校验文件时一个XML配置文件,该文件指定了Action的属性必须满足怎样的规则。
第4章 系统设计
4.1设计指导思想和原则
4.1.1指导思想
(1)系统设计思想决定了一个系统设计的成败也从某种角度反映了一个系统的生命力。
此系统采用了三层架构的设计思想做到了功能的独立化和模块化。
(2)JSP是嵌入了Java代码的HTML,两种标记混杂在一定程序上使开发更为方便,但也存在混杂的代码容易出错,且出错时不方便使用开发工具来设置断点排查。
三层架构设计使用JavaBean专注开发逻辑层,JSP页面专注开发应用表达层,最大限度地提高了开发效率。
同时系统将涉及复杂操作的不同功能独立出来,作为一个模块来设计,在需要用到特定功能的程序中,仅仅做出调用即可。
这种做法不仅避免了程序代码中一些不必要的重复更重要的是使整个系统层次结构更为清晰,方便了以后系统功能的增加,缩减了开发成本。
(3)此次设计采用“用户界面-业务处理层-数据存储层”的三层架构设计,它的工作原理如图4.1所示。
用户界面
业务处理层
数据存储层
数据库
拍卖系统操作界面
JavaBeans
浏览器
Tomcat
连接池
结果集
对象
操作
图4.1三层结构系统功能图
采用三层架构以后,用户界面层通过统一的接口向业务层发送请求,业务层按自己的逻辑规则将请求处理后进行数据库操作,然后将数据库返回的数据封装成类的形式返回给用户界面层。
这样用户界面层甚至可以不知道数
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 毕业论文 网上 拍卖 平台 系统 设计 实现