基于Javaweb开发的网上商城系统.docx

上传人:b****0 文档编号:10111923 上传时间:2023-05-23 格式:DOCX 页数:41 大小:2.11MB
下载 相关 举报
基于Javaweb开发的网上商城系统.docx_第1页
第1页 / 共41页
基于Javaweb开发的网上商城系统.docx_第2页
第2页 / 共41页
基于Javaweb开发的网上商城系统.docx_第3页
第3页 / 共41页
基于Javaweb开发的网上商城系统.docx_第4页
第4页 / 共41页
基于Javaweb开发的网上商城系统.docx_第5页
第5页 / 共41页
基于Javaweb开发的网上商城系统.docx_第6页
第6页 / 共41页
基于Javaweb开发的网上商城系统.docx_第7页
第7页 / 共41页
基于Javaweb开发的网上商城系统.docx_第8页
第8页 / 共41页
基于Javaweb开发的网上商城系统.docx_第9页
第9页 / 共41页
基于Javaweb开发的网上商城系统.docx_第10页
第10页 / 共41页
基于Javaweb开发的网上商城系统.docx_第11页
第11页 / 共41页
基于Javaweb开发的网上商城系统.docx_第12页
第12页 / 共41页
基于Javaweb开发的网上商城系统.docx_第13页
第13页 / 共41页
基于Javaweb开发的网上商城系统.docx_第14页
第14页 / 共41页
基于Javaweb开发的网上商城系统.docx_第15页
第15页 / 共41页
基于Javaweb开发的网上商城系统.docx_第16页
第16页 / 共41页
基于Javaweb开发的网上商城系统.docx_第17页
第17页 / 共41页
基于Javaweb开发的网上商城系统.docx_第18页
第18页 / 共41页
基于Javaweb开发的网上商城系统.docx_第19页
第19页 / 共41页
基于Javaweb开发的网上商城系统.docx_第20页
第20页 / 共41页
亲,该文档总共41页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

基于Javaweb开发的网上商城系统.docx

《基于Javaweb开发的网上商城系统.docx》由会员分享,可在线阅读,更多相关《基于Javaweb开发的网上商城系统.docx(41页珍藏版)》请在冰点文库上搜索。

基于Javaweb开发的网上商城系统.docx

基于Javaweb开发的网上商城系统

届别

学号

 

(学校名称)

毕业设计(论文)

 

基于JAVAWEB的网上商城设计与开发

