Oracle课程设计网上购物系统_第1页
Oracle课程设计网上购物系统_第2页
Oracle课程设计网上购物系统_第3页
Oracle课程设计网上购物系统_第4页
Oracle课程设计网上购物系统_第5页
已阅读5页,还剩23页未读, 继续免费阅读

下载本文档

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

文档简介

1、湖南理工学院计算机学院课程设计报告课程Oracle数据库题目网上购物系统学号姓名罗前班级计科1404指导教师白天2017年6月19日目录目录2第一章引言错误!未定义书签。项目背景3设计目的3开发工具的选择3开发环境3第二章需求分析.4可行性分析4系统任务描述4体系架构4系统设计和功能分析4第三章总体设计7消费者子模块75后台子模块5第四章数据库设计9概念结构设计9逻辑结构设计10具体设计11实现12心得20第一章引言项目背景进入21世纪以来,电子商务伴随着IT的成熟,逐渐发展壮大,成为网络经济的核心。在电子商务的发展过程中,网络在人群中的使用率不断提高,人们逐渐意识到在线购物的无地域界限、安全

2、、方便快捷及其价格优势,在线购物的队伍也随之扩大。如今网上购物的人群不断增加,为了满足用户的更高体验我深入分析了本系统各个模块之间的协调能力以满足客户需求。该系统的主要目的是:满足用户网上购物需求,方便快捷,足不出户就可以优惠的价格买到最称心如意的商品。设计目的此课程设计的主要目的是使自己能熟练掌握基于Oracle数据库的应用系统的开发,所以也是基于Oracle的一些基本操作的应用。同样选择这个选题也是因为日益流行的网络购物所展现出来的优势,所以我才设计出这个系统来方便用户来购买实惠的商品。开发工具选择本系统后台数据库采用Oracle10g数据库,该数据库系统在安全性、准确性和运行速度方面有绝

3、对的优势,并且处理数据量大,效率高;前台采用Myeclipse作为主要开发工具,通过JDBCa据库驱动可与Oracle数据库链接。开发环境系统开发平台:Myeclipse系统开发语言:java数据库管理软件:Oracle10g第二章需求分析可行性研究可行性研究阶段的主要任务是在系统初步调查的基础上,对新系统是否能够实现和值得实现等问题做出判断,避免在花费了大量的人力和物力之后才发现系统不能实现或新系统投入使用后没有任何实际意义而引起的浪费,对新系统可行性的分析,要求用最小的代价在尽量短的时间内确定系统是否可行。(1) 技术可行性分析网络在线商城系统的开发是一项复杂的系统工程。为了保证系统开发成

4、功,必须采用工程化的系统开发方法,并研究出一些符合工程化标准的开发方法。这些方法旨在指导开发者进行工程化的系统开发,从而加快系统开发的速度,保证质量以及降低开发成本。工程化的系统开发方法确实在开发实践中取得了一定的效果。(2)运行可行性分析随着计算机知识的普及和推广,越来越多的人掌握了计算机的基本使用方法和技能。随着Internet的发展,用户对于网络、WINDOW簪环境下的软件使用比较熟悉,对于新鲜事物,用户表现出极大的兴趣和热情。(2) 经济可行性分析网络在线商城系统给人们带来了方便,成为一种全新的商务模式。因此,不用出门就可以在家购物的新时尚已经到来,构建一个网络在线商城系统在经济上是完

5、全可行的。系统任务描述系统模块的设计遵循整个系统总体设计思路,基于web的应用程序开发与数据库设计。体系架构从功能构成的角度出发划分系统的职能层次,按照从底层到顶层,服务到应用的划分方法,网上购物系统基本上可以划分为四个部分:应用运行集成环境层、系统支撑软件架构、功能组件支撑和系统业务模块。其基本组成图如下:网络在线商城系统体系结构条会山上模发言台音理受用户功能组1支排基于EPlLHTML4的消息推送组件HTTP年设后唱太行环立 II JSP.,。2班手孽 JDBC奚抗至竹爰及环Tbmcat应用母齐器""车案就""系统支4氢件啕(一)应用运行集成环境层包

6、括本系统部署环境平台操作系统(本系统对操作系统无特殊要求,系统可以无缝迁移到Windows/Linux/Unix等常见平台之上)、系统使用的数据库管理系统(默认使用Oracle,系统内部数据库访问操作采用灵活的数据库方言机制,能够灵活的支持系统数据持久层迁移)以及本项目运行的应用服务器(Tomcat)(二)系统支撑软件架构包括操作系统中的TCP/IP协议栈、JRE运行环境,J2EE引擎以及访问数据持久层的JDBCAPI。(三)功能组件支撑本系统需要不同客户端界面之间的实时性响应,需要在基础资源管理层和业务模块之间实现业务间实时通讯的功能组件,该组件必须能够兼容目前最成熟,运用范围最广的HTML

