已阅读5页,还剩39页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
购便宜购物商城毕业论文购便宜购物商城毕业论文 目录 ABSTRACTABSTRACT III 第一章第一章 引言引言 1 1 1 1 选题意义 1 1 2 1 选择网上商城的原因 1 1 2 2 国内网上商城的现状 1 1 2 3 现今网上交易存在的一些的问题 1 第二章第二章 项目构架分析与设计项目构架分析与设计 2 2 2 1 物理构架 2 2 2 逻辑构架 2 2 2 1 JSP JavaBean Servlet 框架介绍 2 2 2 2 JSP 简介 2 2 2 3 JavaBean 简介 3 2 3 开发工具 3 2 3 1 Myeclipse 简介 3 2 3 2 TOMCAT6 0 简介 3 2 3 3 mysql 简介 3 2 3 4 AJAX 技术简介 3 第三章第三章 需求分析需求分析 5 5 3 1 网站功能需求分析 5 3 1 1 用户需求确定 5 3 2 数据需求分析 6 3 2 1 数据库需求分析 6 3 3 技术解决方案需求分析 6 第四章第四章 总体设计总体设计 7 7 4 1 数据库MYSHOPPING设计 7 4 1 1 商品种类信息表 category 的设计 7 4 1 2 管理员信息表 adminer 的设计 7 4 1 3 订单明细表 salesitem 的设计 7 4 1 4 订单信息主表 salesorder 的设计 8 4 1 5 会员信息表 user 的设计 8 4 1 6 商品信息表 product 的设计 8 4 2 前台设计 9 4 2 1 前台功能介绍 9 4 2 2 前台购物的流程图 9 4 3 后台设计 9 4 3 1 购便宜网上购物商城后台功能介绍 9 4 3 2 购便宜商城后台的操作流程图 10 第五章第五章 界面设计界面设计 1010 5 1 用户注册 10 5 1 1 界面 10 5 1 2 流程图 11 5 2 用户登录 11 5 2 1 界面 11 5 2 2 流程图 12 5 3 用户登录 12 5 3 1 界面 12 5 3 2 流程图 15 5 4 查看商品信息 15 5 4 1 界面 15 5 4 2 流程图 16 5 5 商品搜索 16 5 5 1 界面 16 5 5 2 流程图 17 5 6 购物车 17 5 6 1 界面 17 5 6 2 流程图 18 5 7 生成订单 18 5 7 1 界面 18 5 7 2 流程图 18 5 8 后台管理 19 5 8 1 界面 19 5 8 2 流程图 25 第六章第六章 开发环境配置说明开发环境配置说明 2626 6 1 开发环境配置 26 第七章第七章 开发与测试开发与测试 2828 7 1 开发流程 28 7 2 测试 29 第八章第八章 所用技巧及难点分析所用技巧及难点分析 2929 8 1 所用技巧 29 8 2 难点分析 30 8 2 1 分页 30 9 1 总结 36 9 2 展望 37 致 谢 37 参考文献参考文献 3838 第一章 引言 随着全球信息网络的发展 Internet 在世界上已不仅仅是一种技术 更重要的是它已 成为一种新的经营模式 彻底改变了人类工作 学习 生活 娱乐的方式 已成为国家经 济和区域经济增长的主要动力 Internet 正成为世界最大的公共资料信息库 它包含无数 的信息资源 所有最新的信息都可以通过网络搜索获得 更重要的是 大部分信息都是免 费的 应用电子商务可使企业获得在传统模式下所无法获得的巨量商业信息 在激烈的市 场竞争中领先对手 因此 本设计是通过 JSP 语言来实现 一个基于 B S 模式三层结构的 JSP 网上购物网站网站 1 1 选题意义 网上商城的出现和发展给人们的购物带来了全新的改变 它不但使整个购物的性质 和方式发生了翻天覆地的变化 而且也使人们整个购物流程变得高效而便捷 网上商城 交易的个性化 自由化可为企业创造无限商机 降低成本 同时可以更好地建立同客户 经销商及合作伙伴的关系 为此 许多公司积极拓展电子商务 为客户服务 进行价值 链集成 1 2 当今网上购物的发展现状 1 2 1 选择网上商城的原因 网上商城也是电子商务的一种典型应用 JSP 是构建电子商务系统的新兴技术 采用 JSP 技术 可 以方便地将系统分离为三层 表示层 业务层及数据库层 表示层向客户的浏览器提供基于 Web 的显示 页面 业务层处理客户购物过程 数据层则提供数据存储 采用这种层次结构可以提高系统的扩展性和 服务器的效率 方便开发 本设计只在满足网上购物的基本功能 主要采用 JSP 技术 设计和开发开发了一个网上购物系统 具有可靠性好 可扩展性和可重用性的特点 系统中采用多种设计模式来提高系统性能 采用前台控制 器来方便地实现导航 采用复合视图来向用户提供 Web 显示 减少了视图中代码的重复 采用业务代表 降低各层之间的耦合 并在业务层中采用值对象来向表示层提供数据 系统以 mysql 数据库管理系统作 为后台数据库 应用于基于 B S 模式的网上商城系统的设计与实现 1 2 2 国内网上商城的现状 在国内的网上商城 1 起步晚 数量却非常多 虽然我国的网上商城起步的很晚 但是发展却很迅速 根据某调查网 站上的数据可知 到目前具有网上商城的性质的网站达上万之多 但是能够真正满足消费者购物要求的 却不多 2 支付和安全认证上的客观技术原因 导致用户完成电子商务交易变得相当复杂 使大部分用户 还没等交易完成就已经退避三舍了 所以开发一个安全又操作简单的网上商城难度很大 3 由于很多网上商城商家一开始都想把自己的网站做到成亚马逊那种境界 这导致很多网站只对 商城货物的品种和数量上加以扩张 却不对数据查询技术加以改进 这使很多网站在用户浏览的时候速 度很慢或者交易的过程中时间太长 4 很多网上商城跟用户的交流很少 开发出来的网站 却不适合大部分用户的要求 1 2 3 现今网上交易存在的一些的问题 根据 CNNIC 最新公布的第十二次互联网调查结果显示 用户认为目前网上交易存在的 最大问题是商品质量 售后服务及厂商信用得不到保障和安全性得不到保障 分别达到 40 和 25 两者之和达到 65 据中国消费者协会投诉部有关人士介绍 近年来 网上购物过程中出现的各种 陷阱 也已成为投诉的热点 主要表现在三个方面 一是夸大其辞 虚假宣传 二是违法提供有 奖销售服务 利用巨额奖金或奖品诱惑消费者浏览其网站 三是不履行售后服务约定 对 网上售出的商品不承担 三包 责任 诚信是网上购物最值得关注的问题 营造宽松繁荣 的电子商务环境 必须通过立法解决诸如交易手段和诚信等问题 要建立网上交易诚信机 制 不是单靠评个诚信网站就能解决的 而是要在开展电子商务的机制上和社会配套上给 予解决 第二章 项目构架分析与设计 2 1 物理构架 1 网络服务器操作系统 Windows 7 2 Web 服务器 Tomcat 6 0 3 后台数据库系统 MySQL 4 JSP 运行环境 J2SDK 1 6 2 2 逻辑构架 2 2 1 JSP JavaBean Servlet 框架介绍 Servlet JSP JavaBean MVC 模式适合开发复杂的 web 应用 在这种模式下 servlet 负责处理用户请求 jsp 负责数据显示 javabean 负责封装数据 Servlet JSP JavaBean 模式程序各个模块之间层次清晰 web 开发推荐采用此种模式 JSP JavaBean Servlet 三层结构的实质是比 jsp javaBean 两层结构多了一个 Controller Servlet 来分发客户端浏览器的请求 如果把起控制器作用的 Servlet 的作 用理解为对客户端的请求进行预处理对理解 Servlet 将有很大的帮助 通过 web xml 配 置文件可以找到用户请求和特定的 Servlet 的对应关系 每个 Servlet 都有一个特定的 Servlet 对象与之对应 所以说处理用户请求的就是一个继承自 HttpServlet 的 Servlet 对象 当然也可以把这些处理操作完全写在 jsp 程序中 不过这样的 jsp 页面可能就有成 百上千行 光看代码就是一个头疼的事情 更不用说修改了 这对以后的代码维护增加 很大的难度 而且可能同样的代码会在一个页面当中出现多次 这不但降低了代码的可 读性也降低了代码的重用性 由此可见 通过 JavaBean 可以很好地实现逻辑的封装 程 序的易于维护等等 如果使用 Jsp 开发程序 一个很好的习惯就是多使用 JavaBean 其工作原理如图 2 1 所示 JDBC http 请求 forward 设置 Control 读取 图 2 1 三层架构的工作原理 客户 ServletView jsp 数据库 javaBean 值 2 2 2 JSP 简介 JSP Java Server Pages 技术使用 Java 编程语言编写类 XML 的 tags 和 scriptlets 来封装产生动态网页的处理逻辑 网页还能通过 tags 和 scriptlets 访问存在于服务端的 资源的应用逻辑 JSP 将网页逻辑与网页设计和显示分离 支持可重用的基于组件的设计 使基于 Web 的应用程序的开发变得迅速和容易 Web 服务器在遇到访问 JSP 网页的请求时 首先执行其中的程序段 然后将执行结果连同 JSP 文件中的 HTML 代码一起返回给客户 插 入的 Java 程序段可以操作数据库 重新定向网页等 以实现建立动态网页所需要的功能 JSP 技术还有如下几个优点 1 一次编写 到处运行 2 系统的多平台支持 3 强大的可伸缩性 4 多样化和功能强大的开发工具支持 2 2 3 JavaBean 简介 JavaBean 是 sun 微系统的一个面向对象的编程接口 它可以让开发展建可重用应用 程序或能在网络中任何主流操作系统平台上配置的程序块 称作组件 用户可以使用 JavaBean 将功能 处理 值 数据库访问和其他任何可以用 java 代码创造的对象进行打 包 并且其他的开发者可以通过内部的 jsp 页面 servlet 其他 JavaBean applet 程 序或者应用来使用这些对象 用户可以认为 JavaBean 提供了一种随时随地的复制和粘贴 的功能 而不用关心任何改变 2 3 开发工具 2 3 1 Myeclipse 简介 MyEclipse 企业级工作平台 MyEclipse Enterprise Workbench 简称 MyEclipse 是对 Eclipse IDE 的扩展 利用它可以在数据库和 J2EE 的开发 发布 以及应用程序服务 器的整合方面极大地提高工作效率 它是功能丰富的 J2EE 集成开发环境 包括了完备的编 码 调试 测试和发布功能 完整支持 HTML Struts JSF CSS Javascript SQL Hibernate 简单而言 MyEclipse 是 Eclipse 的插件 也是一款功能强大的 J2EE 集成开发环境 支持代码编写 配置 测试以及除错 2 3 2 TOMCAT6 0 简介 Tomcat 6 0 服务器是 Apache 组织开发的一种 JSP 引擎 本身具有 WEB 服务器的功能 可以作为独立的 WEB 服务器来使用 Tomcat 很受广大程序员的喜欢 因为它运行时占用的 系统资源小 扩展性好 支持负载平衡与邮件服务等开发应用系统常用的功能 而且它还 是一个免费开源的系统 任何一个感兴趣的程序员都可以更改它或在其中加入新的功能 在中小型系统和并发访问用户不是很多的场合下被普遍使用 是开发和调试 JSP 程序的首 选 但是 在作为 WEB 服务器方面 Tomcat 出来静态 HTML 页面时不如 Apache 迅速 也没 有 Apache 健壮 所以一般将 Tomcat 与 Apache 配合使用 让 Apache 对网站的静态页面请 求提供服务 而 Tomcat 作为专用的 JSP 引擎 提供 JSP 解析 以得到更好的性能 Tomcat 是 Java 程序 所以只要有 JDK 就可以使用 不需要考虑具体的操作系统平台 2 3 3 mysql 简介 MySQL 是一个开放源码的小型关联式数据库管理系统 开发者为瑞典 MySQL AB 公司 目前 MySQL 被广泛地应用在 Internet 上的中小型网站中 由于其体积小 速度快 总体 拥有成本低 尤其是开放源码这一特点 许多中小型网站为了降低网站总体拥有成本而 选择了 MySQL 作为网站数据库 与其他的大型数据库例如 Oracle DB2 SQL Server 等相比 MySQL 自有它的不足之 处 如规模小 功能有限 MySQLCluster 的功能和效率都相对比较差 等 但是这丝毫 也没有减少它受欢迎的程度 对于一般的个人使用者和中小型企业来说 MySQL 提供的功 能已经绰绰有余 而且由于 MySQL 是开放源码软件 因此可以大大降低总体拥有成本 目前 Internet 上流行的网站构架方式是 LAMP Linux Apache MySQL PHP Perl Python 和 LNMP Linux Nginx MySQL php perl Python 即使用 Linux 作为操作系统 Apache 和 Nginx 作为 Web 服务器 MySQL 作为数据库 PHP Perl Python 作为服务器端脚本解释器 由于这四个软件都是免费或开放源码软件 FLOSS 因此使用这种方式不用花一分钱 除开人工成本 就可以建立起一个稳定 免费的网站系统 2 3 4 AJAX 技术简介 Ajax 的全称是 AsynchronousJavaScriptXML 运用异步 JavaScript XML 浏览器就 不必等用户请求操作 也不必更新整个窗口就可以显示新获取的数据 只要来回传送采用 XML 格式的数据 在浏览器里面运行的 JavaScript 代码就可以与服务器进行联系 JavaScript 代码还可以把样式表加到检索到的数据上 然后在现有网页的某个部分加以显 示 Ajax 是使用客户端脚本与 Web 服务器交换数据的 Web 应用开发技术 这样 Web 页面 不用打断交互流程进行重新加裁 就可以动态地更新 使用 Ajax 用户可以创建接近本地 桌面应用的直接 高可用 更丰富 更动态的 Web 用户界面 第三章 需求分析 3 1 网站功能需求分析 3 1 1 用户需求确定 1 普通用可以通过系统浏览商品 按类别 2 普通用户可以通过系统搜索商品 按大类别 商品名称 3 普通用户可以通过注册成为系统的会员 免费注册 4 会员可以通过系统浏览和搜索商品 5 会员可以通过系统下订单 6 会员可以浏览自己以前的订单 7 会员可以通过系统管理自己的信息 重设密码 8 管理员可以通过后台进行会员管理 会员浏览 会员历史订单浏览 9 管理员通过后台进行商品分类的管理 浏览 添加 删除 修改商品种类 12 管理员通过后台进行商品管理 新增商品 商品删除 商品信息修改 商品检索 13 管理员通过后台进行订单的管理 订单查询 修改订单状态 3 1 2 系统业务逻辑需求分析 1 会员类 包装会员信息 与订单类是一对多的关系 2 管理员类 封装系统管理员 3 商品类 包装商品的信息 与订单类是多对多的关系 4 商品类别类 包装商品的类别 与商品是一对多的关系 5 订单类 与商品是多对多的关系 与会员是多对一的关系 6 订单明细类 包装订单中商品的信息 与订单是多对一的关系 3 2 数据需求分析 3 2 1 数据库需求分析 数据库的设计通常是以一个已经存在的数据库管理系统为基础的 常用的数据库管理 系统有 Access SQL Server Oracle 等 根据用户的需求和系统分析 本系统采用 mysql 数据库管理系统 在 mysql 数据库管理系统中建立名称为 myshopping 的数据库 这个数据 库需要提供各种信息的保存 更新和查询 这就要求数据库结构充分满足各种信息的输出 和输入 搜集基本数据 数据结构和数据处理的流程 组成一个详尽的数据字典 为后面 的具体设计打下基础 在 myshopping 的数据库中 根据项目的需求建立相应的数据表 如下 1 user 会员信息表 包括数据项 用户 ID 邮箱 密码 联系方式等 2 product 商品信息表 包括数据项 商品编号 商品名称 商品描述 商品价 格 商品上架日期 商品所属种类 商品数量 商品图片所在地址等 3 category 商品类别类 包括数据项 类别 ID 自动编号 类别名称 类别等级 上级种类 ID 4 adminer 管理员类 类别 ID 用户名 密码 5 salesitem 订单信息明细表 包括数据项 编号 商品编号 单价 数量 订单 编号等 6 salesorder 订单信息主表 包括数据项 订单编号 用户编号 订单标识符 是否已发货 商品总价等 3 3 技术解决方案需求分析 1 WebServer Tomcat 6 0 2 DataBase mysql 3 开发环境 MyEclipse 8 5 第四章 总体设计 4 1 数据库 myshopping 设计 本设计的数据库名字为 myshopping 此数据库中总共有六张表分别为 category 商 品种类信息表 adminer 管理员信息表 salesitem 订单明细表 salesorder 订单信 息主表 user 会员信息表 product 商品信息表 4 1 1 商品种类信息表 category 的设计 表 4 1 category 表 列名数据类型长度是否空描述 IDint11 否类别 ID 自动编号 主键 namevarchar255 否种类名 gradeint11 否 种类级别 descrvarchar255 是 种类描述 pidint11 否 上一级种类 id 4 1 2 管理员信息表 adminer 的设计 表 4 2 adminer 表 列名数据类型长度是否空描述 IDint11 否类别 ID 自动编号 主键 usernamevarchart40 否用户名 passwordvarchar32 否 密码 4 1 3 订单明细表 salesitem 的设计 表 4 3 salesitem 表 列名数据类型长度是否空描述 IDint11 否ID 号 主键 orderIDint11 否与 salesorder 表的 orderID 字段关联 productidint11 否商品 ID priceint11 否价格 pcountfloat0 否数量 4 1 4 订单信息主表 salesorder 的设计 表 4 4 salesorder 用户表 列名数据类型长度是否空描述 orderIDint11 否订单编号 主键 useridint11 否用户 id totalpricefloat0 否商品总价 odatedatetime0 否订单添加时间 finishedint11 否 订单发货标识符 4 1 5 会员信息表 user 的设计 表 4 5 user 表 列名数据类型长度是否空描述 IDint11 否会员 ID 号 主键 usernamevarchar40 否用户名 passwordvarchar32 否密码 cityvarchar32 否所在城市 streetvarchar64 否所住地街道 phonevarchar40 否手机电话 emailvarchar20 否E mail 地址 homephonevarchar20 否家庭电话 provincevarchar32 否所在省 4 1 6 商品信息表 product 的设计 表 4 6 product 表 列名数据类型长度是否空描述 IDint11 否商品 ID 主键 categoryidint11 否类别 ID namevarchar255 否商品名称 descrvarchar255 否商品简介 normalpriceint11 否原价 memberpriceint11 否会员价 photoVarchar255 否图片文件 pdatedatetime0 否录入时间 numint11 否数量 4 2 前台设计 4 2 1 前台功能介绍 当用户进入到本系统的主页后 用户可以自由的浏览商品信息和搜索商品 当用户需 要购买商品时 用户需要先进行注册 注册后再登录 然后再把选中的商品添加到购物车 当中 最后交易生成订单 当用户进入首页时 需登录才能查看购物车以及订单详情 否则 将进入登陆界面 4 2 2 前台购物的流程图 用户在网上商城购物的整个购物流程如下图 4 1 所示 没注册 没登陆 图 4 1 网站购物与交易处理流程 4 3 后台设计 用户注册 用户登录 进入网站首页 查看购物车成功添加 订单查看 结算 继续购买 生成订单 浏览商品 添加到购物车 商品搜索 继续购买 修改数量 删除所选商品 4 3 1 购便宜网上购物商城后台功能介绍 在后台 管理员通过用户名和口令进行登录 在后台管理员可以对商品的类别加以 管理 浏览类别 添加类别 删除类别以及修改类别信息 可以对商品的管理 浏览商 品 添加商品及修改商品信息 对用户的管理 查看注册的用户 对订单的管理 查看 订单 以及对订单处理等功能 4 3 2 购便宜商城后台的操作流程图 管理员在后台进行管理的整个操作流程如下图 4 2 所示 图 4 2 网站购物与交易处理流程 第五章 界面设计 5 1 用户注册 5 1 1 界面 管理员登录 进入后台管理的界面 那 用户管理 商品类别 管理 商品管理订单管理 用户浏览 类别浏览 类别删除 类别修改 类别增加 商品修改 商品删除 商品增加 商品浏览 订单详情浏览 订单浏览 订单发货 当进入注册界面 需填写注册所需的用户名 密码 确认密码 联系电话 送货地 址等信息 如果邮箱已被注册 提示该邮箱已被注册 如果点击注册时 有空的地方没 有填写 将弹出相应的提示信息 都输入完成之后可以单击 提交 按钮进行注册 具 体效果如图 5 1 1 所示 注册成功后页面如下 如果点击登录链接将跳入到登陆界面 如果不点击 3 秒钟后将自 动跳入到登陆界面 图 5 1 1 5 1 2 流程图 主页点击注册按钮填写注册信息返回登录注册 图 5 1 2 5 2 用户登录 5 2 1 界面 1 首先可以在主页的左上方进行登录 需填入会员名和密码点击登录按钮进行登录 登录成功自动跳入首页 具体效果如图 5 2 1 所示 如果填写错误 将跳入到错误页面 如下图 点击返回跳入到登陆界面 图 5 2 1 5 2 2 流程图 注册成功返回主页登陆登录成功自由购物 图 5 2 2 5 3 用户登录 5 3 1 界面 1 当用户在专门的登录页面登录成功之后页面自动跳转到前台首页 登陆后 由于注册时 密码采用 md5 技术对密码进行加密 所以用户不能修改密码 用户只可以重设自己的密码 如下图所示 图 5 3 1 2 登陆成功后 用户也可以通过点击最上面的我的订单 查看以前的够买订单 可以点 击详细信息按钮查看该订单中所有的商品信息 具体效果如图 5 3 2 所示 图 5 3 2 5 登陆成功后 用户也可以通过点击最上面的购物车 查看登录成功后选中的物品 点击删除按钮可以对购物车中商品进行删除 点击继续购买返回首页 点击下订单 页 面跳转到下订单页面 具体效果如图 5 3 3 所示 商品数量可以进行修改 如果数量修改后超过商品总量将弹出提示信息 修改完数量后 点击更新购物车 可以对购物车进行更新 如果数量为空 将弹出提示 信息 如下图 图 5 3 3 5 3 2 流程图 注册成功返回主页登陆登录成功自由购物 图 5 3 6 5 4 查看商品信息 5 4 1 界面 进入首页后 用户可以根据菜单栏选择自己想要选择的商品 首页中间为商品所有 种类 再下面是最新上架的商品 可以选择它进行够买 首页具体效果如图 5 4 1 所示 图 5 4 1 5 4 2 流程图 商品浏览登录成功查看商品详情 图 5 4 2 5 5 商品搜索 5 5 1 界面 当主页的商品不能满足用户的要求时 用户可以在主页进行商品搜索 关键字搜索 搜索结果如图 5 5 1 所示 图 5 5 1 5 5 2 流程图 商品搜索登录成功查看商品详情 图 5 5 2 5 6 购物车 5 6 1 界面 当在主页浏览货物过程中看中了自己喜欢的商品 可以单击图片或者单击图片下 详 情 查看该件商品的详细信息 商品名称 图片 描述 价格 具体效果如图 5 6 1 所示 图 5 6 1 了解了商品详情之后 如果确定要买此商品可以单击 添加到购物车 把商品添加到 自己的购物车 在购物车页面用户也可以修改您要购买物品的数量 具体效果如图 5 6 2 所示 图 5 6 2 5 6 2 流程图 图 5 6 查看商品详情添加购物车修改购买数量确认订单 3 5 7 生成订单 5 7 1 界面 1 当完成所有的货物选择之后 就可以在购物车页面单击 确认订单 按钮进入订单 信息确认界面以及对所买商品进行结算 具体效果如图 5 7 1 所示 图 5 7 1 5 7 2 流程图 图 5 7 3 确认订单结算商品总价格确认送货信息确认支付 5 8 后台管理 5 8 1 界面 1 首先进入后台管理的登录页面 填写管理员的用户名和密码单击 登录 按钮可进 入后台进行管理 具体效果如图 5 8 1 所示 图 5 8 1 2 当用户名和密码登录无误 管理员可成功将纳入后台的主界面 在主界面可 以别对用户 商品类别 商品信息 订单以及报表的管理 具体效果如图 5 8 2 所示 图 5 8 2 3 首先是用户管理模块 在用户管理中可以对所有注册的用户用户进行浏览 具 体效果如图 5 8 3 所示 图 5 8 3 4 在类别管理模块中 管理员可以对商品的类别进行浏览 分别可以表格展示和 树状形式的展示 添加类别 删除删除类别 修改类别信息 具体效果如下图所示 浏览产品种类页面 通过点击一级菜单和二级菜单按钮 可分别查看商品种类内容 点击新增按钮可以添加商品种类 点击确定按钮将直接保存 如果填写的内容中有空的 将弹出相应的提示信息 如果填 写内容都不为空 将直接保存 点击编辑按钮可以对商品种类进行修改 点击确定按钮将直接修改 如果填写的内容中有 空的 将弹出相应的提示信息 如果填写内容都不为空 将直接修改 点击删除按钮可以对该种类下商品种类及商品全部删除 如果点击一级菜单后删除 如 果该一级菜单下面还有二级菜单及商品 删除将提醒是否删除 如下图 如果点击确认按钮 将把该种类及下面的二级种类及下面的所有商品删除 商品也将从 服务器上直接删除 5 在商品管理模块中 管理员可以对商品信息进行浏览 修改信息 删除商品 具体效果如下图所示 点击左侧产品管理可以查看所有产品信息 也可以通过点击查询按钮 对产品进行级联 查询 根据产品名称和种类一起查询 名称查询为模糊查询 点击新增按钮可以对商品进行增加 其中可以对产品的图片进行上传 产品图片将直接 上传到服务器上 如下图 另外 需要注意的是 商品新增时 价格及商品数量只能输入数字 中文及拼音将被 屏蔽 商品图片也只能上传相应的图片格式 内容都填写完整后 如果有空的地方没填 写 点击确定时将弹出相应的提示信息 点击确定按钮将保存成功 弹出保存成功 并 刷新当前页面 点击取消 弹出框将关闭 如下图 点击编辑按钮可以对商品进行修改 修改时 上级菜单我设置为不能修改 另外 需要 注意的是 商品修改时 价格及商品数量只能输入数字 中文及拼音将被屏蔽 商品图 片也只能上传相应的图片格式 内容都填写完整后 如果有空的地方没填写 点击确定 时将弹出相应的提示信息 点击确定按钮将修改成功 弹出修改成功 并刷新当前页面 点击取消 弹出框将关闭 可以对商品的图片也进行修改 修改之后原来的图片将在服 务器上被删除 被新的替换掉 点击删除按钮可以对商品进行删除 可以选择删除 也可以全选删除 删除商品是如果 商品已经在订单中使用过 将提醒你该商品不能删除 6 管理员也可以进入订单管理的模块 在订单管理中 管理员可查看所有的订单 以 及订单的明细 再根据现在目前的库存情况对订单进行处理 订单管理中有未发货和已 发货两种查看方式 在未发货中选择相应的行 如果不选择 将弹出提示信息 然后点 击发货 将弹出发货成功 该订单将可以在已发货订单信息中查看 点击订单中的详细 将可以对订单中的订单详情进行查看 具体效果如图 5 8 7 所示 图 5 8 7 5 8 2 流程图 后台管理的整个流程图如下图 5 8 10 所示 图 5 8 10 第六章 开发环境配置说明 6 1 开发环境配置 本人在设计的过程中 需要搭建一个普通 WEB 开发环境 具体的环境配置如下 第一步 到官方网站下载 JDK1 6 Tomcat6 0 mysql 软件 以及 Navicat Premium 管 理组件等软件 第二步 安装 jdk 和配置环境变量和 Tomcat6 0 1 安装 J2SE 的 JDK1 6 以后 需要配置一下环境变量 在我的电脑 属性 高级 环 境变量 系统变量中添加以下环境变量 JAVA HOME D Java jdk1 6 0 30 classpath JAVA HOME lib JAVA HOME lib tools jar 一定不能少 因为 它表示当前路径 path JAVA HOME bin 如图 6 1 所示 管 理 员 登 录 用户管理 商品类别管理 商品管理 订单管理 浏览 浏览 添加 删除 修改 添加商品种类 浏览 添加 删除 修改商品 浏览 订单处理 图 6 1 接着可以写一个简单的启动 MS DOS 窗口来测试 J2SDK 是否已安装成功 点击 开始 运行 输入 cmd 点击确定 在 DOS 窗口中输入 javac 按键 系统会输出 javac 命 令的使用帮助信息 如下图 6 2 所示 这说明 JDK 配置成功 否则需要检查上面各步骤的 配置是否正确 图 6 2 接着可以启动 tomcat 在 IE 中访问 http localhost 8080 如果看到 tomcat 的欢 迎页面的话说明安装成功了 第三步 安装 mysql 在安装 mysql 的过程后 要安装 Navicat Premium 这个软件 它相当于数据库的一个 图形界面工具 可以查看数据库中的所有数据库及表的信息 第三步 安装 MyEclips8 5 双击 MyEclips8 5 可以进行安装 选择适当路径进行安装 等待安装完成之后 启动 MyEclipse 之后必须设置的两项是设置 Java 的 JDK 路径和服务器 Tomcat6 0 路径 当 启动完成之后 新建一个 Web 项目 命名为 myshopping 第七章 开发与测试 7 1 开发流程 本人在设计的过程中 采用循序渐进的方式进行开发 为使开发的过程是一个循序渐 进的过程 为此本人按如下步骤进行开发 完成数据库 myshopping 的设计 完成用户注册模块 完成用户登录模块以及自服务功能 用户信息修改 从而验证用户注册模块 转入后台设计 首先完成对用户管理模块 增删改查等功能 再完成对类别的管理 模块 完成对商品信息的管理模块 可以对上一步骤的验证 再转入前台设计 在前台主页展现后台所添加的类别和商品 以供用户浏览 完成商品购物模块 包括购物车 订单产生等模块 查看用下过的订单模块 再转入后台设计 完成后台管理的对订单管理的模块 完成后台对商品销售情况的分析模块 整个系统在功能模块基本完成了之后 最后的任务就是给系统界面的美化 使所有 的页面变的美观 以及对代码的完善和最后综合测试 7 2 测试 由于开发的方式是采用的螺旋递增的方式进行开发的 所以在测试的过程也同样采用 螺旋递增的方式进行测试即 开发 测试 开发 测试 也就是在开发的过程之中伴随 着测试 测试的同时也是为下一个模块的开发做铺垫 这样不但可以提高开发的效率 同 时也可以在开发的过程中及时发现错误 避免了那种瀑布型开发模式的不足 在整个系统 开发完毕再去测试 给最后的测试带来了很大的困难 在整个设计的过程中 本人感触最深的就是测试的重要性还有前期准备工作的重要性 不重视测试 若是老想着把所有工作做完后再去测试 结果总是很不理想 因为如果不 及时进行测试 当把所有的代码都写完的时候才去测试 结果发现很多错误出现的具体 位置在哪 这增加了测试的难度 第八章 所用技巧及难点分析 8 1 所用技巧 1 弹出框弹出框 lhgdialog 本项目很多地方都用到了弹出框 如前台首页的重设密码 后台的新增 修改商品种类 新增 修改商品时使用到了弹出框 Ihgdialog 介绍 介绍 lhgDialog 是一个功能强大且兼容面广的对话框组件 它拥有精致的界面与友好的接 口 基于网络访问并且兼容 IE 6 0 Firefox 3 0 Opera 9 6 Chrome 1 0 Safari 3 22 相对于网上其它弹出窗口插件主要功能是提示信息来说 本插件主要是用来制作 窗口中内容较多 页面比较复杂的窗口 本插件的窗口内容面主要是以嵌入 iframe 框架 为主 内容页为一个单独的页面 这样就可以更方便的管理内容页 页面的样式也不受 其它页面的影响 而且内容页可以是静态或动态的任何一种文件 由于本插件主要是用来制作大型的窗口 页面和窗口间的交互肯定会非常频繁 所 以本插件提供了丰富的交互控制接口 可以非常方便的进行页面间的数据的传输 由于本插件所需的 lhgcore min js 库文件就相当于一个精简的 jQuery 库 所以本插件 的代码的书写方式和 jQ 的一样精简 如果您想把 它做的 jQ 的插件 只要在页面引入 jQuery 的库 此时不再需要引入 lhgcore min js 库文件 代码作一下非常简单的修改 即可 无论你把窗口插件放在哪里 你都不需要担心会被外层的 frameset 或 iframe 所遮挡进 而影响客户体验 lhgdialog 窗口插件是可以跨 无限级 框架显示的 lhgdialog 采用九 宫格的 XHTML 结构 CSS 类钩子比较丰富 可以定制类似桌面软件般精致的皮肤 2 jGrid 表格插件使用表格插件使用 jqGrid 是一个用来显示网格数据的 jQuery 插件 本项目中后台的所有表格都是采用 jGrid 表格 jGrid 好用的原因时它封装了好多的 js 方法 这样你不用再自己写 js 了 所有开发速度也快了 jqGrid 介绍 介绍 JQGrid 是一个在 jquery 基础上做的一个表格控件 以 ajax 的方式和服务器端通信 jqGrid 安装很简单 只需把相应的 css js 文件加入到页面中即可 需要说明的是 jquery ui 的字体大小与 jqgrid 字体大小不一致 故需要在页面上在加上一段 style 来 指定页面上文字大小 jqGrid 原理 jqGrid 是典型的 B S 架构 服务器端只是提供数据管理 客户端只提供数据显示 换句话说 jqGrid 可以以一种更加简单的方式来展现你数据库的信息 而且也可以把客 户端数据传回给服务器端 对于 jqGrid 我们所关心的就是 必须有一段代码把一些页 面信息保存到数据库中 而且也能够把响应信息返回给客户端 jqGrid 是用 ajax 来实现 对请求与响应的处理 3 3 放大器插件放大器插件 前台的商品详细页面 鼠标移上去后 图片将被放大 此处就是用到了放大器插件 Jqzoom 插件使用 插件使用 放大器插件使用起来相当简单 只需要把相应的 js 插件放到你要放到的位置 然后在 页面上引入该 js 插件 然后在要放大的图片上改改相应的 css 则可使用 8 2 难点分析 8 2 18 2 1 分页分页 本项目好多地方都用到了分页技巧 虽效果差不多 但是其实 所使用的方法都有所不 同 下面我将分别说说我所使用的几个分页技巧 1 后台的表格都有分页 因为后台表格使用的 jGrid 表格插件 而该插件已经将分 页代码全都封装 所以分页代码不用写 只需自己设置一下 每页显示几条数据 然后 将页数传递到服务器端 服务器端将根据相应的页数 显示当前页的所有信息 2 前台的显示所有的商品列表及通过查询找出的商品列表都是用到了分页 这个分 页是自己写的代码 jsp 页面这端自己封装了个 js 方法 然后通过 ajax 与服务器端连接 通过每页显示条数 及需要显示的哪一页 服务器端通过自己写的代码 将把所有的查 出的商品查出 然后显示在 jsp 页面上 由于是自己写的代码 所以分页的 上一页 下一页图片都可以使用自己的图片 3 前台的购物车及订单查看 分页采用的技术是 使用 jsp 页面分页技术 原理是 服务器返回全部的信息 jsp 页面上再根据提供的每页显示条数 及当前页数 显示分页信息 使用 使用时只需要引入两个包 Pager src jar pager taglib jar 与上面第二个分页不同的地方就在于它是页面分页 而第二个是服务器分页 服务器 端分页需要每次都把数据传到服务器端 然后服务器端把需要的内容从数据库中查出来 然后在显示在 jsp 页面上 而 jsp 分页只需一次得到全部内容 在页面上分页即可 不 需要每次都从服务器端取数据 所以相对来说 jsp 页面分页比较方便 也比较快 使用 起来也比较简单 8 2 2 8 2 2 图片的上传技术图片的上传技术 由于该项目采用 jsp servlet 的技术 而不是 struts 如果是 strut 的话 在服务器端 直接就能得到上传文件的名字 大小 等等 采用 servlet 后 则需要自己手动写代码 写上传文件代码 我此次上传技术 采用的是 通过流传递 把上传的图片 一个字节 一个字节的传到服务器端 需要引入的两个包有 commons fileupload 1 2 2 jar 和 commons io 2 0 1 jar 服务器端代码具体如下 String value item getName int start value lastIndexOf String fileName value substring start 1 Random random new Random fileName UploadFile createRandomFileName fileName path random photo fileName item write new File path fileName OutputStream os new FileOutputStream new File path fileName InputStream is item getInputStream byte buffer new byte 400 int length 0 while length is read buffer 1 os write buffer 0 length is close os close 但是需要注意的是 在删除图片时 必须把图片也删除 不仅仅是把数据库里面的图片 地址删除 8 2 38 2 3 购物车模块购物车模块 本项目购物车模块 我才用的是 session 技术 Session 技术原理 在 WEB 开发中 服务器可以为每个用户浏览器创建一个会话对象 session 对象 注意 一个浏览器独占一个 session 对象 默认情况下 因此 在需 要保存用户数据时 服务器程序可以把用户数据写到用户浏览器独占的 session 中 当 用户使用浏览器访问其它程序时 其它程序可以从用户的 session 中取出该用户的数据 为用户服务 Session 是 用于保持状态的基于 Web 服务器的方法 Session 允许通过将 对象存储在 Web 服务器的内存中在整个用户会话过程中保持任何对象 Session 通常用 于执行以下操作 存储需要在整个用户会话过程中保持其状态的信息 例如登录信息或 用户浏览 Web 应用程序时需要的其它信息 存储只需要在页重新加载过程中或按功能分 组的一组页之间保持其状态的对象 Session 的作用就是它在 Web 服务器上保持用户的 状态信息供在任何时间从任何页访问 因为浏览器不需要存储任何这种信息 所以可以 使用任何浏览器 即使是像 PDA 或手机这样的浏览器设备 说到 session 就会想到 cookies Session 和 Cookie 的主要区别在于 Cookie 是把用户的数据写给用户的浏览器 Session 技术把用户的数据写到用户独占的 session 中 Session 对象由服务器创建 开发人员可以调用 request 对象的 getSession 方法得到 session 对象 session 失效的方法 session invalidate session 的有效 时间 30 分钟 在 web xml 中配置 session 的有效时间 在 web app 标签中设置如下 60 单位是分钟 默认设置是在 tomcat 中 web xml 另外 需要知道的是 session 的生命周期 从创建出来 session 开始 默认情况下如果浏 览器窗口关了 session 失效浏览器窗口没有关 但是 seesion 的有效期到了浏览器的窗 口关了 但是 session 的唯一标识用 cookie 保存下来了 只要 session 的有效期没有到 则 session 都是有效的 应用程序停止 session 失效 作用范围 只要在浏览器窗口没有 关 通过这个窗口发送的请求就都可以得到 整个应用程序中都有效 但是是浏览器独享 的 request getSession 得到 创建 session request getSession true 相当于 request getSession request getSession false 没有 session 就返回 null 浏览器的版本 ie8 中同一个浏览器打开两个窗口是共享 session 的 但是 ie7 中就不是 同一个浏览器打开两个窗口是不共享 session 的 使用 session 注意点 IE 禁用 Cookie 后的 session 处理 URL 重写 response encodeRedirectURL java lang String url 用于对 sendRedirect 方法后的 url 地址进行重写 response encodeURL java lang String url 用于对表单 action 和超链接的 url 地址进行重写 本项目中的购物车模块就是把购物车放到 session 域里面 这样不管到了那个页面 都 可以通过 session 的属性得到该购物车 并可以通过自己写方法 实现购物车增加商品 删除商品 购物车代码主要如下 public class MyCart HashMap hm new HashMap 添加 添加方法 1 public void addProduct String
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 呼叫中心服务员岗位创新思维考核试卷含答案
- 商务数据分析师岗位安全综合考核试卷含答案
- 灯具打样工岗位理论实操考核试卷含答案
- 糖汁蒸发工绩效评估强化考核试卷含答案
- 制油工岗位实习生考核试卷含答案
- 陶瓷工艺品雕塑师安全培训知识考核试卷含答案
- 绒线编织拼布工岗前活动策划考核试卷含答案
- 煤间接液化分离操作工安全综合模拟考核试卷含答案
- 架子工岗中师带徒考核试卷含答案
- 【北师大版】六年级数学上册《比的认识》单元复习教学设计
- 2026内蒙古鄂尔多斯市本级事业单位第二批引进高层次和紧缺人才28人备考题库及一套完整答案详解
- 杭州市博物馆藏品管理制度(试行)
- 促销活动外包合同
- 小升初小学数学《找规律》大题量练习总复习试卷练习题一
- 湖南省技术产权交易所有限责任公司招聘笔试题库2026
- 2026年高考全国一卷语文作文真题试卷(含答案)
- 2026年高考全国卷英语试卷附答案(新课标卷)
- 四川省绵阳市实验高级中学2022-2023学年高一物理下学期期末试题含解析
- 瑜伽逸馆员工手册模板
- 《海水增养殖用环保浮球技术要求》标准及编制说明
- 中国移动营业厅门头施工规范
评论
0/150
提交评论