网上图书销售系统,毕业论文

毕 业 设 计 [论 文]

题 目: 网上书店销售系统 学 院: 计算机科学与工程学院 专 业: 计算机科学与技术 姓 名:

学 号:

指导老师:

完成时间: 2014年5月27日

摘 要

本网站严格按照MVC 设计模式来开发,采用Struts2,Hibernate ,Spring 开源框架为主要技术,另外采用了北京易宝公司的支付接口实现了网上支付功能,结合现在各大电商网站的邮件服务功能,采用JavaMaill 实现了邮件找回密码服务。JA V A 语言是目前Internet 上大型的WEB 应用程序开发时使用得最热门的编程语言,本文阐述了JA V A 和JSP 技术的特点优势以及其在互联网上的使用情况,介绍这两种技术的强大的编程方法和两者之关的关联,并完成一个基于这两种技术的网上书店购物系统。本网上书店购物系统主要有用户的管理,含注册、修改及获取密码,普通用户浏览图书、搜素图书、查看热门图书、发表留言、管理购物车,管理员图书的增删改查、图书类别增删改查、购物车管理等功能。本系统开发所应用的软件主要有:MYSQL5.0建立数据库,Dreamweaver 页面设计,MyEclipse8.5编译代码,Tomcat 服务器。

关键词:JA V A ;MyEclipse8.5; Struts2; Hibernate; Spring; JavaMail; 网上书店;Tomact Server

Abstract

This web site in strict accordance with the MVC design patterns to development, Using Struts2, Hibernate, Spring open source framework is the main technology, in addition to the payment interface Beijing YiBao company realizes online payment functions, combined with the mail service now each big electric business website,using JAVAMAIL realize the mail password service,This paper describes the characteristics of the technology and JSP JAVA and Internet use, Introduce the two technologies important programming method, and the connection of two, And complete online bookstore shopping system of based on the technology. This online bookstore shopping system mainly have the user management, including registered inspection modifying and obtain the password, ordinary users browse book search books view popular books published message management shopping cart, administrator of the books increased check book category pruning the pruning check shopping cart management etc. Function. This system development of software application basically has: the establishment of database MYSQL5.0, Dreamweaver page design, MyEclipse8.5 compiled code, Tomcat Server.

Key Words: JA V A ;MyEclipse8.5; Struts2; Hibernate; Spring; JavaMail; 网上书店;Tomact Server

目 录

摘 要 . ........................................................................................................ 错误!未定义书签。

第一章 绪 论 ............................................................................................................................... 1

1.1 本课题的来源及研究意义 .................................................................................................. 1

1.1.1 本课题的来源 . ............................................................................................................... 1

1.1.2 课题的研究意义 . ........................................................................................................... 1

1.2 网上书店概述 ...................................................................................................................... 2

1.2.1 网上书店的发展历史 . ................................................................................................... 3

第二章 系统需求分析和设计 ....................................................................................................... 5

2.1 需求分析 .............................................................................................................................. 5

2.2 可行性分析 .......................................................................................................................... 5

2.2.1 技术可行性 ..................................................................................................................... 5

2.2.2 经济可行性 ...................................................................................................................10

2.2.3操作可行性 . ...................................................................................................................10

2.3系统数据流程分析 . ..............................................................................................................11

2.3.1总体流程 . .......................................................................................................................11

2.3.2各模块流程 . ...................................................................................................................13

第三章 系统设计 .........................................................................................................................15

3.1系统结构图 . ..........................................................................................................................15

3.2系统功能具体分析 . ..............................................................................................................15

3.2.1公共模块 . .......................................................................................................................15

3.2.2普通用户模块 . ...............................................................................................................16

3.2.3管理员模块 . ...................................................................................................................16

3.2.4功能模块的调用 . ...........................................................................................................16

3.2.5系统文件结构 . ...............................................................................................................17

3.2.6系统公用类 . ...................................................................................................................19

3.3数据库的设计 . ......................................................................................................................19