7、5标准。(四)功能组件支撑包括网络在线商城系统的运营业务功能模块,如商品管理,用户浏览查询商品、结算购物车,管理员处理订单、管理商品相关信息。系统设计与功能分析网上购物系统,可用于一些自由职业者打发时间,热爱网购的学生来进行网购的平台,它使用方便,易用性强,图形界面清晰明了。该系统页面使用HTML+CSS+JavaScript编写,运用一些Jquery库和bootstrap框架,用Oracle10g数据库作为后台的数据库进行信息的存储,用SQL语句完成商品信息的添加,查询,修改,删除的操作以及订单的修改,删除等,同时这些都可以通过后台管理员的页面来实现。另外我们用JDBC驱动实现前台与后台数据

8、库的连接。该系统实现的大致功能:(1)用户登陆界面。ID号和密码输入正确即可登录。用户:1 .用户注册2 .用户登录3 .查看用户本人详细信息,包括用户名、邮箱地址、上次登录时间等4 .用户信息修改,包括邮箱地址与密码等5 .浏览商品详细信息6 .将商品加入购物车7 .删除商品8 .提交订单并支付9 .查看购买记录10 .查看在线人数与当前时间(2)管理员界面。提供了对车辆信息的查询,添加,修改,删除。修改密码等功能。拥有最高的权限。允许添加普通用户信息。管理员:1 .管理员登录2 .查看本人详细信息,包括用户名,邮箱地址、上次登录时间等。3 .管理员信息修改,包括邮箱地址和密码。4 .浏览商

9、品的详细信息。5 .商品的上架。6 .订单的处理II.WIF.F._X/x|jj人、Jm.1w图系统用例图第三章总体设计经过对系统的需求分析,网上购物系统主要划分为两个大的部分:消费者子情子模块。如图系统的总体结构。块和后台可吕啕买收货府认个人信电修改后台管埋r模块,消费者子模块图.1前台消费者模块结构图系统的总体结构前台用户登录后可以进行商品信息的查看,然后看到满意的商品添加到购物车,选好商品后进行结账下单,但后订单信息中可以看到订单状态,同时在收到货后也可以在订单页面进行收货确认,如图是前台消费者模块结构。消金柠模块MSG消费者模块订单直看商品彷息先看息模决后台子模块后台管理员页面主要可以