姓名[

系别、专业

导师姓名、职称[

完成时间[

网上商城系统

摘要

本文的主要研究对象是网上商城系统,研究网上商城一般的业务流程,还有网上商城的结构和模块,各个模块的功能等等。

整个论文从如何来分析一个网上商城系统的业务流程和它的结构以及模块,再到到对开发工具的选择,以及对前面分析出来的结果进行初步的设计(这里我设计的是使用Java的web开发技术来实现这个网上商城系统),对网上商城系统分析和设计完成之后,就进入到实际的代码编写阶段,在这个阶段就可能对前面的设计进行一定的修改或是完善。

在开发阶段,我将采用的是螺旋递增式的开发,每次只完成一部分功能,然后就立即对这些功能进行测试,接着进入下一个开发阶段,然后继续测试,直到所有的功能全部实现后,再对整个系统进行一个完整的测试,看其是否达到了先前的设计要求。

综上所述,本文讨论的就是如何使用Java的web开发技术来完整的实现一个网上商城系统的主要功能。

关键词商城设计与开发;JAVA;JAVAWEB

Abstract

Therefore,thispaperstudiesthemainobjectisonlineshoppingmall,onlinemallgeneralbusinessprocesses,andonlinestorestructureandmodule,thefunctionofeachmodule.Thearticle,fromhowtoanalyzeonlinemallbusinessprocessandthestructureofthesystemandmodules,andtheninthechoiceofdevelopmenttools,andtheresultsofthefront,preliminarydesign(Idesignwebpages,useJavadevelopmenttechnologytorealizetheonlinemall),onlinemallofsystemanalysisanddesignintotheactualcodestagecomplete,atthisstage,mayinfrontofthedesignbasisofcertainamendmentsorperfect..Duringthedevelopmentphase,Iwillusethespiralincrementaldevelopment,astageofthefunctionaslongasfinished,thenimmediatelytestingthesefunctions,andthenintothenextstageofdevelopment,andthencontinuetotest,untilalltestfunction,andfinallytotheoveralltestthewholesystemtoseeifitcomplywiththedesignrequirements.

Allinall,thispaperhasdiscussedhowtouseJavaWebdevelopmenttechnologytocompleteaonlinemallsystem.

Keywords:

BUYGOODSJAVAWEBSHOPPING

1.1课题背景............................................................................................1

第一章绪论

1.1选题背景

随着计算机技术的发展和网络人口的增加,网络世界也越来越广博,越来越丰富,网上商城已经成为网上购物的一股潮流。

互联网已日益成为收集提供信息的最佳渠道并逐步进入传统的流通流域,互联网的跨地域性和可交互性使其在与传统媒体行业和传统贸易行业的竞争中是具有不可抗拒的优势。

人们对于互联网技术的要求已不单单是浏览一下网站网页,收发电子邮件,日益忙碌的人们开始追求足不出户就能买到心仪的商品,是越来越多的上网爱好者实现购物的一种方式。

对于企业来讲,无论是企业之间(BtoB),还是企业和客户之间(BtoC)的交易,如果能够实现网上交易将大大提高交易速度节约成本。

但是对网络的及时、一对一、跨时间、跨空间等特性,并没有充分加以利用。

在这种形势下,传统的依靠管理人员人工工作传递信息和数据的管理方式就无法满足企业日益增长的业务需求了。

因而开发了这样一个具有前后台的网上商城系统,以满足购物者和企业的需求。

1.2选题的目的和意义

对于网上商城来说,我想每个人都不陌生,即使你没有亲自在网上买过东西也一定见过、听说过网上购物这种方式。

网络购物作为一种新的购物形式已经被广大群众所接受,尤其是年轻群体,他们特别热衷于网购。

网购最大的优势就是东西要比现实中商场里的商品便宜,而且一般都是送货上门,因为网购一般都是采取快递送货方式,直接送到你家楼下或者公司里,因此网络购物的第二大优势就是其便利性,用户只要坐在电脑前,点点鼠标就可以买东西了。

当然网购也有它的缺点,比如无法见到实物,只能通过商家介绍的文字和图片来了解商品,再比如买衣服无法试穿,而且这也为不良商家提供了忽悠消费者的方法,他们会尽力美化自己的商品来诱惑消费者买单,而消费者收到商品后才发现和想象中的差异很大,而商家又以各种各样的理由推脱,而且由于采用网上交易,所以会存在安全问题。

但是这些都不能挡住网购的魅力,网上购物现在正变得越来越流行,市场份额也变得越来越大。

因此这次毕业设计题目就以目前现有的网上商城系统为研究对象,例如淘宝和当当,这里主要研究后者的形式,也就是商城自己经营的方式,研究一般的网上商城的业务流程,猜测其各个功能模块及其组合、连接方式,并分析其具体的实现方式,最后使用Java加web服务器和数据库完成一个网上商城系统的主要功能模块。

通过这样一个毕业设计,可以提高自己Java编程的水准,也练习了怎样构建一个完整的系统,从系统的需求分析到设计,直至编码、测试并运行,熟悉并掌握一个完整的Web开发流程,为今后工作打下基础。

1.3论文研究内容

网上商城是一个基于Internet的应用,属于B/S架构,前端就是一个客户浏览器,客户需要通过浏览器来访问服务器,因此,本文主要研究的就是一个网上商城系统(商城自负经营的类型)的业务流程及其实现方式。

首先,需要站在使用者的角度去思考你究竟会怎么使用这个系统,而一个网上商城的使用者一般又有两类,一类是普通消费者,而另一类则是商城的管理员,因此我就需要思考这两类人都会怎么来使用这个系统,这样就能分析出网上商城系统的业务流程。

而实现这个业务流程可以采用很多种不同的方法,很明显,网上商城系统是一个基于Internet的应用,因此就需要使用到Web开发的方法,目前Web开发的方法有很多,流行的有Java和.Net,这里我选择了Java,因此我就需要研究如果采用Java作为编程语言,我应当如何来实现这个系统,这个系统应该划分为多少个模块,每个模块的功能又是什么,他们之间如何组合到一起,这也就是系统的设计。

第二章网上商城系统的需求分析

1.1网上商城业务流程分析

开发一个项目,不管你采用什么实现方式,其实都是在完成其业务流程,因此,将一个系统的业务流程分析清楚,将为后面的开发提供极大的便利。

由于本文选择了B2C(BusinessToCustomer,商家对顾客直销)模式,所以之后的分析或讨论均是针对此种模式。

如何对一个系统进行分析有很多的方法,这里我采用了站在具体的使用者的角度来考虑这个网上商城系统的功能和结构,先是粗略的分析一下使用的流程,在这个过程中就能够发现一些必须的基础的类。

1.1.1作为一名消费者的使用流程

假如一个消费者第一次来到一个网上商城,他首先一般会先浏览浏览该商城的首页以及首页上所列的各种商品,如果你这个网站的首页设计得很精细很吸引人的话,消费者才会有兴趣进行下一部探索,看看你们这个商城有什么好的商品。

因此,目前的网上商城设计者大多会在首页花费很大的功夫,比如在首页就展示商品什么的,一次来吸引客户的眼球。

如此一来,用户也不需要登录就可以查看。

进而如果他对这个商品感兴趣,那他就会点击‘购买’这个按钮,如果客户是第一次来此商城购买商品,那么系统就会自动提醒客户是否注册一个新账号,注册之后才能进行下一步操作。

当然了,消费者进行注册之后系统就该为消费者提供一个登录功能,以方便消费者登录进而进行购买商品的操作以及一些相关的操作。

该系统在消费者登录成功之后会在页面上显示该消费者的用户名以及跟消费者相关的一些操作功能。

这些操作功能包括修改用户的密码,查看自己的个人信息,修改自己的相关的个人信息。

当然用户登录之后也可以查看商品,最重要的,登录用户可以选择商品放入自己的购物车并下单结账。

还可以查看自己所下的订单。

根据上面的信息分析,我们大致可以分析出来有这么几个实体类来支撑这些操作,首先,注册之后就会产生一个用户,接着要用此用户来支持登录功能,这样一来,所有的用户集合成了一个用户实体类,这个实体类包括用户名,用户密码,联系方式,用户地址等等。

接着,在用户注册登录之后,商城就要向用户展示相关的商品,那么,所有的商品又集合成了一个商品实体类,这个实体类包括一些商品的相关信息,不如商品名,商品价格,商品生产日期等。

再者,用户如果对某些商品感兴趣了,就要把喜欢的商品放到购物车里,那么又一个购物车实体类产生了,这个实体类包括商品名称,商品价格,把此商品放入购物车的用户名称等等;最后会员买完东西后给商城下了订单,那么这个订单也需要包装成一个实体类,上面需要记录一些信息,最主要的信息应当有:

谁下了这个订单?

买了什么东西?

多少钱?

其它的诸如什么时候下的也可以记录。

1.1.2作为一名商城管理员的使用流程

管理员首先也要登录才能操作所有功能,商城管理员应当能管理商城注册的会员:

可以查看商城的已注册会员,并且对已注册的会员信息进行修改,而且也可以删除相关的会员。

接着,管理员还应该有如下的一些功能。

首先,添加父类商品,比如说“书籍”,再者,就是可以添加子类商品,比如说“计算机”,最后,管理员应该也可以添加子类下的相关的一些商品,比如说“30天精通JAVA”。

当然,管理员应该也可以修改自己的密码。

从管理员的操作,我们也可以得到这么几个实体类。

第一,管理员,既然有管理员那么就必须有一个类来记录这些东西,对于该系统需要说明一点的就是:

在我开发的这个系统中,由于本人的水平只是有限,为了降低该项目的复杂度,所以本人把管理员和会员都放在同一个实体类中去了,在登录的时候把管理员的名称固定到代码中去了,即:

admin,用户类这个实体类中,admin这个用户是不能删除的,是永久保存在此实体类中的,只要以这个名称登录,那么页面就会跳转到管理员的操作页面中去;第二,这里提到了父类别,那么这个也应当包装成一个类,而且这个类应当和子类别有一定的关联。

第三,这里也提到了子类别,那么子类别也应该是个实体类,这个类和商品类也有一定得关联;第三,最底层的就是商品这个类了,所有商品集合在一个构成了一个商品实体类,商品类别是属于某个子类别中的一种。

因此,从前面两个站在不同角度来分析使用流程来看,我从中提取出了一些个名词,这些个名词也就成为了一些基础的实体类,目前分析的出来的有,用户类、商品父类别类、商品子类别类、商品类、购物车类、订单类、。

显然,这些个类在此商城项目中是比较具体的,是可以很明显看出的,但是还有一些类是比较“抽象”的,是不能这样直接的通过找名词来得出来,但是可以分析这个过程,可以得出这些类确实要存在,因而来将其推算出来。

商城有很多数据是要存到数据库的,在这里,我把一些与数据库打交道的通用操作封装成为一个JDBC的类。

另外,对于商城页面中涉及到需要分页的,我写了一个通用的分页实体类,里面包括六个相关的属性。

当然这肯定不是全部,随着分析设计的深入,还会有一些类添加进来,就算进入到实际开发阶段,还有可能突然觉得需要再加入某个类。

1.2网上商城模块分析

1.2.1用户模块分析

用户模块是为商城的前台展示所设计的,用户模块又可以大致划分为一下子模块:

1.用户注册模块

2.用户登录模块

3.用户信息修改模块

4.修改用户密码模块

5.商品展示模块

6.购物车模块

7.查看以往订单模块

用户注册模块负责新会员注册,并将其持久化,也就是将新注册的会员的信息写入数据库。

登录模块负责验证会员的登录,看看有没有这个用户,密码是否正确等,这种操作通常都是从数据库查询。

用户信息修改模块可以让用户修改自己的个人信息,这就涉及到了数据库的修改。

修改用户密码模块让用户修改自己的密码。

商品展示模块应当是从数据库中将商品拿出来,然后再以某种方式显示的网页上。

购物车模块就是收集和记录用户所购买的商品,购物车最后要么被直接销毁,要么会转化为订单,然后被销毁。

查看以往订单模块使用户能查看自己所下的订单。

因此数据库的操作始终贯穿在整个系统里面,几乎所有的地方都涉及到了数据库的操作。

1.2.2管理员模块分析

管理员模块是为管理员管理商城事物所设计的,管理员模块又可以初步划分为以下子模块:

1.会员管理模块

2.商品类别管理模块

3.商品管理模块

4.订单处理模块

5.管理员的自我管理

很明显,会员管理模块是用来管理商城的注册会员的,应当可以查看会员、修改会员信息、删除会员,这就是对数据库的增删改查的体现。

商品类别管理模块用来管理商品类别,可以查看商品类别,添加商品类别,修改商品类别和删除商品类别。

商品管理模块用来管理商城的商品,可以查看商品,添加商品,修改商品和删除商品。

订单处理模块用来管理会员所下订单,可以查看会员所下的订单,并处理这些订单。

1.3本章小结

本章主要从商城的使用者角度,也就是普通用户和商城管理员两方面分别分析了这些用户对商城一般的操作流程。

然后根据这些流程分析出了一些直接的类,也就是一些基础的实体类,并跟据这些大致的流程分析出两个大模块,用户模块和管理员模块,两个大模块又可以进一步细分为一个个小模块。

并大致分析了这些模块的功能。

第三章网上商城系统的设计与实现

本章是网上商城系统的具体设计,包括开发环境的选择及介绍,各个功能模块的具体设计以及一部分实现。

1.4开发语言和工具介绍

这里介绍我选择的开发语言,开发工具等。

1.4.1开发语言介绍

1.Java简介:

Java是一种简单的,面向对象的,分布式的,解释型的,健壮安全的,结构中立的,可移植的,性能优异、多线程的动态语言。

Java平台由Java虚拟机(JavaVirtualMachine)和Java应用编程接口(ApplicationProgrammingInterface、简称API)构成[2]。

Java应用编程接口为Java应用提供了一个独立于操作系统的标准接口,可分为基本部分和扩展部分。

在硬件或操作系统平台上安装一个Java平台之后,Java应用程序就可运行。

现在Java平台已经嵌入了几乎所有的操作系统。

这样Java程序可以只编译一次,就可以在各种系统中运行。

2.HTML简介:

HTML是HypertextMarkupLanguage的缩写,即超文本标记语言。

它是用于创建可从一个平台移植到另一平台的超文本文档的一种简单标记语言,经常用来创建Web页面。

HTML文件是带有格式标识符和超文本链接的内嵌代码的ASCII文本文件。

HTML是制作网页的基础,

3.JavaScript简介:

JavaScript是由Netscapt与SUN公司合作开发的产品。

JavaScript是一种跨平台的开放式脚本描述语言,它是Java和Livescript的衍生物,它生成的应用程序能够将客户和服务器上的对象和资源联系在一起,通过Internet动态的表示信息并与用户进行交互。

JavaScript是用来改变网页外观的编辑命令和指令,它对网页设计有着重要的帮助。

4.AJAX简介:

AJAX即“AsynchronousJavaScriptandXML”(异步JavaScript和XML),AJAX并非缩写词,而是由JesseJamesGaiiett创造的名词,是指一种创建交互式网页应用的网页开发技术。

5.JSP简介:

JSP(JavaServerPages)是由SunMicrosystems公司倡导、许多公司参与一起建立的一种动态网页技术标准[7]。

该技术为创建显示动态生成内容的Web页面提供了一个简捷而快速的方法。

JSP技术的设计目的是使得构造基于Web的应用程序更加容易和快捷,而这些应用程序能够与各种Web服务器,应用服务器,浏览器和开发工具共同工作。

JSP规范是Web服务器、应用服务器、交易系统、以及开发工具供应商间广泛合作的结果。

1.4.2数据库介绍

 MySQL是一个真正的多用户、多线程SQL数据库服务器,它是一个客户机/服务器结构的实现。

MySQL是现在流行的关系数据库中其中的一种,相比其它的数据库管理系统(DBMS)来说,MySQL具有小巧、功能齐全、查询迅捷等优点。

MySQL主要目标是快速、健壮和易用。

关键的是它是免费的,可以在Internet上免费下载到,并可免费使用。

MySQL对于一般中小型,甚至大型应用都能够胜任。

1.4.3服务器介绍

Tomcat是Apache软件基金会(ApacheSoftwareFoundation)的Jakarta项目中的一个核心项目[10],由Apache、Sun和其他一些公司及个人共同开发而成。

因为Tomcat技术先进、性能稳定,而且免费,因而深受Java爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web应用服务器。

1.4.4开发工具介绍

在开发过程中,我主要用到了myeclipse

1.MyEclipse介绍:

MyEclipse,是一个十分优秀的用于开发Java,J2EE的Eclipse插件集合,MyEclipse的功能非常强大,支持也十分广泛,尤其是对各种开源产品的支持十分不错。

1.5业务逻辑设计

要实现网上商城的业务逻辑,必须有相应的实体类和其相应的方法,这里就大致将其设计出来。

1.5.1基础共用类和相应方法

整个系统有一些通用的类和方法,比如连接数据库等。

1.5.1.1DataBase类

方法:

1.publicstaticConnectiongetConn()取得用于连接数据库的Connection。

2.publicstaticvoidclose(Connectionconn)关闭Connection。

3.publicstaticvoidclose(Statementstmt)关闭Statement。

4.publicstaticvoidclose(ResultSetrs)关闭ResultSet。

3.2.1.2PoolDataSource类

privatestaticStringusername;

privatestaticStringpassword;

privatestaticStringurl;

privatestaticStringclassName;

privatestaticintmaxActive;

privatestaticintminActive;

privatestaticintcurActive;

privatestaticPropertiesprop=newProperties();

privatestaticintcurActive

getters()和setters()方法,用来得到和设置成员变量的值,因此不详细列出。

3.2.1.3Page类

Page包装了分页信息。

成员变量:

1、privateIntegerpageNo;//当前是第几页

2、privateIntegerpageSize;//当前总共多少页

3、privateLongtotalPage;//总共多少页

4、privateStringurl;//页面地址(jsp)

5、privateStringmethod;//相关方法名

6、privateStringindex;//用来作标记的

方法:

getters()和setters()方法,用来得到和设置成员变量的值,因此不详细列出。

1.5.2用户实体类以及相关的类和相应方法

为了实现商城会员的注册、登录、查看会员自己的信息、修改会员的个人信息、修改个人密码和查看所下的订单,应当有一个用户实体类和其相应的方法,在这里设计出两个类User类。

User包装了用户的信息,并提供相应的get和set方法;

1.5.2.1User类

成员变量:

1.privateintid用户id。

1、privateIntegeruserId;//User的id

2、privateStringusername;//用户名

3、privateStringpassword;//用户密码

4、privateStringemail;//用户邮箱

5、privateStringaddress;//用户地址

6、privateStringphone;//用户联系方式

方法:

getters()和setters()方法,用来得到和设置成员变量的值,因此不详细列出。

3.2.2.2IUserDAO接口

1、UserfindUserByExample(Useruser);//根据一个user找出user

2、voidsave(Useruser);//添加一个user

3、ListfindAllUser();//查找出所有的会员

4、UserfindUserById(IntegeruserId);//根据某个id查找对应的user

5、voidmodify(Useruser);//修改相应的user

6、voiddelete(Useruser);//删除选中的user

7、UserfindUserByName(Stringusername);//根据用户名称查找user

8、ListfindUserByPage(Pagepage);//根据页数号码列出用户

9、voidmodifyPasswordByUid(Integeruid);//根据id修改相应的用户密码

3.2.2.3UserDAO类

实现了IUserDAO接口的所有方法,在此不再详细列出。

3.2.2.4UserService类

成员变量:

IUserDAOuserDao=newUserDAO();

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 医药卫生 > 基础医学

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2