3.3.1 B UYER 表 . .......................................................................................................................20

3.3.2 B OOKS 表 . .......................................................................................................................20

3.3.3 PRODUCTT YPE 表............................................................................................................22

3.3.4 MESSAGE表 ....................................................................................................................22

3.3.5 ORDER表 ........................................................................................................................23

3.3.6 ANNOUNCEMENT表 ........................................................................................................23

3.3.7 ORDERITEM表 ................................................................................................................24

3.3.8 ORDERITEM表 ................................................................................................................24

3.3.9 R ECEIVE A DDRESS 表 . .....................................................................................................25

第四章 系统功能模块实现 .........................................................................................................26

4.1用户登录模块 . ......................................................................................................................26

4.2用户注册模块 . ......................................................................................................................28

4.3管理员功能模块 . ..................................................................................................................31

4.4普通用户功能模块 . ..............................................................................................................33

结论 . .................................................................................................................................................36

参考文献 .........................................................................................................................................37

致 谢..............................................................................................................................................38

第一章 绪 论

1.1 本课题的来源及研究意义

1.1.1 本课题的来源

本课题源自河南城建学院级毕业论文给的命题之一。之所以选这个课题,是因为本人非常喜爱网上购物,对网上购物系统相对了解,而且本人一直想时机成熟了就开一家属于自己的网上书店,想对网购系统有更深一步了了解,加之现在本人掌握的软件编程知识和有老师的辅助指导,有足够的条件完成一个简单的网上书店购物系统。

1.1.2 课题的研究意义

综合来看网上书店购物系统有以下几点重大的意义:

1). 投资少,收益快。通过对中国中小型书店的情况调查显示,个人在网下启动销 售

公司的平均费用至少5万元,而网上开店建店成本非常小。一般说,筹办一家网上的书店投入很小,不用去办营业执照,不用去租门面,不用囤积大量的书籍,所需资金不过1500元左右;网上书店比同等规模的地面商店“租金”要低得多,同时租金不会因为营业面积的增加而增加,投资者也不用为延长营业时间而增加额外的费用。

2). 基本不需要占压资金。传统书店的进货资金少则几千元,多则数万元,而网上书

店则不需要压资金。

3). 网上书店在价格、时效性、品种、查询方式等方面都有优势。网上书店的书目

除书名,著者,价格等信息外,还有封面,内容简介,和评论等详细信息。让顾客对所购买书籍有更多更全面的了解。

4). 24小时营业时间。网上书店延长了商店的营业时间,一天24小时、一年365天

不停地运作,无须专人值班看店,都可照常营业。传统店铺的营业时间一般为8-12小时,遇上坏天气或者老板、店员有急事也不得不暂时休息。

5). 网上书店的书目数据是任何订购书目都无法比拟的,亚马逊网上书店有300多万

种图书,另外还有音乐系列产品和其它教育产品,刚刚成立的北京图书大厦网上书店也有16万种书目数据,由此看来网上书店不受店面空间的限制。哪怕只是街

边小店,在网上却可以拥有百货大楼那么大的店面,只要投资者愿意,可以摆上成千上万种书籍。

6). 不受地理位置影响。不管客户离店有多远,也不管顾客是国内还是国外,在网上,

客户一样可以很方便地找到并购买商品。这令消费群体突破了地域的限制,变得无限广阔了。

7). 网上书店不只局限于出售纸张的实物书籍,还可以将图书期刊以在线电子版(虚拟

版) 的形式出售给上网顾客,给她们提供下载资源。

1.2 网上书店概述

Internet 的迅速发展正以前所未有的深度和广度影响和改善着人类生活的各个方面, 越来越多的人开始意识到Internet 所蕴含的经济价值的无穷商机, 并积极投身于电子商务活动. 实际上, 电子商务是一些商业行为的电子化, 例如网络书城, 网上贸易, 就网络书城来说, 网络书城是目前应用最广, 最成功的典范之一, 网络书城的崛起对传统的图书流通体系产生了强烈的冲击, 有效地缩短了图书流通发行环节, 将广大读者, 图书, 出版者, 发行者紧密地结合在一起, 大大提高了图书流通率。

