《数据库原理及应用》课程设计-网上书店系统_第1页
《数据库原理及应用》课程设计-网上书店系统_第2页
《数据库原理及应用》课程设计-网上书店系统_第3页
《数据库原理及应用》课程设计-网上书店系统_第4页
《数据库原理及应用》课程设计-网上书店系统_第5页
已阅读5页,还剩18页未读 继续免费阅读

下载本文档

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

文档简介

成绩:__________《数据库原理及应用》课程设计课题:网上书店系统第一章概述1.1问题陈述开发一个基于Web的网上书店,该系统可以分类录入书籍和相关信息(如名称、页数、出版商、摘要、目录等),用户可以注册、登录,注册用户享受打折服务,所有用户都可以查询、浏览书籍。注册用户可以定购书籍并查询订单。1.2项目背景计算机网络的不断地发展与普及,网上书店也应运而生。人们已经不满足于从网上简单地获取企业信息、新闻等等,而是更迫切需要能够在网上实现互动地交流及足不出户地购买图书,因此诞生了众多的购书网站。网上书店逐渐成为人们的网上行为之一,利用网上书店系统,人们可以体验到便利、快捷的购书乐趣。拥有一个能够快速、准确处理商品数据的网上图书销售管理系统,从而做到合理生产、及时销售、库存量最小和减少商品积压,保证企业能够取得最佳的经济效益,同时带动快递业的发展,以及用这种便捷购物的方式刺激消费。面对这种日益增长的网上购书需求,开发一个安全可靠的网上购书系统是很有必要的。开发一个基于Web的网上书店,该系统可以分类录入书籍和相关信息(如名称、页数、出版商、摘要、目录等),用户可以注册、登录,注册用户享受打折服务,所有用户都可以查询、浏览书籍。注册用户可以定购书籍并查询订单。1.3编写目的确定对网上书店数据库系统的综合要求(功能需求、性能需求等)、分析系统的数据要求、导出系统的逻辑模型、修正开发计划。重点描述系统要实现的功能及数据的描述和管理。该文档根据“网上书店系统”项目的要求,为文档的编写开发人员明确要实现的功能,并提供明确的工作方向。本文档的预期读者:数据库设计人员数据库开发人员数据库管理人员数据库维护人员测试人员客户1.4软件定义略1.5开发环境1) 系统运行网络环境本系统的网络运行,无论是客户端的用户还是管理端的管理者都可以通过网络登录到本系统中。用户通过网络利用浏览器查看图书信息购买图书。管理者通过网络管理用户的购买情况。2) 系统运行硬件环境 客户机:普通PCCPU:P41.8GHz内存:256MB以上分辨率:推荐使用1024*768像素 WEB服务器CPU:P41.8GHz内存:256MB以上 数据库服务器CPU:P41.8GHz内存:256MB以上3) 系统运行软件环境 操作系统:Windowsxp/Windows7 数据库:MYSQL 开发工具包:JDKVersion1.6 JSP服务器:Tomcat6.0 浏览器:IE6.0/360浏览器 网络协议:TCP/IP协议1.6系统结构图图1系统结构图系统模块清单如下:编号模块名称模块标识符1用户系统user2管理员系统manager3会员系统member4非会员系统visitor5个人信息管理Information-management6图书浏览查询book-scan-search7收藏夹管理favorites-management8图书收藏book-collection9图书购买book-purchase10订单查询order-query11会员注册member-register12会员登录member-login13会员信息修改member-information-change14图书浏览查询管理book-scan-search15用户管理member-management16图书管理book-management17订单管理order-management18管理员登陆manager-login19录入图书信息manager-login20修改图书信息manager-login表1系统模块清单1.7数据流图图2顶层DFD图图3功能级DFD图第二章数据库设计2.1需完成的功能2.1.1系统介绍本系统的最终用户是普通的网页浏览者和一般数据库维护人员。前者要求拥有基本网页使用能力,能浏览网页,完成书目查询。后者要求拥有基本的数据库维护能力,维护书籍和用户信息,并能将用户订单请求汇总处理。网上书店系统由用户系统和管理员系统两个部分组成:用户系统部分:个人信息管理图书浏览查询收藏夹管理图书购买订单查询管理员系统部分:用户管理图书管理订单管理管理员登录2.1.2功能目标1)书籍浏览:用户通过浏览器访问本系统,系统按不同的分类为用户提供推荐书籍。管理员录入的图书信息中包含可能的分类标签。2)书籍查询:系统为用户提供书籍检索功能,可根据不同类型的关键词来搜索。3)书籍收藏:用户选择书籍后可以进行收藏,书籍信息保存在用户收藏夹。4)书籍购买:用户选择书籍后可以进行购买,购买完成后将给管理员提交订单信息。5)用户管理:用户注册、登录、个人信息管理等功能。6)管理员管理:管理员维护用户信息、书籍信息,处理用户购书产生的订单信息。2.2E-R图图4E-R图2.3关系模式E-R模式得出的关系模式图书(编号、封面、书名、作者、价格、出版社、类别、简介)会员用户(用户ID、密码、姓名、性别、地址、邮箱、联系方式、等级)非会员(无信息)管理员(管理员ID、管理员密码、管理员权限)订单(用户ID、图书编号、交易时间、成交价格)2.4基本表的关系图5数据库表关系图2.5数据库详细设计2.5.1数据库表的结构1、管理员表1)该表记录管理员的用户名、密码以及权限。管理员可以添加各种权限的用户,修改,和删除用户。2)表标识为admin。3)各字段的定义见表2。字段名字段标识字段类型及长度小数点允许空值主键序号IDAdminidvarchar(20)0no1密码Passwordvarchar(20)0no权限Privilegedecimal(1)0no表2管理员表字段定义4)各字段的含义和填写方法应符合以下规定:ID:管理员用来登陆的ID。密码:登录密码。权限:管理员权限。等级越高可执行的操作级别越高,还可以管理下一级的管理员。2、图书信息表1)该表用来记录图书信息。此记录的信息将会显示在用户搜索后的页面上。2)表标识为book。3)各字段的定义见表3。字段名字段标识字段类型及长度小数点允许空值主键序号编号bookidvarchar(20)0no1书名booknamevarchar(40)0no作者authorvarchar(20)0no封面coverurlvarchar(60)0no简介Brieflongtext(0)0no类别Taglongtext(0)0no出版社Pressvarchar(20)0no价格Pricedecimal(6)2no表3图书信息表字段定义4)各字段的含义和填写方法应符合以下规定:编号:图书ISBN号。书名:图书的名字。作者:图书的作者。封面:图书的封面图片。简介:图书的简单介绍。类别:图书所属类别。出版社:图书的出版社。价格:图书的价格。3、用户表1)该表用来记录用户信息。此记录的信息会详细地显示在登录登录后的页面上。2)表标识为user。3)各字段的定义见表4。字段名字段标识字段类型及长度小数点允许空值主键序号用户名Useridvarchar(20)0no1姓名Usernamevarchar(20)0no密码Passwordvarchar(20)0no性别Gendervarchar(4)0no地址Addressvarchar(60)0no邮箱Emailvarchar(30)0no联系方式Phonevarchar(20)0no等级Leveldecimal(1)0no表4用户表字段定义4)各字段的含义和填写方法应符合以下规定:用户名:用户用来登陆的帐号。要求:只可使用中、英文或者两者结合方式,不允许使用其它字符并且不能超过20字符。姓名:用户的真实姓名。密码:用户用来登录的密码。要求:可以使用字母、数字、字符或者相结合的方式,字符长度为6-20个。性别:有两个选项通过下拉菜单形式供用户选择(男、女)。地址:用户的地址。邮箱:用户的邮箱。联系方式:用户的联系方式。等级:根据用户在网站的活跃度以及图书购买情况依据一定的积分制度进行分级。4、订单表表1)该表用来记录用户订单信息。2)表标识为order。3)各字段的定义见表5。字段名字段标识字段类型及长度小数点允许空值主键序号用户名useridvachar(20)0no1编号bookidvachar(20)0no2交易时间ordertimedatatime(0)0no3成交价格dealpricedecimal(6)2no状态statusvachar(10)0no表5订单表字段定义4)各字段的含义和填写方法应符合以下规定:用户名:用户用来登陆的帐号。编号:图书ISBN号。交易时间:用户下单的时间。成交价格:订单的最后交易价格。状态:订单当前状态,包括未付款、买家已付款、卖家已发货和交易成功的状态。2.5.2数据库表的数据AdminidPasswordprivilege00111110022222表6管理员表的示例图6图书表的示例useridBookidordertimedealpricestatus表7订单表的示例useridUsernamepasswordgenderaddressemailphonelevel001郑展111111男河海大学江南骏园710403340@18251822211002周婷婷222222女河海大学江南骏园474862116@1825182372003赵君333333女河海大学江南骏园625079121@1825182093004邵华444444女河海大学江南骏园495986777@1825182721005郭然555555男河海大学江南骏园484822112@1825182342表8用户表的示例第三章建表语句3.1创建管理员表sql语句CREATETABLEadmin(adminidvarchar(20)NOTNULL,passwordvarchar(20)NOTNULL,privilegedecimal(1,0)NOTNULL,PRIMARYKEY(‘adminid’));3.2创建图书表sql语句CREATE

