网络书店系统毕业论文.doc_第1页
网络书店系统毕业论文.doc_第2页
网络书店系统毕业论文.doc_第3页
网络书店系统毕业论文.doc_第4页
网络书店系统毕业论文.doc_第5页
已阅读5页,还剩37页未读 继续免费阅读

下载本文档

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

文档简介

摘要 I 摘 要 电子商务是利用现代信息网络进行商务活动的一种先进手段 作为创新的经济运行 方式 其影响己经远远超过商业领域 针对当前蓬勃发展的电子商务浪潮 本文从理论和实践两个角度出发 对电子商 务进行了深入的探讨 论文构建一个电子商务应用系统 网上书店 本系统是一个基于 Internet 采用 B2C Business to Consumers 模式 并根据现有 的网上购物系统的现状而设计开发的电子商务平台 它不但可以扩大商家的规模和市 场影响力 而且可以减少企业的经营成本 提高工作效率 本文首先介绍了网上购物系统的现状及开发背景 然后论述了系统的设计目标 系 统需求和总体设计方案 较详细的论述了系统的详细设计和实现 最后 本文对网上购 物系统进行了系统检测并提出了还需要改进的问题 本系统主要为用户提供了会员注册 购物车管理 商品搜索 用户资料修改等功能 为管理员提供了商品管理 用户信息管理 订单管理等功能 在设计方面 本系统采用 B S 三层结构 同时使用JSP 技术进行动态页面的设计 从系统的安全性和代码的可重 用性方面考虑 运用JavaBean 对程序的关键代码进行封装 后台数据库选用Mysql 数 据库 关键词 电子商务 应用系统 JSP MySQL Tomcat CSS HTML 青岛恒星职业技术学院毕业论文 设计 II ABSTRACT With the rapid development of computer technology a computer application in business management in the popularity of computer personnel management of enterprises is imperative The system combines the company s actual personnel management system through the actual needs analysis using the powerful JSP6 0 and Mysql as a development tool and developed a stand alone version of the personnel management system The entire system from the line with simple user friendly flexible practical and security requirements proceed to complete the entire process of personnel management including new employees to join the establishment when the personnel files the old roll out of employees job changes and other information caused by workers changes to employee information query statistics etc personnel management as well as budding new member of the old staff changes and other management work After the actual use of evidence this article is designed to meet the company s personnel management system personnel management needs With the gradual popularization of the network campus network construction is the school to the inevitable choice for the development of information technology campus network system is a very large and complex system it not only for modern teaching integrated information management and office automation applications such as a series of provide basic operating platform Abstract JSP MySQL Tomcat CSS HTML 目录 III 目录 摘 要 I ABSTRACT II 目录 III 前言 1 第一章 网上书店系统概述 1 1 1 系统开发背景 1 1 1 1 网上购物的发展 1 1 1 2 网上购物系统实现的现状 1 1 2 系统实现的目标 1 1 3 系统开发的意义 3 第二章 网上购物系统分析 5 2 1 网站的设计目标 5 2 2 网站的可行性分析 5 2 3 网站设计的特点 5 2 4 系统设计的总体规则 6 第三章 网上书店系统的开发技术架构 5 第四章 系统的功能和流程分析 7 4 1 网站的功能分析 7 4 2 系统流程分析 7 4 2 1 前台购物流程 7 4 2 2 注册功能流程 8 4 2 3 用户登录流程 8 4 2 4 图书 类别管理流程 9 4 2 5 购物车流程 10 第五章 系统功能的具体实现 11 5 1 数据库的逻辑结构设计 11 5 2 功能总体说明 12 5 2 1 目录结构说明 12 5 2 2 功能页面结构 12 5 2 3 主要功能流程 13 5 3 各功能模块的实现 14 5 3 1 数据库连接模块 com KeHuiBookShop DB 14 5 3 2 设计模式的应用 14 5 3 2 1 业务逻辑 DAO 封装 14 青岛恒星职业技术学院毕业论文 设计 IV 5 3 2 2 单例模式 14 5 3 2 3 模块的类设计 15 5 3 3 用户模块 15 5 3 3 1 会员注册登录设计 16 5 3 3 2 后台会员管理设计 17 5 3 4 类别模块 18 5 3 4 1 cno 值计算 18 5 3 4 2 类别的增删改查 19 5 3 4 3 类别的前台展示 22 5 3 5 图书模块 22 5 3 5 1 后台图书管理的基本操作 22 5 3 5 2 前台图书的展示 23 5 3 6 购物车模块 23 5 3 6 1 购物车的创建 23 5 3 6 2 购物车的管理 24 5 3 6 3 购物车的显示 24 5 3 7 订单模块 24 5 3 7 1 创建订单 25 5 3 7 2 用户提交订单 25 5 3 7 3 后台订单管理 26 5 3 7 4 用户查看订单 27 第六章 系统测试及难点分析 28 6 1 系统运行环境的搭建 28 6 1 1 JAVA 虚拟机的安装 28 6 1 2 Tomcat 环境搭建 28 6 2 系统程序的安装和加载 28 6 2 1 文件的拷贝 28 6 2 2 数据库的连接 28 6 2 3 系统的性能分析 29 6 3 系统中所存在的问题 29 第七章 结束语 30 致谢 31 参考文献 32 前言 1 前言 目前 网络正以一种前所未有的冲击力在影响着人类的活动 包括人类的生产和日常生活 网络的诞生和发展 颠覆了传统的信息传播方式 冲破了存在于传统交流方式中时间和空间的种种 壁垒 极大地改变了人类从物质到精神 从形式到内容 从生产到生活的各种活动 并且给人类带 来了新的机遇和挑战 电子商务将成为 21 世纪网络发展的主流 国内企业在纷纷加入到阿里巴巴等一系列大型电子 商务网站 通过网络进行 B2B 企业对企业 的网上交易之后 也充分认识到网络交易将成为未来 商品交易的重要组成部分 在建立企业宣传网络的同时 也逐步扩大企业自身的网络销售渠道 建 立自己的电子商务网站 完成从 B2B 到 B2C 企业对个人 同时进行网络交易的过度 大大提高了 企业网络交易的数量和金额 而本次毕业设计的任务是 构建一个电子商务网站 采用的主要技术是基于服务器端的 JSP Java 的组件 JavaBean 以及网页编程语言 HTML CSS JSP 是 Java Server Page 的缩写 是由 Sun Microsystems 公司倡导 许多公司参与建立一种 动态网页技术标准 它在动态网页的建设中有强大而特别的功能 JSP 是一种服务器端 HTML 或 XML 嵌入 Java 代码的脚本语言 是开发 Web 动态网站快速而有效的工具 JSP 的技术的优势 1 JSP 技术是用 Java 语言作为脚本语言的 Java 语言是成熟的 强大的 易扩充的编程语 言 2 高效性与安全性 JSP 在执行前先被编译成字节码 字节码由 Java 虚拟机解释执行 比源 码解释效率高 3 可维护性 由于 JSP 技术是一种开放的 跨平台的结构 因此 Web 服务器 平台及其他组 件能很容易升级或切换 且不会影响 JSP 基本的应用程序 4 稳定性 5 产品的多样性 目前 在国内 JSP 还是一种较新的技术 但 JSP Servlet JDBC JavaBean 目前已经成为开发 电子商务平台的主流技术 随着国内与国际的接轨 JSP 必将成为网站开发技术的首选 青岛恒星职业技术学院毕业论文 设计 2 第一章 网上书店系统概述 1 1 系统开发背景 1 1 1 网上购物的发展 近年来 随着Internet的迅速崛起 互联网已日益成为收集提供信息的最佳渠道并逐步进入 传统的流通领域 于是电子商务开始流行起来 越来越多的商家在网上建起在线商店 向消费者展 示出一种新颖的购物理念 网上购物系统作为B2B B2C Business to Customer 即企业对消费者 C2C Customer to Customer 即消费者对消费者 电子商务的前端商务平台 在其商务活动全过程中起着举足轻重 的作用 本文主要考虑的是如何建设B2C的网上购物系统 1 1 2 网上购物系统实现的现状 JSP 已经是比较流行的一种技术 尤其是电子商务类的网站 多采用 JSP 由于 PHP 本身存在 的一些缺点 使得它不适合应用于大型电子商务站点 而更适合一些小型的商业站点 ASP 和 JSP 则没有以上缺陷 ASP 可以通过 Microsoft Windowsd 的 COM DCOM 获得 ActiveX 规 模支持 通过 DCOM 和 Transcation Server 获得结构支持 JSP 可以通过 SUN Java 的 Java Class 和 EJB 获得规模支持 通过 EJB CORBA 以及众多厂商的 Application Server 获得结构支持 三者中 JSP 应该是未来发展的趋势 世界上一些大的电子商务解决方案提供商都采用 JSP Servlet 1 2 系统实现的目标 现在流行的网上购物系统不仅要有漂亮的网页 更要有严谨的规划 注重每一个细小的环节 这样才能使得在电子交易时避免不必要错误发生 我们将使用HTML CSS JSP 等技术来编辑网页 并运用 JDBC 技术把数据库和动态网页相关联 在实际应用中的解决了建立自己的数据库 使得所需 商品信息可以及时的保存 更新 可以更好的及时了解商品买卖的情况 第一章 网上书店系统概述 3 1 3 系统开发的意义 Internet的发展 为改变传统的商业运作模式提供了一种技术上的可行性的方案 利用 Internet的技术和协议 建立各种企业内部网Intranet 企业外部网Extranet 通过廉价的通讯手 段 将买家与卖家 厂商和合作伙伴紧密结合在了一起 消除时间与空间带来的障碍 从而大大的 节约了交易成本 扩大了交易范围 而在实际的生活中 这种方案已经被广泛的运用到了实际的商 业活动中了 人们将这种交易模式称为 电子商务 当今比较流行的网上购物系统国外有 卓越 国内有 当当 它们都是相当优秀的电子商务 网站 对其他的网站提供了良好的典范 设计中可以学习参考他们的思想 了解和熟悉整个网站的 开发流程及完整的电子商务网站应有的功能和注意事项 设计和完成一个电子商务网站的 将会牵涉到许多技术上的问题 如 动态网页制作技术的 后台数据库的设计和管理 通过实际的制作个网站 可以避免纸上谈兵 在实践中掌握上述技术的 使用 青岛恒星职业技术学院毕业论文 设计 4 第二章 网上购物系统分析 系统分析是平台开发的一个不可缺少的环节 为了能够使本系统更好 更完善地被设计出来 就必须先进行调查研究 在系统调查的基础上 对新系统的功能进行细致的分析 从而才能够开发 出完整的系统设计 2 1 网站的设计目标 网站整体采用 JSP MySQL CSS HTMl 技术实现 此系统分为前台管理和后台管理 前台管理是友好的操作界面 供用户浏览 查询使用 包 括 浏览商品 查询商品 订购商品 购物车 用户维护等功能 后台管理是提供给管理员的 其 中包括 商品管理 用户管理等 使管理员从繁琐的手工操作中解脱出来 并提高了办公效率 2 2 网站的可行性分析 可行性研究是为了弄清楚系统开发的项目是不是可以实现和值得进行研究的过程 实际上是 一次大大简化系统分析和系统设计的过程 所以 进行可执行性的分析是非常必要的 也是很重要 的 经过最初的设计目标和进行的市场调查得出以下四点的可行性分析 经济可行性 网上书店主要以书籍 杂志及音像制品等商品为主 网站可提供书籍音像制品的 片段共读者浏览 是消费者了解其内容后在订购 没有过多的售后服务 退货问题 与传统书店相 比 网上购书的市场规模和经营模式没有限制 突破了地理位置 经营面积 营业时间的局限 是 一直种全新的销售渠道 从营业面积地理位置方面节省大量的资金 服务器 24 小时提供网络服务 则消费者可每时都能登陆网站购物 大大增加书店的销售额度 无论从商家还是从消费者的角度看 网络书店都具有良好的发展前景 技术可行性 JSP Servlet 的技术已经较为成熟 运行可行性 该系统需要搭建 JVM 即 JAVA 虚拟机和 Tomcat 环境 在此环境下系统 并且在正 确连接数据库后可以正常运行 法律可行性 该平台是作为毕业设计与商业无关 又因为是自主开发设计 因此不会构成侵权 在法律上是可行的 通过以上的可行性分析 我将采用 JSP Servlet 相结合的技术 运用 MySQL 数据库对网站进 行建设 2 3 网站设计的特点 第二章 网上购物系统分析 5 我所设计和开发的网上书店购物平台是经过很长时间的调查和分析才开始具体实施的 它的 主要特点是改变了以往的购物只能通过现实的商场才能达到的结果 采用 Web 技术 借助于 Internet 互联网广泛应用技术 达到资源共享 提高以往购物的局限性 缩短人们的时间和提高 工作效率 具有较好的交互性 从而实现信息化 规范化 系统化 网络化的平台 使整个购物活 动过程简单 方便 易行 2 4 系统设计的总体规则 无论哪个网站都要有它自己的设计规则 该平台也一样 它的主要设计规则有 简单性 在实现平台的功能的同时 尽量让平台操作简单易懂 这对于一个网站来说是非常重 要的 针对性 该平台设计是网上购物系统及后台管理的定向开发设计 所以具有专业突出和很强的 针对性 实用性 该平台能完成电子商品展示和管理员管理的基本信息 具有良好的实用性 青岛恒星职业技术学院毕业论文 设计 6 第三章 网上书店系统的开发技术架构 系统的建设关键在于其所使用的架构 而网上购物这种基于 web 的系统 传统的 c s 架构已 经不能满足大量用户的访问和操作 b s 基于浏览器的架构则是目前网络系统应用的主流 它将大 量的数据处理工作交给服务器端来处理 客户端只用通过普通的 IE 浏览器即可访问系统 方便快 捷而且利于系统的更新和维护 java 语言在该方面更是得天独厚 在 B S 体系结构系统中 用户通过浏览器向分布在网络上的许多服务器发出请求 服务器对 浏览器的请求进行处理 将用户所需信息返回到浏览器 B S 结构简化了客户机的工作 客户机上只 需配置少量的客户端软件 服务器将担负更多的工作 对数据库的访问和应用程序的执行将在服务 器上完成 浏览器发出请求 而其余如数据请求 加工 结果返回以及动态网页生成等工作全部由 Web Server 完成 实际上B S 体系结构是把二层C S 结构的事务处理逻辑模块从客户机的任务中分 离出来 由Web 服务器单独组成一层来负担其任务 这样客户机的压力减轻了 把负荷分配给了Web 服务器 这种三层体系结构如图3 1 所示 Browse 浏览 器 Web 服务器 数据库 图 3 1 B S 三层架构示意图 第四章 系统的功能和流程分析 7 第四章 系统的功能和流程分析 4 1 网站的功能分析 根据实现功能不同将网站分为了在线购书子系统和后台管理子系统 1 在线购书子系统为消费提供了在线浏览图书 订购图书的平台 属于前台展示部分的设计 具体功能如下 用户登陆网站浏览图书 用户在主页或我的帐户中注册成为网站的会员 只有 网站的会员才能在网站购买图书 用户可以通过分类浏览 书目推荐 新书推荐 书目查询的方式 选择喜爱的图书 用户选择图书提交订单完成订购 2 后台管理子系统为书店管理员提供了管理网络书店的平台 属于后台管理部分的设计 具体功能如下 注册会员的管理 并通过会员的消费记录更改的会员的等级 不同等级的会员 享受不同的购书折扣待遇 图书类别的管理 图书的管理 通过添加 修改 删除对图书类别进行管理 在类别下添加图 书记录 对图书的名称 出版单位 媒体推荐 内容简介等详细信息进行添加 修改等管理 订单的管理 查询会员提交的订单并处理 处理已经送货的订单使之对书店的图书销售记录书 店库存信息实时修改 书店公告信息的管理 添加书店的公告信息 使消费者及时了解书店的最新动态 4 2 系统流程分析 4 2 1 前台购物流程 浏 览 商 品 选 择 商 品 订 购 商 品 去 购 物 车 去 收 银 台 提 交 订 单 未注册用户 已登录注册用户 未登录注册用户 注册 登录 图 4 1 前台购物流程图 青岛恒星职业技术学院毕业论文 设计 8 4 2 2 注册功能流程 图 4 2 注册功能流程图 注册的具体实现为 点击主页面的用户注册选项后 会弹出一个注册信息页面 用户需要如实填写用户名 密码 E mail 地址 电话 证件号码等各项信息 提交后 系统进行检测判断该用户名是否已经注册过 如果已经存在则弹出新页面 提示用户该用户名已经注册过 如果没有则进行下一步判断 用户输 入的两次密码是否一致 然后依次往后判断用户所填写的各项信息是否符合要求 直到所有信息均 正确无误 系统将该用户注册信息写入会员表即 user 并提示用户注册成功 用户登陆后 就可以 进行有效的购物了 4 2 3 用户登录流程 用户登录 首先要有一个提供用户登录的表单 用户登录的表单应该嵌入整体的结构当中 在实际的应用中 可以这样设计 如果用户没有登录 则在主页中显示用户登录的选项 用户登录 注册入口 必选项不为空 密码是否一致 用户唯一性 验证通过 提交到后台 信息入数据库 注册成功 第四章 系统的功能和流程分析 9 后 则可隐藏用户登录的选项而代之以用户的基本信息 4 3 用户登陆流程图 4 2 4 图书 类别管理流程 图 4 4 图书 类别管理流程图 在该功能里管理员可以进行不需要的商品的删除 在这里管理员当然也可以浏览到商品的详 登录入口 取得用户名和密码 将 UserID 存入 session 中 用户是否存在 密码是否正确 登录成功 类别管理 添加类别 修改删除 满意否 返回 添加图书 是 否 青岛恒星职业技术学院毕业论文 设计 10 细信息 4 2 5 购物车流程 购物车具体的实现可采用这种形式 定义一个购物车的类 Class 1 列出商品的列表 使用户能够自由选择所需要的商品 2 当用户在点击 添加到购物车 的链接时 执行如下功能 检查用户购物车类是否存在 如不存在 则建立 将购物车对象加入用户对象中 在有用户 购物车类存在的情况下 检查该类中是否有该商品 如存在 则商品数量相应加 1 如没有该商品 则将该商品添加到该类中 图 4 5 购物车流程图 购物车 查看商品 满意吗 下订单 调整商品 是 否 第五章 系统功能的具体实现 11 第五章 系统功能的具体实现 5 1 数据库的逻辑结构设计 系统各项功能的实现归根结底是通过数据库进行各项操作完成的 因此要实现系统规划的功能 提高系统的性能 要选择一个设计合理 功能完善的数据库管理软件 并且设计一个组织严禁没有 没有冗余数据 易于维护的数据库 MySQl 是一个功能强大的关系型数据库管理软件 具有安全性 灵活性 可靠性 可以有效的开发动态 web 站点 为数据处理提供服务 Table user 会员信息表结构 Id 主键会员 id 号码 会员的唯一标志 Username 会员名称 Password 会员密码 Usernumber 会员的有效身份证件号码 Phone 联系电话 Email Email 地址 Address 会员的详细地址 Rdate 会员注册时间 level 会员的等级 Recordes 会员的消费总额记录 最为评价会员等级待遇的标准 Table category 图书类别表结构 Id 主键类别的 id 号码 类别的唯一标志 Pid 上层类别的 id 号码 如果没有上层类别则为 0 Name 类别的名称 Description 类别的描述信息 Cno 类别的序列号码表示 如 0000 四位数字 前两位表示第一级类别 后两位表示第二级类别 Grade 类别的等级记录 该系统设置类别共两个等级 grade 1 grade 2 Table product 图书的基本信息表结构 Id 主键图书的 id 号码 图书的唯一标志 Name 图书的名称 Normalprice 图书的市场价格 Discount 图书的会员折扣 Store 图书的库存数量 Salescount 图书的销售数量 Photoname 图书的关联展示照片名称 该系统没有设置上传组件 为了测试系 统的页面效果 手动添加图片到系统目录 Pdate 图书上架时间 青岛恒星职业技术学院毕业论文 设计 12 Descriptionid 图书的详细信息的 id 号码 Categoryid 图书所属类别的 id 号码 Table description 图书的详细信息 Id 主键图书详细信息的 id 号码 Publisher 图书出版社 Author 图书的作者 Introduction 图书的简介 或推荐信息 Context 提供给消费者的图书内容预览 Table salesorder 订单的基本信息 Id 主键订单的 id 号码 订单的唯一标志 Userid 订单所属的会员的 id 号码 Phone 订购图书消费者的联系点换 Address 订购图书的送货地址 Odate 订购图书的日期 Status 订单的状态 该系统设置了两个状态 status 0 或 1 分别是尚未 处理 处理成功 Table salesitem 订单详细条目的信息 Id 主键订单单项条目的 id 号码 Productid 订单单项图书 id 号码 Unitprice 订单的单项图书的订购单价 分普通会员价格 白银会员价格 黄 金会员价格三种 Count 订单中单项图书记录的订购数量 Orderid 订单单项所属的订单 id 号码 5 2 功能总体说明 5 2 1 目录结构说明 1 src 用于存储系统管理员的后台操作脚本 包括图书类别管理 图书管理 订单管理 系统用 户管理等功能 2 image 用来存储商品的图片资料 网页上的图片文件 3 sql 用来存储系统的数据库结构源文件 4 admin 用于存储后台管理的 jsp 页面 5 style 用于存储页面修饰的 CSS 文件 6 根目录下存放的是前台页面的 jsp 文件 5 2 2 功能页面结构 1 前台功能页面 主页面框架 第五章 系统功能的具体实现 13 index jsp myAccount jsp 商品展示 productshow jsp search jsp prosuctAllInformation jsp cart jsp buy jsp sale jsp salecon firm jsp 登陆注册 register jsp login jsp loginerror jsp modifyUser jsp 2 后台管理页面 类别管理 addCategory jsp addChildCategory jsp categorylist jsp modifyCategory jsp deleteCategor y jsp 用户管理 user jsp 图书管理 addProduct jsp addProductDescription jsp deleteProduct jsp modifyProduct jsp modifyPro ductDescription jsp productDescritionShow jsp productlist jsp 订单管理 salesorderlist jsp searchsalesorder jsp successsale Jsp 5 2 3 主要功能流程 主页面 index jsp 类 别 修 改 用户登陆 注册 管理进入 添加到购物车 图 书 管 理 资 料 修 改 类 别 管 理 类 别 添 加 会 员 管 理 订 单 管 理 图 书 修 改 图 书 添 加 订 单 查 询 订 单 处 理 是否会员退 出 返 回 搜 索 物 品 选 购 物 品 结帐付款 填写订货单购物成功 会 员 信 息 退出 图 5 1 主要功能流程图 青岛恒星职业技术学院毕业论文 设计 14 5 3 各功能模块的实现 5 3 1 数据库连接模块 com KeHuiBookShop DB 设计数据库连接模块的思想是面向对象的封装思想 把数据库的连接操作封装到 DB 类中 使 在编写业务逻辑是不用重复的编写连接数据库的语句块 极大的减少了代码编写数量 减少了我开 发的时间 并保证了连接的正确性 似的维护数据库连接的灵活性增强 DB 类中实现了创建 Connection 连接方法 获得与数据库的有效连接 创建 SQL 语句载体 Statement 方法 创建 PreparedStatement 的方法 PreparedStatement 语句能更有效地实现对数据库记录的添 加 删除 修改操作 创建查询结果集 ResultSet 的方法 结果集中包含了查询数据库所得到的所有数据记录 创建关闭 Connection Statement ResultSet 的方法 对数据库的所有操作完成之后必须将 于数据库相连的 Connecion 对象关闭以释放系统所占的资源 5 3 2 设计模式的应用 设计完成数据库连接模块之后考虑怎样更好的设计其他业务逻辑模块 怎样更好的提高业务逻 辑模块的灵活性 可移植性 5 3 2 1 业务逻辑 DAO 封装 网站的数据库使用的 MySQL 如果随着网站的发展将会使用多种数据库测试时便要修改 MySQL 数据库的代码给维护带来的很大不便 使用 DAO 模式设计了 DAO 接口 编写 MySQL 实现的数据库操作实现了 DAO 接口 使用多数据库测 试时 只需要编写不同的 DAO 实现便可 提高了灵活性 public interface Dao public class MySqlDao implements Dao 5 3 2 2 单例模式 在 JSP 页面中处理数据时调用业务逻辑方法处理 此时构造一个该模块业务逻辑的管理类 manager 统一管理此模块中的所有业务逻辑的调用 在每次调用业务逻辑时需要构造一个管理员类 的实例 频繁的调用逻辑方法都要创建单独的管理员极大的浪费系统的资源 为了节省资源使用单 例模式 只构造一次管理对象 也便如现实中的工厂 只有一个管理员 而不是每次进出工厂都要 找一个管理员 如果管理员存在便不在聘请 第五章 系统功能的具体实现 15 public class Manager private static Manager manager null public static Manager getInstance if manager null manager new Manager return manager 5 3 2 3 模块的类设计 设计模块的具体功能时首先应先设计承载这些功能的类 各功能模块都应包含实体类 业务 逻辑类两部分 实体类依据设计的数据库的逻辑结构编写 包含了数据成员对应各自的数据库表的列 并提供 对个数据成员的 get set 方法 业务逻辑类内部主要包含实现个功能的业务逻辑方法 该系统使用三层类的结构 即管理类 Manager DAO 类 数据库实现类 5 3 3 用户模块 用户模块分为会员注册并登录网站并在我的帐户中管理自己的信息和网站管理员在后台管理会 员信息两部分 用户进入网站后可以注册为会员 会员可以订购图书并享受折扣待遇 会员登录后可以在我的 账户中管理自己的个人信息 包括修改查看个人基本信息 查看订单信息 查看消费信息 图 5 2 首页页面 青岛恒星职业技术学院毕业论文 设计 16 5 3 3 1 会员注册登录设计 图 5 3 注册页面 电子商城系统离不开用户与网站之间的交互 用户注册和登录十分重要 该系统对用户注册和 登录功能进行详细设计 会员注册时在注册页面编辑个人信息 通过信息表单提交个人信息到服务器审核 检查用户提 交的信息是否为空 用户提交的信息不能为空 会员注册用户名不能与以往已经注册的用户民重复 否则无法区分 在提交信息到数据库时对此进行了检查限制 通过调用 UserManager getInstance checkUsername 检查会员名是否已经存在 审核通过便成功注册为会员 将信息添加到数据库中保存 在业务类中提供了 addUser 方法添加数据 因为在添加想数据库添加数据方面大同小异所以 一添加用户为例详细介绍向数据可添加数据的方法 public void addUser User user Connection conn DB getConnection 使用编写好的 DB 类创建与数据库的连接 String sql insert into user values null 编写 sql 语句 该 sql 语句使用 PreparedStatement 的格式 PreparedStatement psta DB prepareStatement conn sql try conn setAutoCommit false 为了更安全的提交数据将数据库的事务提交改为手动提交 psta setString 1 user getUsername psta setString 2 user getPassword psta setString 3 user getUsernumber psta setString 4 user getPhone psta setString 5 user getEmail psta setString 6 user getAddress 第五章 系统功能的具体实现 17 psta setTimestamp 7 new Timestamp user getRdate getTime psta setDouble 8 0 0 psta setInt 9 0 psta executeUpdate 利用 PreparedStatement 对数据库修改 添加数据 mit 将所做的修改的事务提交 catch SQLException e e printStackTrace finally try conn setAutoCommit true 将自动提交值改为默认值 catch SQLException e e printStackTrace DB close psta DB close conn 关闭连接数据库的资源 会员注册后每次只需登录网站便可在网站购物 会员在首页登录表单内填写相应的信息登录网 站 服务器验证信息正确则返回首页显示用户成功登录 并把用户登录信息添加进 session 中统一 管理 如果信息错误则返回注册页面请会员重新登录 将会员的信息封装到 User 类中添加进 session 管理 session setAttribute user user 利 用 session 在服务器中统一管理会员的登录信息更能保证用户登录的安全 5 3 3 2 后台会员管理设计 该系统实现的后台会员管理主要是获取所有会员的信息 使用表格将会员信息显示在网页上 为了便也管理系统实现了会员信息类表的排序和分页 利用排序方式和页面参数获取会员列表分别使用了数据库的排序操作和分页操作技术 青岛恒星职业技术学院毕业论文 设计 18 图 5 4 用户列表页面 5 3 4 类别模块 通过设计类别模块能够更方便的管理图书目录 消费者在选购图书的时候能够更方便的按类别 寻找自己喜爱的图书 所以类别的设计很重要 能够更好的引导消费者选购也能够更好的帮助管理 者管理图书 类别管理同样使用了实体类家三层业务逻辑类的方法 系统中设计了两层类别 第一级类 别为主类别 第二层为某主类别小细分的子类别 在数据库表项中使用 grade 字段记录类别的等级 并使用 cno 字段类别的排序号码 Cno 值使用了四位数字 前两位为第一级类别使用 后两位为第 二级类别使用 即每一级都可添加一百种不同的类别 Cno 更好的辅助了类别管理是递归的实现 在展示类别列表时按照 cno 排序即可实现递归的功能 依次展示主类别和旗下子类别 5 3 4 1 cno 值计算 在添加类别是需要添加类别的 cno 值 因为 cno 值应为系统自动添加所以在业务逻辑中重点编 写了计算 cno 值的方法 首先查询同级兄弟类别中 cno 的最大值 如果同级兄弟类别中还有没记录 重头开始编写该级 别的 cno 0000 如果同级兄弟类别中已经有了其他记录 则要跟在其他记录 cno 值后面编写 public int getCno Connection conn Category c Statement sta DB createStatement conn String sql select max cno from category where pid c getPid 查询兄弟类别中的 cno 最大值使用 String getpno select cno from category where id c getPid 查询父亲类别的 cno 值使用 ResultSet rs DB getResultSet sta sql 第五章 系统功能的具体实现 19 int cno 1 try rs next int maxcno rs getInt 1 int addno int Math pow 100 2 c getGrade if maxcno 0 说明同级兄弟类别中还有没记录 所以尚且没有 cno 数据 重头开始编写该级别 的 cno 0000 if c getPid 0 说明了要添加的该类别属于第一级范围 该从百位数开始加 第一条记录 cno 值 0100 cno addno else 说明该类别不是第一级 那么应该从个位数开始加 ResultSet pnors DB getResultSet sta getpno pnors next int pno pnors getInt 1 cno pno addno DB close pnors else 说明同级兄弟类别中已经有了其他记录 则要跟在其他记录 cno 值后面编写 cno maxcno addno catch SQLException e e printStackTrace finally DB close rs DB close sta return cno 5 3 4 2 类别的增删改查 网站管理员可以对类别进行添加 修改 删除 查看操作 系统的对类别进行管理 类别的添加 修改仍旧使用了表单添加信息提交到服务器然后添加进数据库的方法 值得注意 的是不同等级的类别操作的方式不一样 二级类别只能在第一级父亲类别下面添加 所以当添加第 二类别是需要传递父亲类别的 id 号码作为参数 如果没有则显示错误信息要求指定父亲类别 类别列表查看时在类表中应该有维护类表方法的连接 比如添加子类别 修改类别 添加商品 删除类别等 同样使用用户模块中的列表技术 类别的删除使用删除数据库表记录的操作 在商品管理中同样有删除的功能 大同小异 所以 青岛恒星职业技术学院毕业论文 设计 20 在这里详细介绍类别的删除 public void deleteCategory int id Connection conn DB getConnection String sql delete from category where id 通过 id 号码的条件删除相应的记录 PreparedStatement psta DB prepareStatement conn sql try conn setAutoCommit false psta setInt 1 id psta executeUpdate mit catch SQLException e e printStackTrace finally try conn setAutoCommit true catch SQLException e e printStackTrace DB close psta DB close conn 值得注意的是 要删除第一级类别是 如果第一级类别下有第二级类别存在则不允许删除 通 过编写 testDelete 方法测试是否允许删除 在 JSP 页面中调用 如果不允许那么在类别类表页 面中则不能显示删除选项 public boolean testDelete int id Connection conn DB getConnection Statement sta DB createStatement conn String sql1 select from category where id id 查询类别 String sql2 select from category where pid id 查询 id 号码下面的所有的子类别 ResultSet rs1 DB getResultSet sta sql1 boolean delete true try rs1 next if rs1 getInt grade 1 如果该类别为第一级类别那么则要测试其下有没有子类别 ResultSet rs2 DB getResultSet sta sql2 if rs2 next delete false 一级类别下面有子类别所以设置 delete 值为 false 并返回告知不能删除 第五章 系统功能的具体实现 21 DB close rs2 catch SQLException e e printStackTrace finally DB close rs1 DB close sta DB close conn return delete 图 5 5 图书类别页面 图 5 6 添加类别页面 青岛恒星职业技术学院毕业论文 设计 22 5 3 4 3 类别的前台展示 后台管理员将类别展示之后需要在前台页面展示出来以供用户浏览使用同样使用向业务逻辑传 递集合参数的方法 从数据库中取出数据放入集合 categorylist 中然后返回 在前台页面图书列 表的区块中使用集合 Iterator 循环的技术从图书表中获取图书列表放在中展 示 注意的是当通过 ul 列表将类别依次显示出来 并设置主类别和子类别的不同的从 class 值 并 在 css 设置是显示效果不同 增强用户的浏览效果性 提高网站的美观性 5 3 5 图书模块 5 3 5 15 3 5 1 后台图书管理的基本操作后台图书管理的基本操作 后台图书管理可以添加图书 修改图书信息 删除图书记录 在添加图书是需要传递一个类别的 id 参数 在某类别下添加图书 如果没有参数则显示错误 信息必须要在某类下添加图书 图书的信息包含了基本信息和详细信息 方便管理员有选择的添加图书的相关信息 对于没有 必要添加图书详细信息的记录则不添加 图 5 7 图书列表页面 第五章 系统功能的具体实现 23 5 3 5 2 前台图书的展示 首页中设计了热卖图书的展示区块 最新图书的展示区块 促销最快的展示区块 使用按销售 额 上架时间 折扣排序从数据库中获取数据存放在传递的集合参数中 然后从集合中取出数据展 示出来 三个区块的设计大致相同 用户可以从类别表中选择类表点击进入该类别下的图书展示网页 productshow jsp 进行浏览 在该 JSP 网页中获得用户点击的 categoryid 号码 作为参数传递给业务逻辑类处理通过 categoryid 号码查询属于该类别的所有图书展示 图书记录取出同过 HTML 中 UL 列表技术依次展 示 在网页中同样实现了分页 和 排序的技术 图 5 8 图书展示页面 5 3 6 购物车模块 购物车临时存储用户的购物信息 用户可以随时增加商品 修改数量和删除商品 购物车的与 数据存储主要依赖 sessiion 来实现 5 3 6 1 购物车的创建 本系统创建了购物车的实体类 Cart 和购物车内物品的实体类 CartItem 来模拟购物车 在购物 车实体类中设置了数据成员 CartItem 的集合及对该集合的 get set 方法 在 CartItem 中编写了 青岛恒星职业技术学院毕业论文 设计 24 Cart 实体的引用作为数据成员 将整个图书的信息封装到了购物车中 在用户的实体类编写了 Cart 的引用将购物车的所有信息封装到了所属的用户之中 用户在网页中点击图书时将图书的 id 号码传递到 buy jsp 中并在网页中过去该 id 号码的图书 信息封装到图书对象中 然后将图书对象添加进 CartItem 网页中实现将图书记录添加进购物车 如果用户没有选购图书则session中用户对象中cart对象为空 如果用户选购了图书当再次选购 图书时不能重新构建购物车而是使用原有的购物车继续添加 5 3 6 2 购物车的管理 用户点击购买图书之后 图书记录存放在购物车之中 用户可以随时修改购物车中的信息 包 括删除图书 增加图书的记录 在系统中编写 add 方法 和 delete 方法 分别实现对购物的管理 重点设计 add 方法 和 delete

温馨提示

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

评论

0/150

提交评论