作者本人认为,网上书店是一种无店铺, 人不出门,在计算机联网的网络上作业,就可进行远距离的图书销售与订购。一般应具有如下功能:

(1)向上网顾客提供图书期刊在线电子版(虚拟版) ,供顾客订购 、下载;

(2)提供新书目、新书内容介绍、书评等,供顾客选择图书时参考;

(3)提供书店存货书目,供顾客挑选或补全、补缺;

(4)提供网上书店的有关资料,如营业执照等,让顾客了解网上书店的可信程度;

(5)开辟网上论坛,供顾客在网上讨论有关图书内容与网上发行中的有关问题;

(6)通过网络收集顾客采访图书的计划与要求,顾客的阅读爱好、兴趣、阅读历史和对网上书店的建议与要求;

(7)网上订购图书、期刊;

(8)安全认证、数字签名、网上结算和支付,并提供正式发票;

(9)图书配送;

(10)退货处理;

(11)质量监控。

但是由于时间及本人能力方面的一些条件所限,本次设计的网上书店系统主要是以普通用户实现浏览图书、搜素图书、查看热门图书、发表留言、管理购物车等功能。管理员实现图书的增删改查、图书类别增删改查、购物车管理等功能。其他的详细复杂的功能并没有涉及。

1.2.1 网上书店的发展历史

国外最早的电子商务体验其实是从网上售书开始的。1994年7月,美国考夫·贝佐斯在西雅图开设了全球第一家网上书店——亚马逊书店。这个与世界最长河流亚马逊同名的网络书店也是全球电子商务的一面旗帜。从创办至今,亚马逊公司的全球客户已达4000万,是最受欢迎的购物网站;它在网络上销售的商品已达430万种;营业额已超过10亿美元;其公司市值更超过了300亿美元。

亚马逊成功的示范效应让网上售书在世界范围内很快形成了一股汹涌之潮,尤其是西欧、北美等发达国家。甚至在传统发行体系颇为完善的德国,也同样刮起了网上售书的旋风。

“品种丰富、选购方便、提供折扣”——这三个特点让网上书店拥有天然经营优势,它能够吸引大批消费者的魅力正是因为品种丰富能满足读者的多方面需求,由于不受实物陈列空间的限制,网上书店向读者提供的选书品种往往能数十倍于实物书店,读者可以通过分类查找方式选择自己所需购买的图书。在亚马逊书店,读者找到自己所需要的图书后,可立即发出购书信息,一小时之内就可收到所购图书。而每当打开网上书店的网页,各种打折、让利的广告总是让你不仅心动而且马上行动。比如亚马逊书店对《纽约时报》评选的畅销书以40%至50%的价格出售。价格武器也是网上书店对传统书店的核心优势所在。

要做到这些,网上书店必须有大量的网上购书者、先进方便的结算方式、完善的配送体系、较高的折扣率等条件支持。亚马逊就通过其高效运转的一整套系统实现了零库存运转。

此外,通过计算机存贮的资料,网上书店毫不费力地建立起自己庞大的全球化读者信息库,对客户需求和产品行情的预测也就更准确。从而有效地降低库存,减少资金占用。此外,网上虚拟书店,业务环节大为简化,能节约费用开支,降低销售成本。 2000年左右,中国也引入了网上书店这种B2C 的电子商务模式。有以卓越网和当当网为代表的直接建立在因特网上的虚拟书店,其中卓越定位于精品图书的销售,当当网则是追随亚马逊模式的多品种销售的代表;还有一类是出于竞争或仿效也加入网上书店行列的一些老牌图书销售商,如新华书店。