TABLE

book

(

bookid

varchar(20)

NOT

NULL,

bookname

varchar(40)

NOT

NULL,

author

varchar(20)

NOT

NULL,

coverurl

varchar(60)

NOT

NULL,

brief

longtext

NOT

NULL,

tag

longtext

NOT

NULL,

press

varchar(20)

NOT

NULL,

price

decimal(6,2)

NOT

NULL,

PRIMARY

KEY

(bookid));3.3创建用户表sql语句CREATETABLEuser(useridvarchar(20)NOTNULLDEFAULT,usernamevarchar(20)NOTNULL,passwordvarchar(20)NOTNULL,gendervarchar(4)NOTNULL,addressvarchar(60)NOTNULL,emailvarchar(30)NOTNULL,phonevarchar(20)NOTNULL,leveldecimal(1,0)NOTNULL,PRIMARYKEY(userid));3.4创建订单表sql语句CREATETABLEorder(useridvarchar(20)NOTNULL,bookidvarchar(20)NOTNULL,ordertimevarchar(40)NOTNULL,dealpricevarchar(6)NOTNULL,statusvarchar(10)NOTNULL,PRIMARYKEY(userid,bookid,ordertime),KEYbookid(bookid),CONSTRAINTbookidFOREIGNKEY(bookid)REFERENCESbook(bookid),CONSTRAINTuseridFOREIGNKEY(userid)REFERENCESuser(userid));第四章SQL语句操作4.1查询书名包括“地狱”的图书信息SELECT*,FROMbook,WHEREbooknameLIKE’%地狱%’;4.2查询图书标签为“小说”的图书信息SELECT*,FROMbook,WHEREtag=’小说’;4.3查询管理员名为“AAA”的密码和权限SELECTpassword,privilege,FROMadmin,WHEREadminid=’AAA’;4.4查询2014-6-26订单数量SELECTCOUNT(ordertime),FROMorder;WHEREordertime=’2014-6-25%’;4.5查询用户名为“BBB”的用户信息SELECT*,FROMuser,WHEREuserid=’BBB’;第五章数据库访问技术使用JDBC方法以及其开源的C3P0连接池连接数据库。JDBC是Java数据库连接(JavaDatabaseConnectivity)的简写,是一组用于连接数据库以及执行SQL语句的API。它允许用户从JAVA程序中访问任何支持SQL的关系型数据库,也允许用户访问其它的表格数据源,如Excel表格。它最大的特点是无论后台是何种数据库,对于Java程序员而言,它的工作方式完全相同。JDBC为许多不同的数据库连接模块的顶端提供了统一的接口,这样就不用为连接不同的数据库而烦恼了。与数据源建立连接,包括数据库和电子表格:这要通过DriverManager类建立与数据源的连接,这个连接将作为一个数据操作的起点,同时也是连接会话事务操作的基础。向数据库发送SQL命令:通过Statement或者PreparedStatement类向数据源发送SQL命令。在命令发送后,调用类中相应的excute方法来执行SQL命令。处理数据源返回的结果:数据库处理了SQL命令后,将返回处理结果。对于DDL和DML操作将返回被修改的记录数量;对于查询将返回一个ResultSet结果集,程序接着遍历这个结果集执行想要的操作就行了。C3P0是一个开源的JDBC连接池,它实现了数据源和JNDI绑定,支持JDBC3规范和JDBC2的标准扩展。目前使用它的开源项目有Hibernate,Spring等。JdbcUtil.javapackagecn.hhu.imageshop.util;importjava.sql.Connection;importjava.sql.ResultSet;importjava.sql.Statement;importcom.mchange.v2.c3p0.ComboPooledDataSource;publicclassJdbcUtil{ privatestaticComboPooledDataSourceds=newComboPooledDataSource("mysql"); publicstaticConnectiongetConnection()throwsException { returnds.getConnection(); } publicstaticvoidrelease(Connectionconn,Statementst,ResultSetrs) { if(rs!=null) { try { rs.close(); }catch(Exceptione) { thrownewRuntimeException(e); } rs=null; } if(st!=null) { try { st.close(); }catch(Exceptione) { thrownewRuntimeException(e); } st=null; } if(conn!=null) { try { conn.close(); }catch(Exceptione) { thrownewRuntimeException(e); } conn=null; } }}c3p0-config.xml<?xmlversion="1.0"encoding="UTF-8"?><c3p0-config> <default-config> <propertyname="driverClass">com.mysql.jdbc.Driver</property> <propertyname="jdbcUrl">jdbc:mysql://localhost:3306/onlinebookshop</property> <propertyname="user">root</property> <propertyname="password">150521</property> <propertyname="acquireIncrement">50</property> <propertyname="initialPoolSize">100</property> <propertyname="minPoolSize">50</property> <propertyname="maxPoolSize">1000</property> </default-config> <named-configname="mysql"> <propertyname="driverClass">com.mysql.jdbc.Driver</property> <propertyname="jdbcUrl">jdbc:mysql://localhost:3306/onlineboolshop</property> <propertyname="user">root</property> <propertyname="password">150521</property> <propertyname="acquireIncrement">10</property> <propertyname="initialPoolSize">20</property> <propertyname="minPoolSize">10</property> <propertyname="maxPoolSize">50</property><!--intergalactoAppadoptsadifferentapproachtoconfiguringstatementcaching--> </named-config></c3p0-config>第六章水文数据库建表A.1.1测站一览表CREATETABLEHY_STSC_A(STCDCHAR(8)NOTNULLPRIMARYKEY,STNMCHAR(24)NOTNULL,STCTCHAR(4),BSHNCDCHAR(32),HNNMCHAR(32)NOTNULL,RVNMCHAR(32)NOTNULL,OBITMCDCHAR(12)NOTNULL,ADDVCDCHAR(6)NOTNULL,WRRGCDCHAR(6),ESSTYRDEC(4,0)NOTNULL,ESSTMTHDEC(2,0),WDSTYRDEC(4,0),WDSTMTHDEC(2,0),DRARDEC(10,2),FLTOCHAR(32),DSTRVMDEC(5,1),FDTMNMCHAR(10),ADMAGCHAR(30),ADMNSTCHAR(30),STLCCHAR(50),LGTDDEC(12,9),LTTDDEC(11,9),STGRDCHAR(1),FRGRDCHAR(1),NTCHAR(80));A.2.1降水量摘录表CREATET

温馨提示

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

评论

0/150

提交评论