10、进行商品的查看,然后可以上架商品,就是添加商品,或者对商品的信息进行修改,同时也可以进行订单状态的更改,比如说发货。如图信息查询模块结构。图后台管理模块结构第四章数据库的设计概念结构设计数据实体关系图图实体关系图逻辑结构设置数据对象结构图用结构图形式全局的描述数据库的设计:说明各个数据表之间的关系,数据库表的关键字和字段等。口 O goods£h即pmqrartSd INT(ll) *l*dlNT£ii)*Gid NT(U)NLmtKi INT(ll)Sdacf »T£1I 蝌苣4-.d 1NT(L1JGnaie MAflCF网幽I - Num her

11、MT(H)Goholb JAAO1 踪;1O0),Type3 4Mdm)(A*Produce V*RCHiK(SD) CzafPrtFVOXTUW) itrnBQeFLDflLT(lfl,2 改teMTEhedre、咕士的(100)nwaibed CHAR (400) usersuid FJTfUlnO91 slrvadvbuyAjU IWT(lJ)unwue ,ARCr-#.;q&J?rM 华CHAJLA5 T gjswd f ARCKARgDATETIME,Gd INTtll)* J dlVTflzJ-Nunbcr INT(115u DATTTJHEsratement 丫曲EAAt

12、 图数据对象结构图代码表描述表四个表说明序号表名表描述1users存储用户的登录信息2goods存储商品信息3alreadybuy存储用户已经下单的订单信息4shoppingcat购物车内商品的信息具体设计-数据字典设计用户表表数据库-用户表用户表:users字段名称数据类型能否空默认值说明usidnumber(11,0)否无用户编号,主键,自动增长unamevarchar2(20)否无用户登录时使用的账号名称userpassvarchar2(20)否无用户登录时使用的密码emailvarchar2(50)否无用户的邮箱lastlogindate否无用户上次登录的时间购物车表购物车表购物车表:

13、shoppingcard字段名称数据类型能否空默认值说明sidnumber(11,0)否无主键,角色编号,自动增长usidnumber(11,0)否无用户角色id,外键gidnumber(11,0)否无商品id,外键gnumbernumber(11,0)否无购买的数量商品信息表表商品信息表商品信息表:goods字段名称数据类型能否空默认值说明gidnumber(11,0)否无商品编号,主键gnamevarchar2(100)否无商品名称gnumbernumber(11,0)否无商品的库存数量gphotovarchar2(100)是无typesvarchar2(100)否无商品的类型produc

14、ervarchar2(50)否无商品的生产商pricenumber(11,0)否无商品的单价carriagenumber(11,0)否无商品的运费pdatedate否无商品的上架日期paddressvarchar2(100)否无发货地址describedvarchar2(100)是无商品的详细描述已购买信息表已购买信息表已购买信息:alreadybuy字段名称数据类型能否空默认值说明aidnumber(11,0)否无已购买编号,主键,自动增长gidnumber(11,0)否无购头的商口口编pusidnumber(11,0)否无购买用户的编号gnumbernumber(11,0)否无购买的数量b

15、uytimedate否无购买的时间statementvarchar2(11)否无状态的描述.实现创建表空间为网上购物系统创建数据库的永久性表空间CARSYS采用区自动扩展,段采用自动管理方式,存储该系统中的数据表。用CREAT曰ABLESPAC踣句创建表空间,具体的表空间创建如下图所示:C:UG&rcuanpire>Gqlpluscijs/orclassycdbakoL*Plue:Roloaeo.6Productionon手期二6片2613:H2:5H2S17Capyright(c)1382,291S.口fUr.Allrights接到:KrttclDBtBbas&

16、#187;11gEnterpriseEdition.6-B4bitProductioniththePartitioning,口LAP,DataMiningandR»alApplieatioriTestingoptionsSQL>createtablespaceCRRSVSdatafile2 C;shoppingCRAiVS_OATA.DBF,SIZE193H3 ;展空间已创建图表空间创建创建数据库并插入记录为网路购物系统创建数据表,一共共四张表,利用createtable语句创建数据表并在创建的同时确定每张表的约束,具体如下图所示:用户表users的创建:SQL

17、>createtableusers(2 usidnumber(11,0)notnullprinarqkeij,3 uramearchiar2i(20)notnullp4 enamevarchar2(20)defaultnull,5 paoswduarchar2(5Q)notnullTGlactlogindatedefaultnull)7tablespaceCRAS7S;表已创建j购物车表shoppingcard的创建:SOLAcreatetableehoppingcart(2 didnumb&r(11,0)notnullprimaryky,3 u$idnumberf11,0)no

18、tnull,4 gidnumb0r(11,B)notnullt5 gnumbcrnumt>eri;11,0)defaultnull6 tablo&pacQCRASVS;表已创建.图表创建商品表goods的创建:SCL>createtablegoodsf2 gidnumborfl110)notnullprimarykoy,3 gnameuarehar2(109)notnull,4 gnumbernumber(11,0)defaultnullr5 gphotouarchBr2(100)defaultnullr6 typesuarchar2(100)defaultnull.7 p

19、roduceruarcharZrso)notnull.3pricenumber(11,0)notnull,Scarriagenumber(10T0)defaultnull.1Qpdatedatenotnull,11 paddresouarcharif190)notnullt12 deccriboduareharf100)defaultnull)13 tabloepaCQCRftS7S;表已创建.图good表创建订单详细表alreadybuy的创建:cretabicdlreadybuLj(aidnuinberfl1,0)notnullprimarykry,gidnumber(11hG)notnu

20、llFusidnumber(11.0)notnull.gnumbernumber(11G)notnull,bugtimedtenotnull,statementuarchar2(20)notnull)toblespaceCRASVS;表己创建.图alreadybuy表创建开启事务和使用for循环向shoppingcart中插入10000条数据:SQLbegin2 foriin1.100003 loopHinsertintoshoppingcartualues(i.iFiFi);5 endloop;6 coimnit:?end;8 /PL/SQL过程已成功完成,图插入10000条记录然后查询sh

21、opppingcart表:SIDUSIDGIDNUMBER1QOOO10OOD10000已选择10砥。行n图查询插入结果在数据表上建立索引在四个表中都建立索引,以便于快速查询,通过CREATEINDEXg句创建索引。在users表的name列上创建一个非唯一性索引,如图所示:SQLcreateindexusers_unameonuser5(uname)tablespaceCRASVS;索引已创建.图users表的非唯一性索引在users表的ename列创建唯一性索引,如图所示:JQL>createuniqueindoxuQr_onan»oononam«)tablesp

22、aceCR索引已创建.在shoppingcart表的gid列创建唯一性索引,如图所示:SQL>createuniqueindex5hoppingcartgidonohoppingcartfgid)2tablocpacoCRflSVS;一索引已创建.图shoppingcart表的唯一性索引在goods表的gnumber列创建函数索引,如图所示:SQL>createindexgood&_gnumberongoodsfgnuiiber)tablespaceCRACVS;索引已创建"图goods表的函数索引在shoppingcart表的gid列创建位图索引,如图所示:SQ