当当是中国最早学习亚马逊的互联网公司,实行全品种备货,面向全世界中文读者提供30多万种中文图书,占中国大陆可供书市场的90%。低价与规模成为当当网最为看重的两大法宝。在价格上,实施沃尔玛式的“天天低价”策略,并开发出一套智能比价系统,通过与同类竞品价格扫描对比后自动调价。

卓越网自成立之初就确立了专注在图书音像产品领域,坚持“精选品种、全场库存、快捷配送”的卓越模式。这一模式的优势是,在动用较少的资金和资源下,能相对保证产品质量和服务,在管理执行上的效率较高,但不利于扩张。亚马逊在2004年9月斥资约7500万美元收购了卓越网,开始把卓越全面亚马逊化的“还魂与再造”,向“做大而精”转型。

但无论是当当网还是卓越网,在中国要复制亚马逊模式,就意味着要接受库存、配送、销售和管理成本的考量。此外,更大的难度还在于,目前中国图书音像业供应链并不成熟,要做到像亚马逊那样既要零库存又要配送及时实在是不可能完成的任务。历时7年之后,虽然已经把实体书店冲击得七零八落,但是当当网和卓越网自己仍没有实现盈利,未来如何实现规模与利润的平衡将是他们一个长期的难题。

第二章 系统需求分析和设计

2.1 需求分析

要设计一个实用的网络书店销售管理系统,就必须首先明确应用环境对系统的要求。本系统开发的总体设计目标为开发一个在线系统,实现图书的在线查找、销售,以及在线管理等功能。系统以Windows 操作系统为平台使用Web 服务器提供信息的浏览和查询,采用流行的B/S三层体系结构。

因此,该系统功能主要满足以下几方面需求:

1. 用户的管理,含注册、检验、修改及获取密码等功能。

2. 普通用户实现浏览图书、搜素图书、查看热门图书、管理购物车等功能。

3. 管理员实现图书的增删改查、图书类别增删改查、购物车管理、购物车管理等功能。

2.2 可行性分析

2.2.1 技术可行性

1. 硬件:计算机的存储量大,运算速度快,外部设备的功能好、效率高、可靠性高,通信设备的能力、质量都可以满足要求。

2. 系统软件:

(1)操作系统Windows7接口能力强,数据库管理系统的功能足够。

(2)本网站严格按照MVC 设计模式来开发,采用JSP 、Servlet 、JavaBean 和JDBC

等一些JAVA Web 相关技术实现。Java 技术是由美国Sun 公司倡导和推出的,是一种简单易用、完全面向对象、具有平台无关性且安全可靠的主要面向Internet 的开发工具。它是第一个真正独立于平台的语言,基于Java 语言开发的软件可以实现“一次设计,到处运行”,即Java 程序不经改变即可部署到任何运行Java 虚拟机的计算机结构和操作系统上,使得整个Web 世界发生了翻天覆地的变化。。JSP+JavaBeans几乎可以在所有平台上通行无阻,从一个平台移植到另外一个平台,JSP 和JavaBeans 甚至不用重新编译。除此之外Java 语言还提供了一些有

用的新特性,使得使用Java 语言比C++语言更容易写出“无错代码”。

3. 有专用的开发应用软件:

(1)MYSQL5.0,主要针对数据库的建立。MYSQL 是一款免费开源的数据库,操

作简单方便,是中小型企业作为后台数据库开发的理想平台

这个平台有以下特点:

可信任的——使得网店系统可以以很高的安全性、可靠性和可扩展性来运行他们最关键任务的应用程序。

高效的——使得网店系统可以降低开发和管理他们的数据基础设施的时间和成本。

智能的——提供了一个全面的平台,可以在你的用户需要的时候给他发 送观察和信息。

(2)Dreamweaver ,主要针对网页的制作。工欲善其事,必先利其器。Dreamweaver 是

Macromedia 公司推出的可视化网页制作工具,制作出来的网页兼容性比较好,制作效率也很高。可以控制和删除冗余代码,使网页文件的结构更加合理,从而能够快速下载。与其他软件不同,Dreamweaver 采用的是浮动面版的设计风格,而Dreamweaver 的直观性与高效性是其他软件所无法比拟的。

(3) MyEclipse ,是一个十分优秀的用于开发Java, J2EE的Eclipse 插件集合,

MyEclipse 的功能非常强大,支持也十分广泛,尤其是对各种开源产品的支持十分不错。利用它我们可以在数据库和JavaEE 的开发、发布以及应用程序服务器的整合方面极大的提高工作效率。它是功能丰富的JavaEE 集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML,Struts,JSP,CSS ,Javascript,Spring,SQL,Hibernate 。本次使用的是MyEclipse8.5版本,MyEclipse 8.5 比 MyEclipse 8.0 的启动速度快了点,MyEclipse 8.5 安装插件比MyEclipse 8.0 更加容易: MyEclipse 8.5 加入了MyEclipse Configurtion Center,管理插件更加容易。

(4) Tomcat, 是Apache 软件基金会(Apache Software Foundation)的Jakarta 项

目中的一个核心项目,由Apache 、Sun 和其他一些公司及个人共同开发而成。由于有了Sun 的参与和支持,最新的Servlet 和JSP 规范总是能在Tomcat 中得到体现,Tomcat 5 支持最新的Servlet 2.4 和JSP 2.0 规范。因为Tomcat 技术先进、性能稳定,而且免费,因而深受Java 爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web 应用服务器。目前最新版本是7.0。本次使用的是Tomcat 6.x ,在汲取 Tomcat 5.5.x 优点的基础上,实现了Servlet

2.5和JSP 2.1等特性的支持。除此以外的改进列表如下: 内存使用优化、更大的IO 容量、重构聚类。

(5) Struts2在WebWork 基础上发展起来的,可扩展的JAVA EE web框架。框架设计

的目标贯穿整个开发周期,从开发到发布,包括维护的整个过程。 Action类:Struts 2 Action类可以实现一个Action 接口,也可实现其他接口,使可选和定制的服务成为可能。Struts2提供一个ActionSupport 基类去实现 常用的接口。Action 接口不是必须的,任何有execute 标识的POJO 对象都可以用作Struts2的Action 对象。

线程模式:Struts2Action 对象为每一个请求产生一个实例,因此没有线程安全问题。 Servlet 依赖:Struts 2 Action不依赖于容器,允许Action 脱离容器单独被测试。

如果需要,Struts2 Action仍然可以访问初始的request 和response 。但是,其他的元素减少或者消除了直接访问

和 HttpServletResponse的必要性。

可测试性:Struts2 Action可以通过初始化、设置属性、调用方法来测试,“依赖注

入”支持也使测试更容易。

捕获输入:Struts2直接使用Action 属性作为输入属性,消除了对第二个输入对象的

需求。Action 属性能够通过web 页面上的taglibs 访问。 表达式语言:Struts 2 使用"ValueStack" 技术,使taglib 能够访问值而不需要把你的页面(view )和对象绑定起来。ValueStack 策略允许通过一系列名称相同但类型不同的属性重用页面(view )。Struts2不仅支持JSTL , Struts2 还可使用OGNL 进行类型转换。提供基本和常用对象的转换器。 校验:Struts2支持通过validate 方法和XWork 校验框架来进行校验。XWork 校验框架使用为属性类类型定义的校验和内容校验,来支持chain 校验子属性。

HttpServetRequest

图2.1 Struts2流程图

一个请求在Struts 2框架中的处理大概分为以下几个步骤。 客户端提交一个

(HttpServletRequest )请求,如上文在浏览器中输入

http://localhost: 8080/xxx/xxx/Reg.action就是提交一个(HttpServletRequest )

请求。 请 求被提交到一系列(主要是3层)的过滤器(Filter ),如(ActionContextCleanUp 、其他过滤器(SiteMesh 等)、 FilterDispatcher)。注意:这里是有顺序的,先ActionContext CleanUp,再其他过滤器(Othter Filters、SiteMesh 等),最后到FilterDispatcher 。