23、L>cr0mtebitnapindexalr?adgbugidon31n0mdybuy(gid)tdblwspmcpCR白!索弓已创建.图alreadybuy表的位图索引建立完整性约束针对数据库中各表的列属性建立完整性约束,包括唯一性约束和检查约束在users表的ename列添加唯一性约束,如图所示:SOL>altertablusersaddconstraintU_UKunique(»nanc);表已更改口图users表的唯一性约束在users表的passwd列添加检查约束,约束密码的位数必须大于6位:SQL>altertableusersaddconstraint

24、C_CKcheck(lengthtpasswd)>E);表已更改。在goods表中添加检查约束,商品的价格必须大于0:SGL>altertablegoodsaddconstraintC_UKcheckprice>0):表已更改口图goods表的检查约束视图、存储过程和触发器的创建在users创建一个包含用户基本信息的视图,用于方便快捷地查询到用户地基本信息,如图:SQL>cr«atouIqmur9_info_uieu(usid,unani0F»namo.pas9ud,lastlogin)2as3 usid.unaiii0,Md,lastloginfr

25、om4 uoers;观图已创建口图users表视图在shoppingcart表创建一个关于已经放入购物车商品信息的视图,用于用户可以实时看到购物车的信息,如图:SQLcreateuienshoppingcard_info_uieH(id.usid.gidhgnumlber)2 日33 select3id,u3i.d,gicl.gnumberfrom4 &hoppir»gcart;视图已创建。图shoppingcart表视图在users表创建存储过程,以用户的usid为参数,返回用户密码,以方便快速查询用户的密码,如图:SQL>createorreplaceprocedu

26、reproG_UGerc_paGGwd(2 u_idinego.ucrc.ueidXtgpe)3 as4 upassiddsije.usoreLpaeekiclXtL|pQ;5 b9ginG$oloetpa&$wdintou_paudfromsys.u&or7 whorousid=u_id;8 DBMS_DL1TPUTPUTLTNE(VOURPflSSlilDIS:'I|u_passud;9 endproc_usrs_passwd;10 /过程已创建.图users表的存储过程测试调用时,因存储过程中用到了,所以需要先用命令setserveroutputon开启输出服务,

27、这样在调用存储过程时才能看到其输出的值,如图所示:SQL>setoerveroutputon:SQLcallproc_Lis©re_pas9ud(1;调用完成口图存储过程测试在alreadybuy表创建一个存储过程,以输入用户的ID为参数统计该用户所购买的商品,用于快速的查询已经购买的商品,如下图所示:SQL>createorreplaceprocedureproc_alreadybuygid(2 u_idinalreadybuy.u9idZtype)3日34 u_gidsys.alreadMbuy.gidXtype;5 begin6 selectgidintou_gic

28、lfromsys.alreadybuy7 Hhorausid=n_id:gDBMS_OUTPUT.PUT,LINECYOUHALEBUVTHEGOODGIDIS:,Ilu.gid);9 endproc_alreadybuij_gid;10 /"过程已创建。图alreadybuy表的存储过程在users表中创建触发器,当你密码输错的时候,不能登录购买商品。触发器创建如下图所示:SQLcreateorr»plac*triggertri_Grror_paGswd2 beforeinsertonsys.users3 declare456T09G1p_passwdpasud:begi

29、nselectp口33Mdintop_pus3wdfrom行yw,use写;ifpassiMdt=p,pAssudthenraise_application_errcr('THEPASSkJDiSERROR);endif;endtrierrorpaeswd;图users表的触发器创建用户用createuseruser_name来创建用户,设置一个身份认证密码,默认表空间为CRASYS在该表空间的配额为20M,用户的状态设置为锁定状态,在需要开启该用户来管理数据库时再解锁该用户,用户创建如下图所示:SQL;createuseruampireidentifiedby1234562defau

30、lttablespaceCRASVSquota2QMonCRASVS3accountlock;用户已创建.图用户创建对admin用户授权,将该数据库中的4个表的所有操作权限授予admin用户,如图所示:SQL>grantallontouampiro授权成功°S0L5grantallanshoppingcarttouampir:授权成功.SQL>grantallongoodstouampire;授权成功口SQL>grantallonalreadjbuytouampire:授权成功。SQL>图用户授权对admin用户授予connect和resource的权限以保证在解锁用户后能够登录数据库。SQL>grantconnect,resourcetouampiro;授权戌功。图用户授权逻辑备份对数据库进行逻辑备份,备份用户数据,以防系统在运行时出现各种情况下的出现数据丢失,逻辑备份如下所示,使用EXP导出数据:命令格式为:expuserid=username/passwordtables

温馨提示

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

最新文档

评论

0/150

提交评论