FilterDispatcher 是控制器的核心,就是MVC 的Struts 2中实现控制层(Controller )

的核心。 FilterDispatcher询问ActionMapper 是否需要调用某个Action 来处理这个(HttpServlet Request)请求,如果ActionMapper 决定需要调用某个Action ,FilterDispatcher 则把请求的处理交给ActionProxy 。

ActionProxy 通过Configuration Manager(struts.xml )询问框架的配置文件,找

到需要调用的Action 类。例如,用户注册示例将找到UserReg 类。

ActionProxy 创建一个ActionInvocation 实例,同时ActionInvocation 通过代理模

式调用Action 。但在调用之前,ActionInvocation 会根据配置加载Action 相关的所有Interceptor (拦截器)。 一旦Action 执行完毕,ActionInvocation 负责根据struts.xml 中的配置找到对应的返回结果result

(6)Hibernate 是一款免费开源的数据库持久层框架,它的使用大大简化了JAVA 开

发人员对数据库的操作,从繁琐的JDBC 代码中解放了出来

图2.2 HIBERNATE流程图

(7)Spring 框架是由于软件开发的复杂性而创建的。Spring 使用的是基本的JavaBean 来完成

以前只可能由EJB 完成的事情。然而,Spring 的用途不仅仅限于服务器端的开发。从简单性、可测试性和松耦合性的角度而言,绝大部分Java 应用都可以从Spring 中受益。

图2.3 SPRING流程图

2.2.2 经济可行性

从经济角度看,书店对系统的投资要小于系统对书店的回报,书店决策者才会实施系统计划。从本系统开发的角度出发,系统开发成功会减低人员费用的支出,办公用品的支出,同时,大量的用户增加会给书店无法量化的估计, 会使书店获得更大的收益。

2.2.3操作可行性

本系统大概需要五个月的时间完成。前一个月主要是以看书以及收集有关系统方面的资料为主;接下来就是对系统的分析,系统初步设计,开发环境部署;一切具备后就开始做具体编译代码,做数据库,界面,以及中间的连接,最后的实现。一个月则开始写网上书店购物系统的相关论文。重要的系统对于熟悉java 、JSP 编程的作者来说是可行的。

2.3系统数据流程分析

2.3.1总体流程

说明:未注册用户通过注册后可以以普通用户身份登录到前台进行购书,管理员通过登录可以以管理员进入后台进行管理。

系统总体设计如下图2.1所示:

图2.4 总体流程图

2.3.2各模块流程——普通用户管理和管理员模块

根据总体流程图,对普通用户管理和管理员模块作进一步分解,得到第二层数据流图,分别如图2.2和图2.3。

1. 普通用户管理

图2.5普通用户管理流图

2. 管理员

图2.6管理员流图

第三章 系统设计

3.1系统结构图

根据需求分析和方案设计,可得到系统结构图如图3.1所示:

图3.1系统结构图

3.2系统功能具体分析

按照系统的功能和用户角色,将整个系统分为3个模块,分别是公共模块、普通用户模块和管理员模块

3.2.1公共模块

公共模块为用户提供一些基础功能,系统中所有的用户都可以对它进行访问,它包括一下的功能模块和页面:

用户注册模块 用户登录模块 获取用户密码模块 用户退出页面 3.2.2普通用户模块

普通用户模块是网上书店的主题,访问该模块的用户需要先注册后登录,这个模块提供了以下功能: 浏览图书信息 搜索图书信息 查看热门图书信息 购物车管理 3.2.3管理员模块

管理员模块负责对网上书店的维护,只有管理员才能对图书信息进行管理操作,这个模块提供了以下功能:

图书信息管理(包括添加、修改、删除图书信息)

图书类别信息管理(包括添加、修改、删除图书类别信息) 购物信息管理(包括查看、删除用户的购物信息) 公告管理(包括增加公告,修改删除公告)

3.2.4功能模块的调用 用户注册模块 用户登录模块 分页显示模块 文件上传模块 邮件发送模块

网上书店中对数据库的所有操作也都封装在JavaBean 中。

3.2.5系统文件结构

系统文件结构图,如图3.1所示:

图3.2系统文件结构图

admin 文件夹中放的是管理员模块的功能页面文件;lib 放的是css 文件;normal 文件夹中放的是普通用户模块的功能页面文件;pic 文件夹放的是图书的图片文件;WEB-INF 文件夹放的是系统的类文件和配置文件;JSP 文件是公共模块的功能页面文件。

get_userpassword_form.jsp获取用户密码首页面

get_userpassword_send.jsp发送用户密码页面 image.jsp 产生验证码图片的页面

index.jsp 网上书店的登录页面,提供用户登录的接口 logout.jsp 用户退出页面

user_add.jsp用户注册信息处理页面 user_login_check.jsp用户登录信息处理页面 user_reg.jsp用户注册信息填写页面

普通用户模块文件对应的功能,放在normal 目录中 add_goods_form.jsp添加购物车页面 add_goods_save.jsp处理购物信息页面 add_word_save.jsp处理留言信息页面 book_detail.jsp查看图书详细信息页面 book_list.jsp查看图书列表页面 delete_goods.jsp删除购物信息页面 index.jsp 普通用户的首页面,是一个框架页 my_goods_management.jsp购物车管理页面 recomment_book.jsp推荐图书页面

recommend_book_list.jsp查看热门图书列表页面 search_book_form.jsp搜索图书信息 seach_book_result.jsp图书搜索处理页面 top.jsp 普通用户的功能选择页面

管理员模块中的文件所对应的功能,这些文件都放在admin 目录下 add_book_form.jsp添加图书信息页面 add_book_save.jsp处理添加的图书信息页面 add_sort_form.jsp添加图书类别信息页面 add_sort_save.jsp处理添加的图书类别信息页面 books_management.jsp图书管理页面 delete_book.jsp删除图书信息页面 delete_goods.jsp删除用户购物信息页面 delete_sort.jsp删除图书类别信息页面 goods_management.jsp购物信息管理页面 index.jsp 管理员的首页面,是一个框架页

modify_book_form.jsp修改图书信息页面 modify_book_save.jsp处理修改图书信息页面 modify_sort_form.jsp修改图书类别信息页面 modify_sort_save.jsp处理修改的图书类别信息页面 sorts_management.jsp图书类别信息管理页面 top.jsp 管理员的功能选择页面 user_detail.jsp查看用户详细信息页面

3.2.6系统公用类

用户登陆拦截器(atuhInterceptor.java ) 邮件操作类(EmailSender.java ) 日志记录操作类(loggerbean.java ) MD5加密工具操作类(MD5.java ) 易宝支付响应操作类(PaymentUtil.java ) 验证码操作类(verifyCode.java ) 购物车对象操作类(Cart.java ) 购物车详细类(CartItem.java ) 支付信息类(PayInfo.java )

3.3数据库的设计

建立数据库bookstore ,该数据库包含以下数据表: ● Buyer 保存网上书店中的用户资料 ● Product 保存网上书店中的图书信息 ● Types 保存网上书店中图书的类别信息 ● Cart 保存网上书店的购物车信息

3.3.1 Buyer表:

图3.3 普通用户BUYER 表结构

buyerId 用户的ID name 用户名 Password 用户密码 Email 用户邮件地址 regTime 用户注册时间 3.3.2 Books表:

图3.4 商品product 表

productId 图书信息对应的索引号,是该表的主键 productName 图书名称 PublishId 出版社 Author 图书作者 PicUrl 图书对应的图片 Price 图书价格 productDesc 图书简介 typeId 图书的分类标识 totalCount 图书的总库存 price 图书定价

sellCount 图书的销售数量 bookPages 图书总页数 imageFile 图书图片名称 createTime 图书上架时间 clickCount 图书浏览次数 isRecomond 是否是推荐图书标识

isSall 是否是降价销售图书标识 productCode 图书ISBN 编码 3.3.3 productType表:

图3.5 图书类型表结构

typeId 图书对应的类别编号 name 图书类别的名称

parentId 图书类别的上级所属分类Id 3.3.4 message 表:

图3.6 message表结构

Message_Id发货信息Id Content 发货信息主体 sendTime 信息发送时间 buyerId 购买者Id 3.3.5 order表:

图3.7 订单order 表结构

orderID 购物车信息对应的编号,是该表的主键 buyerID 购物车所属用户的索引号 sendState 发货状态标识 payState 发货状态标识 orderTime 订单提交时间 totalPrice 订单总价格

3.3.6 announcement 表:

图3.8 系统公告表结构

Id 公告id ,自增长,主键 Content 公告信息,文本格式 CreateDate 公告创建时间 Title 公告标题

3.3.7 orderitem 表:

图3.9 订单详细表结构

itemId 订单详细Id ,主键 author 图书作者 itemcount 订单商品个数 productId 图书Id productImage 图书图片 productName 图书名称 productPrice 图书单价 publishName 出版社名称 orderId 订单项所对应的订单Id

3.3.8orderitem 表:

图3.10 出版社结构图

PublishId 出版社Id Append 出版社介绍 publishName 出版社名称

3.3.9ReceiveAddress 表:

图3.11收货地址表

addressId :收货地址ID fullAddress :详细信息地址 isDefault : 是否是默认收货地址 phone : 联系人电弧 postCode :邮编地址 receiver : 收货人 buyerId : 购买者Id

第四章 系统功能模块实现

4.1用户登录模块

这里介绍用户登录的程序设计思路,数据库中存放有用户的基本信息,用户在网站中输入相关信息,通过匹配检测,便可以知道数据的有效性,登录模块流图见2.1。下面是登陆模块中的主要程序代码:

public String execute() { if (buyer != null) { }

return INPUT;

Buyer getmyBuyer = us.getUserByNameAndPass(buyer.getName(), buyer }

.getPassWord());

if (getmyBuyer != null) {

session.put("buyer", getmyBuyer); return SUCCESS;

//获取用户登录信息

}通过输入用户名和密码调用服务来查找用户信息,如果能找到则说明登陆成功,

然后检测SESSION 中是否已经登陆过,如果没有登陆过则在SESSION 中放入当前用户的登陆信息。

登陆界面截图4.1如下所示:

图4.1登陆界面截图

4.2用户注册模块

注册模块,会出现在很多程序中,这里借鉴了其他注册程序的流程。注册模块的核心思想是向数据库中输入数据,并且数据要不能重复,下面是注册模块的程序流程图如下图4.2所示:

图 4.2 注册程序流程图

注册模块中的主要程序介绍:


*用户名:


onblur ="checkuser(this);" />

长度4-20位


*请设置密码:


onblur ="checkpwd(this);"/>

6-18位数字或字符


*请确认密码:


onblur ="validatePwd2(this);"/>

再次输入密码


*电子邮箱:


onblur ="checkEmail(this);" />

请输入正确的邮箱


*验证码:


onblur ="checkCode(this);" />

onclick ="changeCode(this ); " title =" 点击更换验证码" />

看不清?

onclick ="changeCode($('#verifyCode')); " title =" 点击更换验证码" >刷新一下


src ="../images/user/regist-in.jpg" id ="regist" />


*用户名:


*密 码:


onmousedown ="getIt(this , '#msg_pwd'); " />

忘记密

码?


*验证码:


onblur ="checkCode(this);" />

onclick ="changeCode(this ); " title =" 点击更换验证码" />

看不清?

onclick ="changeCode($('#verifyCode')); " title =" 点击刷新验证码" >刷新一下


style ="color:red;list-style:none;">

src ="../images/user/log_in.jpg" id ="log" />


© 2024 实用范文网 | 联系我们: webmaster# 6400.net.cn