




已阅读5页,还剩55页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1 基于 JSP 网上书店系统的设计与实现 摘 要 电子商务 Electronic Commerce 是互联网上出现的新概念 它是利用计算机技术 网络技术和远程通信技 术 实现整个商务 买卖 过程中的电子化 数字化和网络化 它使人们不再是面对面的 看着实实在在的货物 靠纸 介质单据 包括现金 进行买卖交易 而是通过网络 通过网上琳琅满目的商品信息 完善的物流配送系统和方便安全 的资金结算系统进行交易 它已经被广泛使用 给人们带来了便利 并逐渐改变了人们的生活方式 国内电子购物网站多数是用 ASP PHP 技术实现的 而基于 JSP 的优秀网站较少 Sun Microsystems 所开发的 JSP 以 JAVA 为平台 利用 JAVA 纯面向对象编程语言的巨大优势 跨平台性即一次编译到处运行的特点 给我们 的动态网页设计带来了很大的方便 本系统利用 JSP JavaBean SQL Server 数据库三层模式实现了网上书店系统 本论文对系统的需求分析 系统总 体架构及详细设计进行了详细地阐述 主要实现了以下功能 会员注册 登录 注销 用户管理 浏览图书详细信息 图书搜索 图书管理 购物车 订单 订单管理等 关键字 关键字 购物车 JSP SQL 2 Design and Implementation of Online Bookshop System Based On JSP Technology Abstract Electronic commence over the Internet is a new concept It is the use of computer technology network technology and long range communications technology to achieve a business sale process the electronic digital and networking It makes it no longer a face to face watching real goods rely on computerized documents including cash transactions But through networks through online information presented commodities improved logistics and distribution systems and clearing systems for financial transactions security In recent years it has become so broadly used that it is often let undifferentiated from other current trends which rely on automation such as concurrent engineering and just in time manufacturing Domestic electronic shopping websites are used mostly ASP PHP technical achievement and outstanding websites based on JSP less Sun Microsystems developed JSP Java as a platform to use pure object oriented programming language Java great advantages cross platform nature of the operational characteristics of a translation everywhere to our dynamic website design brings great convenience The system uses JSP JavaBean SQL Server database achieved the three tier model online bookstore system The papers on the needs analysis system the overall structure and systems for the detailed design of detail the main achievement of the following functions Member registration download cancelled User management Browse books detailed information Book Search Library management A shopping cart Orders Orders management Key words shoppingcar JSP SQL 3 目目 录录 前前 言言 5 第第 1 1 章章 概概 述述 6 1 11 1 开发背景开发背景 6 1 21 2 JSP 简介简介 6 1 2 1 JSP 的运行原理 6 1 2 2 JSP 页面的组成 7 1 2 3 JavaBean 技术介绍 8 1 2 4 JSP 的运行环境 8 1 31 3 系统开发环境系统开发环境 9 1 3 1 服务器的配置 9 1 3 2 数据库后台环境的配置 12 第第 2 2 章章 需求分析需求分析 16 2 12 1 系统组成 系统组成 16 2 22 2 角色识别角色识别 16 2 32 3 系统要求配置系统要求配置 19 第第 3 3 章章 系统设计系统设计 20 3 13 1 系统的流程设计和功能模块系统的流程设计和功能模块 20 3 23 2 数据库设计数据库设计 23 3 2 1 数据库需求分析 23 3 2 2 数据库逻辑结构设计 26 第第 4 章章 详细设计详细设计 28 4 14 1 系统概述系统概述 28 4 1 1 用户界面部分 28 4 1 2 管理界面部分 28 4 24 2 系统主要文件系统主要文件 28 4 2 1 bookshop util 包由两个类文件组成 28 4 2 2 bookshop book 包由六个类文件组成 28 4 2 3 booshop run 包由五个类文件组成 29 4 4 2 4 客户端界面文件组成 29 4 2 5 服务端界面文件组成 29 4 34 3 详细代码及说明详细代码及说明 30 4 3 1 实现 bookshop util 包 30 4 3 2 实现 bookshop book 包 31 4 3 3 实现 bookshop run 包 33 4 3 4 客户界面设计与实现 45 4 3 5 管理界面设计与实现 51 第第 5 5 章章 系统测试系统测试 54 5 15 1 数据库连接数据库连接 54 5 25 2 中文显示问题中文显示问题 55 第第 6 6 章章 总结总结 58 参考文献参考文献 59 致致 谢谢 60 5 前前 言言 随着 Internet 国际互联网的发展 越来越多的企业开始建造自己的网站 基于 Internet 的信 息服务 商务服务已经成为现代企业一项不可缺少的内容 很多企业都已不满足于建立一个简单的 仅仅能够发布信息的静态网站 现代企业需要的是一个功能强大的 能提供完善的电子商务服务的 动态商务网站 JSP 是 Sun 公司推出的一种网站开发技术 Sun 公司借助自己在 Java 上的不凡造诣 又把人们 引进 JSP 时代 JSP 即 Java Server Page 它可以在 Servlet 和 JavaBean 的支持下 完成功能强大 的 Web 应用程序 所以 在我的毕业设计中 我采用了 JSP 作为开发工具 构建了一个能实现简单 的电子商务的小型动态商务网站 网上书店销售系统 该系统能实现用户的注册 登录功能 能 够实现商品的查询 订购等功能 该系统基本上具备一个网上商品销售系统应该具备的功能 该设 计项目基本上体现了构建一个动态商务网站所需要的技术 可以说 目前的大型商务网站也就是我 们这个小型网站在内容上的扩充和重复 通过这次的毕业设计 我了解了目前流行的动态商务网站的构成和运作原理 掌握了用 JSP 构 建动态网站的相关知识和技术原理 锻炼了自己的动手实践能力 更重要的是 通过这次的毕业设 计 我培养出了刻苦钻研的学习精神和严肃认真的学习态度 这对我以后的学习和工作有很大的益 处 在这次毕业设计过程中 我得到了指导老师肖小聪老师的悉心指导 在此 我对他们表示衷心的 感谢 6 第第 1 1 章章 概概 述述 1 11 1 开发背景开发背景 随着时代的发展 信息技术 Internet Intranet 技术 数据库技术的不断发展完善 网络进 程的加快 传统的购物方式也越来越不能满足人们快节奏的生活需求 使得企业的 IT 部门已经认识 到 Internet 的优势 电子商务就是在这样一个背景下产生发展起来的 伴随着电子商务技术的不断 成熟 电子商务的功能也越来越强大 注册用户可以在网上搜索购买到自己想要的各种商品 初步 让人们体会到了足不出户 便可随意购物的快感 我的毕业设计也就正是一个电子商务系统的开发 网上商品销售系统 1 21 2 JSP 简介简介 JSP Java Server Pages 是由 Sun Microsystems 公司倡导 许多公司参与一起建立的一种 动态网页技术标准 JSP 技术在 Servlet 技术基础上发展起来的 它正在飞速发展中 现已成为 Java 服务器编程的重要组成部分 它虽然还未成型 但是它必将和 J2EE Java 2 Enterprise Edition 一起发展 JSP 是结合 markup HTML 和 XML 和 Java 代码来处理一种动态页面 每一页第一次被调用时 通 过 JSP 引擎自动被编译成 Servlet 然后被执行 以后每次调用时 执行编译过的 Servlet JSP 提 供了多种方式访问 Java class Servlet Applets 和 Web Server 因此 Web 应用的功能可以分成 多个明确定义公用接口的组件 通过 JSP 将它们结合在一起 1 2 11 2 1 JSPJSP 的运行原理的运行原理 在 JSP 第一次获得来自于客户端浏览器的请求时 JSP 文件将被 JSP 引擎 JSP engine 转换 成一个 Servlet 即将 jsp 文件编译成 Java Class 文件 当 Servlet 引擎接收到请求后 如果 设置了使用最新的 JSP 它就会去找 JSP 文件 检查该文件在上次编译后是否改动过 如果改动过 就会重新编译生成新的 Servlet 最终将请求转交给编译好的 Servlet 引擎执行 如图 1 1 7 图 1 1 JSP 运行原理 在编译时如果发现 JSP 文件有任何语法错误 转换过程将中断 并向客户端发出出错信息 如 果编译成功 则所转换产生的 Servlet 代码被编译 然后该 Servlet 被 JSP 引擎加载到内存中 此 时 JSP 引擎还请求了 jspInit 方法的执行 并对此 Servlet 初始化 JspInit 方法在 Servlet 的 生命周期中只被请求一次 然后将被调用来处理客户端的请求和回复操作 对于所有随后对该 JSP 文件的请求 服务器将检查该 JSP 文件自最后一次被存取后是否经过修改 如果没有修改 则将请 求交还给还在内存中的 Servlet 的 jspService 方法 执行回复操作 由于 Servlet 始终驻于内存 所以响应是非常快的 Jsp 页面在第一次访问时由于要转化和编译 运行速度较慢 但是当第二次 访问该页时 由于文件已经被编译成字节码文件了 所以速度非常得快 1 2 21 2 2 JSPJSP 页面的组成页面的组成 JSP 页面看上去像标准的 HTML 和 XML 页面 并附带有 JSP 引擎能够处理和解析执行的代码 与组件 通常 JSP 代码和组件用于创建在最终页面上显示的文本 通常来说 JSP 页面包括编译指 令 动作指令 声明 表达式和程序段等内容 Client 客户端客户端 请求请求 Request Web Server 响应响应 Response Server extension 服务器扩展服务器扩展 Servlet engine JSP engineServlet 引引 擎擎 JSP 引擎引擎 Class loader Java complier JSP parser 类载入器类载入器 Java 编译器编译器 JS 语法分析器语法分析器 8 1 编译指令 使用 JSP 编译指令 和 内的 来指定所使用的脚本语言 Servlet 实现 的接口 Servlet 扩展的类 Servlet 导入的软件包 JSP 指令的一般语法形式为 2 动作指令 标识 动作指令用于执行某些动作 在 JSP 规范中有 2 种类型的动作指令的标 识 第一种是标准动作 它定义的是无论在什么版本的 JSP 引擎或 Web 服务器下总是可用的动作 第二种是自定义动作 它通过使用 taglib 指令来实现 例如 JSP useBean JSP setProperty JSP getProperty 就是标准动作 3 声明 用于声明合法的变量和方法 与任何语言相同 JSP 语言使用变量来保存数据 这些变 量用 declaration 元素声明 声明的语法为 当页面被初始化的时候 JSP 页面中 的所有声明都被初始化 除了简单的变量 方法也能被声明 声明不对当前的输出流产生任何影响 4 表达式 通过计算表达式所得到的结果来表示某个值 表达式的形式为 表 达式求值的结果被强制转换为一个字符串 并插入到当前的输出流中 5 程序段 JSP 可以在页面中包含的一段程序 称之为程序段 程序段是一个代码片断 在请求 的处理过程中被执行 程序段可以和页面中的静态元件组合起来创建动态生成的页面 程序段在 中定义 在这对标识中的所有东西都会被当成 JSP 程序执行 1 2 31 2 3 JavaBeanJavaBean 技术介绍技术介绍 JavaBean 技术是一种基于 Java 的组件技术 JavaBean 组件可以用来执行复杂的计算任务 或负 责与数据库的交互以及数据的提取等 是解决代码重用问题的一种策略 以前的组件无法实现真正的代码重用 其主要原因就是它们对于处理平台的依赖和对开发语言 的依赖过重 由于 Java 语言在这些方面所具有的特点和优势 使得基于它的软件 JavaBean 组件技术 倍受人们的关注 它的任务就是 一次编写 可以在任何地方执行 可以在任何地方重用 JavaBean 组件可以在任何地方冲用包括了可以在应用程序 其他组件 文档 Web 站点和应用程序构造器工具等多种方案中再利用 为了创建和使用 Java 软件组件 JavaBean 被实现为一种独立于平台和结构的应用程序接口 它 的实现可以忽略内部的结构及细节问题 只需要定义其外部的特征及对外功能就行 其中 属性 方法和事件三种接口可以独立对外进行开发 JavaBean 的实质就是一个 class 文件 也可以成为类文件 JavaBean 以 binary 格式保存 可以保 护 Java 源代码不容易被他人抄袭 1 2 41 2 4 JSPJSP 的运行环境的运行环境 要运行 Jsp 注意 不是浏览 Jsp 页面 需要有支持 Jsp 的服务器 这里分 2 种情况 一种是自 9 身就支持 Jsp 的服务器 如 Jrun Weblogic JSWDK 等 而另一种则是在不支持 Jsp 的服务器上安装 Jsp 引擎的插件 如在 IIS Apache 等服务器上安装 WebSphere tomcat Resin 等插件 其中主流服务器 是 Weblogic 和 tomcat Weblogic 是一款功能强大的服务器软件 配置比较简单 而且 Jsp 的扩展功能较多 附带了数据库 的 JDBC 驱动程序 支持 JHTML 一种与 Jsp 十分相似的技术 是目前市场占有率最高的服务器 不过 Weblogic 的运行情况不太稳定 使用它调试 Jsp 文件 出现语法错误或者数据库连接错误时 Weblogic 就有可能崩溃 Tomcat 服务器是 Apache Group Jakarta 小组开发的一个免费服务器软件 适合于嵌入 Apache 中 使用 而且 它的源代码可以免费获得 你可以自由地对它进行扩充 访问的地址 http jakarta apache org tomacat index html Tomcat 服务器的兼容性很好 如 WebLogic 服务器采用其为 Web 服 务器引擎 Jbuilder 将其作为标准的测试服务器 Sun 公司也将其作为 JSP 技术应用的示例服务器 不足之处是它的配置比较麻烦 而且有一些安全性的问题没有解决 但是 Tomcat 服务器有众多大软 件公司的支持 而且服务器的性能稳定 其发展前景很好 1 31 3 系统开发环境系统开发环境 1 3 11 3 1 服务器的配置服务器的配置 前面介绍了 JSP 的生命周期 为了说明 JSP 对运行环境的要求 先简单的介绍一下它的运作过 程 服务器在接收到客户端传过来的一个页面请求时 先判断是否是 JSP 页面请求 从扩展名来判 断 如果不是 只是一般的 HTML 页面请求 则直接把 HTML 文档传给客户端 完成客户端与服 务器的一次连接 如果判断是 JSP 页面请求 则由 JSP 引擎 或 Servlet 引擎 将 JSP 页面代码转换 成 Servlet 代码 再通知服务器上的 JVM Java 虚拟机 对转换过来的 Servlet 代码进行编译 将生 成的字节码文件放在服务器上相应的地方 并执行编译后得到的字节码 然后把结果传送给客户端 这样就完成一次连接 以后如果有相同的 JSP 页面的请求 则直接由 JSP 引擎通知 JVM 执行已有的 字节码 并把结果传送给客户端 从上面 JSP 运作全过程可见 运行 JSP 最少需要三样东西 JSP 引擎 Web 服务器和 JVM 最常用的 Java 开发工具你可以选择 IDE Integration Development Environment 继承开发环境 也可 以直接用 SUN 公司提供的 JDK 进行开发 常用的 IDE 有 JBuilder Ecelipse 等 它们是桌面开发环 境嵌入 JDK 给用户的开发带来很大的便利 本系统直接采用 JDK 作为 JVM 和 java 编译器 所用 的操作系统是 Windows xp 服务器采用的是 tomcat 利用了它充当 Jsp 引擎 同时还利用了它的信息 发布功能 首先把 JDK tomcat 安装到本地硬盘 C 盘根目录下 下面详细的介绍如何配置运行环境 配置环境变量 10 第一步 进入我的桌面 右击 我的电脑 选择 属性 选项 进入 系统属性 对话框 单击 高级标签 如图 1 2 所示 图 1 2 系统属性对话框 第二步 第二步 点击上图箭头所示 环境变量 进入图 1 3 画面 图 1 3 配置 JAVA HOME 第三步 第三步 单击 系统变量 部分的 新建按扭 创建 JAVA HOME 变量 在变量值栏内输入 C jdk1 4 2 05 如图 1 4 所示 JAVA HOME 指明 JDK 安装路径 就是刚才安装时所选择的路径 11 C jdk1 4 2 05 此路径下包括 lib bin jre 等文件夹 此变量最好设置 因为以后运行 tomcat eclipse 等都需要依靠此变量 图 1 4 编辑系统变量 JAVA HOME 第四步 第四步 同样的方法创建 CLASSPATH 变量 在变量栏内输入 JAVA HOME lib JAVA HOME lib tools jar 要加 表示当前路径 CLASSPATH 为 java 加载类 class or lib 路径 只 有类在 classpath 中 java 命令才能识别 第五步 第五步 创建 PATH 变量 在变量栏内输入 JAVA HOME bin JAVA HOME jre bin Path 使得系统可以在任何路径下识别 java 命令 第六步 第六步 创建 Tomcat Home 变量 在变量栏内输入 C Tomcat5 0 如图 1 5 所示 图 1 5 配置 tomcat 第七步 第七步 检测配置是否成功 1 检测 JDK 是否配置成功 编写一个 java 程序 例如 public class HelloWorldApp public static void main String args System out println HelloWorld 首先把它放到一个名为 HelloWorldApp java 的文件中 这里 文件名应和类名相同 因为 java 解释器要 求公共类必须放在与其同名的文件中 然后对它进行编译 c javac g HelloWorldApp java 12 编译的结果是生成字节码文件 HelloWorldApp class 最后用 java 解释器来运行该字节码文件 c java HelloWorldApp 结果是在屏幕上显示 Hello World 至此 JDK 完全安装成功 2 检测 tomcat 是否配置成功 进入 C Tomcat5 0 bin 目录 双击 startup bat 执行文件启动 Tomcat 服务器 成功启动后的界面如图 1 6 所示 图 1 6 启动 tomcat 界面 我们现在就可以通过浏览器看 Tomcat 服务器的示例程序了 打开浏览器 键入 http localhost 8080 index jsp 进入 Tomcat 服务器的主页面 图 1 7 tomcat 默认页面 1 3 21 3 2 数据库后台环境的配置数据库后台环境的配置 SQSQL Server 是由 Microsoft 开发和推广的关系数据库管理系统 DBMS 它最初是由 Microsoft Sybase 和 Ashton Tate 三家公司共同开发的 并于 1988 年推出了第一个 OS 2 版本 SQL Server 近年来不断更新版本 1996 年 Microsoft 推出了 SQL Server 6 5 版本 1998 年 SQL Server 7 0 版本和用户见面 SQL Server 2000 是 Microsoft 公司于 2000 年推出的最新版本 JSP 与 SQL Server 数据库的连接 本系统使用 ODBC 驱动程序建立 SQL Server 的数据连接 创建步骤如下 13 1 选择任务栏的 开始 控制面板 性能与维护 管理工具 双击 ODBC 数据源 单击系统 DSN 标签 单击 添加 选择 SQL Server 的 ODBC 数据源 如图 1 7 所示 图 1 7 创建数据源 sql server 1 定义 ODBC 数据源的名字和 SQL Server 所在的服务器 如图 1 8 所示 图 1 8 设置数据源名称 2 定义连接数据库的方式 使用 Windows 的验证连接数据库 3 选择要连接的数据库 如图 1 9 所示 其于各项保留默认值 最后单击 完成 进入数据源的测试窗口 测试成功后显示如图 1 10 这样就完成了本系统数据库的 ODBC 数据源的创建 14 图 1 9 设置默认数据库 图 1 10 测试界面 建立数据库 选择任务栏的 开始 所有程序 Microsoft SQL Server 企业管理器 然后右击数据库选 新建数据库 如图 1 11 在弹出的对话框中输 入数据库名 完成后回到图 1 11 的界面 单击 数据库 选择你刚刚建立的数据库 cart 右 击选择新建表选项 这样就可以创建自己的数据表了 通过建好的数据表就组成了数据库 15 图 1 11 新建数据库 16 第第 2 2 章章 需求需求分析分析 本系统是一个中小型的电子商务系统 网上书店 可以为各类用户提供方便的在线买书环境 符合目前国内流行的电子商务模式 用户可以在系统中实现注册 浏览商品 搜索查询商品 下定 单 处理定单等功能 管理员可以通过用户管理 定单管理 商品管理 评论管理等管理功能来对 系统进行维护更新 2 12 1 系统组成 系统组成 1 客户界面部分 图书选购 可按分类查找图书 或者通过关键字进行查询 购物车功能 查看图书详细信息 用户注册 用户登录 查看用户的订单信息 修改用户个人信息 2 管理界面部分 现有图书管理 修改 删除 查看 用户管理 查看 修改 删除 订单管理 查看订单清单 更新订单付款 出货状态 删除订单 添加新图书 添加图书分类 2 22 2 角色识别角色识别 角色识别的任务是找出所有可能与系统发生交互行为的外部实体 对象和系统 他们的行为 不受系统的控制 但是可以提供输入给系统 即使用系统的功能 或者能够响应系统的服务请求 为系统提供服务的接口 在前面的描述中可知 用户在访问系统时 可以浏览书籍和查询书籍 并使用购物车筛选自 己中意的书籍 购物完之后到服务台进行结帐 并保留订单以便收到货物时进行核对 很显然系统 存在这样的主要角色 我们定义该角色为前台客户 同样在系统的后台 也需要人员管理货物 查 询 处理订单 管理注册用户 我们定义该角色为系统管理员 综上所述 本系统实际只包含两个角色 前端用户 系统管理员 17 前台用户的行为 管理个人信息 前台订单处理 购物 浏览信息 管理个人信息的操作 用户注册 用户信息修改 用户登录 用户信息查看 前台订单处理的操作 结帐 查看订单状态 取消订单 购物操作 浏览购物车 将商品放入购物车 取消购物车中的商品 修改购物车中商品的数 量 清空购物车 浏览信息 查看图书详细信息 查找图书 系统管理员的行为 用户管理 后台订单管理 商品管理 用户管理的操作 管理员登录 后台验证 查看用户信息 修改用户信息 添加用户 删除 用户 后台订单管理的操作 查看订单 确认订单 修改订单状态 删除订单 商品管理 查看图书列表 查看图书详细信息 添加图书 修改图书 删除图书 添加图书 分类 删除图书分类 浏览图书分类列表 为了更好的理解我画出了前台用户模型图和系统管理员模型图 前台用户模型 前台用户 管理个人信息前台订单处理 浏览信息购物 图 2 1 前台用户模型 18 用户管理 后台订单 管理 商品管理 系统管理员 图 2 2 系统管理员模型 表 2 1 模块功能列表 序 号 功能模块 类型 功能模块备注 1 前台用户管理个人信息用户注册 用户信息修改 用户登 录 用户信息查看 2 前台用户前台订单处理结帐 查看订单状态 取消订单 3 前台用户购物 浏览购物车 将商品放入购物车 取消购物车中的商品 修改购物车 中商品的数量 清空购物车 4 前台用户浏览信息查看图书详细信息 查找图书 5 系统管理员 用户管理 管理员登录 后台验证 查看用户 信息 修改用户信息 添加用户 删除用户 6 系统管理员 后台订单管理查看订单 确认订单 修改订单状 态 删除订单 7 系统管理员 商品管理 查看图书列表 查看图书详细信息 添加图书 修改图书 删除图书 添加图书分类 删除图书分类 浏 览图书分类列表 表 2 1 是根据模块完成任务的不同进行划分的 一共包括 7 大模块 其中与前台相关的共有 4 个 与后台相关的共有 3 个 这些功能模块是建立在我们对系统的需求分析和设计的基础上的 当 19 然这是从大的方向对系统进行的很粗糙的划分 进入系统设计阶段我们将会对系统进行更加精细的 划分设计 任何系统的功能的实现都离不开角色的参与 为了赋予不同的角色不同的功能和权限 也为了 一定程度上确保系统交易的安全性和顺利进行 我们必须对系统的各种用户进行管理 从表 2 1 可 以看出 系统提供用户登录 用户注册 用户信息查看 用户信息修改的功能 用户登录后是为了 从后端数据库中核实用户的登录名和密码 防止非法用户下订单 确保系统的安全性和秩序 其他 的功能也是最大限度的保证系统的顺利进行和安全性 这里就不一一说明了 2 32 3 系统要求配置系统要求配置 操作系统 Windows 9X Windows NT Workstation Server 4 0 以上 Windows 2000 Server Professional Windows XP Professional CPU 没有很高的要求 只要能够顺利运行 Windows 系列操作系统就可以了 当然 CPU 的 处理速度越快 运行 JSP 代码的效率越高 内存 最低配置 32MB 建议使用 64MB 以上内存 如果使用 Windows 2000 或 Windows XP 建议使用 128MB 以上内存 硬盘空间 至少需要 50MB 以上的硬盘空间来安装所需的组件 运行 JSP 的服务器端要求 如表 2 1 所示 表 2 2 系统配置要求 操作系统需要安装的 J2SDK Tomcat Windows 98 J2sdk 1 4 1 01 Tomcat 4 0 以上 Windows NT 4 0 Server J2sdk 1 4 1 01 Tomcat 4 0 以上 Windows 2000 J2sdk 1 4 1 01 Tomcat 4 0 以上 Windows XP J2sdk 1 4 1 01 Tomcat 4 0 以上 20 第第 3 3 章章 系统设计系统设计 本系统采用三层架构设计 它的工作原理如图 3 1 所示 图 3 1 三层架构模型 采用三层构架以后 用户界面层通过统一的接口向业务层发送请求 业务层按自己的逻辑规则 将请求处理之后进行数据库操作 然后将数据库返回的数据封装成类的形式返回给用户界面层 这 样用户界面层甚至可以不知道数据库的结构 它只要维护与业务层之间的接口即可 3 13 1 系统的流程设计和功能模块系统的流程设计和功能模块 当你以一个客户的身份进入本网站后 你可以浏览图书和搜索你所需要的图书 搜索包括分类 查找和关键字查找 本系统中 只有本站用户才能够在线购书 因此当你选中一本图书要将其放入 购物车时 你就必须登录本网站 如果有用户名和密码则可直接登录 如果没有 则需要注册新用 户 然后登录 当成功登录后 你就可以查看和管理你的购物车了 可以修改订购数量 可以删除 订单 还可以查看和管理你的用户个人注册信息 当你确定购买书的时候就可以提交你的购物车结 帐 这时提交后你还可以再继续购书 而后台服务器接受了客户提交的订单之后可以对订单进行处 理 一趟完整的购书过程就结束了 结帐方式是通过客户提交订单之后 假设这时客户马上就付款 付完之后 服务端就把订单的状态修改为已付状态 这是本系统有待改进的地方 如果这如下图 3 2 所示 21 用 户 图书浏览 图书分类查 找 图书关键字查 询 放入购物车 是否登录 用户登录 用户注册 结帐 服务器端 处理 修改订购数量 删除订单 新用户 已登录 无登录 图 3 2 客户端流程图 在服务器端作为系统的管理员在进入管理员界面进行登录 首先也必须进行验证登录 这时系 统从 admin user 数据库表中查找看有没有用户输入的用户 并验证密码是否正确 如果不正确 那么系统提示返回 重新登录 如果正确则进入后面的工作流程 这时管理员可以进行管理操作 比如用户管理操作 查看用户信息 修改用户信息 添加用户 删除用户 图书管理操作 查 看图书列表 查看图书详细信息 添加图书 修改图书 删除图书 图书分类管理操作 添加 图书分类 删除图书分类 浏览图书分类列表 订单管理操作 查看订单 确认订单 修改订 单状态 删除订单 操作完之后管理员可以退出系统 服务端流程图如下图 3 3 所示 22 管理员 帐户验证 验证成功 用户管理 图书管理 订单管理 图书分类管理 退出 否 是 图 3 3 服务端流程图 整个系统的功能模块划分不仅包括系统的模块的划分还有系统的导航功能设置 用户登录以 后进入在线购书模块 用户可以购书 也可以查看图书信息 查询图书可以通过关键字 也可 以通过分类查询 当用户找到自己需要的书籍以后可以选择购买 也可以查看图书的详细信息 这时候如果用户选择购买的话 他可以选择购买的数量 并将书籍放到购物车中 这个时候用 户就可以去查看购物车信息 购物车中罗列了用户购物的清单 订单 用户可以查看订单信息 修改订单信息 比如说修改书籍的购买数量 或者删除前面购买的书籍 这时用户可以提交购 物车到后台结帐 也可以选择继续购书 继续购书就是按照前面的流程在循环的走下去 用户 提交购物车以后 订单就不能再被用户修改了 这个时侯用户的流程就走完了 服务器在收到 用户提交的订单信息以后 可以确认用户的信息 可以管理订单 比如删除订单或者修改订单 的状态 把未付款状态修改成已付 并决定发货 通过修改发货状态信息 在整个系统中根据角色划分出来的客户端和管理员他们所完成的任务各不相同 客户端完成的功能模块主要包括 个人信息管理 前台订单处理 购物车处理 浏览信息 管理员完成的功能模块主要包括 用户管理 后台订单管理 图书管理 图书分类管理 23 他们功能的详细划分前面在需求分析时已经作过讨论 这里我们就不在详细阐述了 详情请 见 2 2 角色识别 如图 3 3 为本系统的功能模块图 网上书店 客 户 端 管 理 员 管 理 个 人 信 息 前 台 订 单 处 理 购 物 浏 览 信 息 用 户 管 理 后 台 订 单 管 理 图 书 管 理 图 书 分 类 管 理 图 3 4 系统模块图 3 23 2 数据库设计数据库设计 数据库在一个信息管理系统中占有非常重要的地位 数据库结构设计的好坏将直接对应用系统 的效率 以及实现的效果产生影响 合理的数据库结构设计可以提高数据存储的效率 保证数据的 完整和一致 3 2 13 2 1 数据库需求分析数据库需求分析 针对一般在线书店的需求 得出如下需求信息 用户分为游客和已注册用户 订单分为单张详细订单和总订单 24 订购 用户 订单列表订单 图书 一个用户可以购买多本图书 一个用户对应一张订单 一个列表对应多张订单 针对本系统功能分析 总结出如下的需求信息 用户 包括数据项 用户 ID 用户名 密码 图书 包括数据项 图书编号 图书名 价格 图书介绍 订单列表 包括数据项 订单编号 图书编号 购书数量 订单 包括数据项 订单编号 用户编号 下单时间 从本系统中规划出的实体有 用户实体 图书实体 订单实体 订单列表实体 实体之间关系的 E R 图如图 3 5 所示 1 1N N 图 3 5 实体关系 E R 图 用户信息实体的 E R 图如图 3 6 所示 图书实体的 E R 图如图 3 7 所示 订单实体的 E R 图如图 3 8 所示 订单列表实体的 E R 图如图 3 9 所示 图书 图书编号 图书名称分类编号 封面 图 3 6 图书实体 E R 图 25 用户 用户名 密码用户编号 E mail 图 3 7 用户实体 E R 图 订单 订单编号 用户编号图书编号 订购数量 图 3 8 订单实体 E R 图 订单列表 订单号 用户编号图书编号 是否付款 图 3 9 订单列表实体 E R 图 26 3 2 23 2 2 数据库逻辑结构设计数据库逻辑结构设计 在线书店数据库中各个表的设计结果如下面的标和所示 表表 3 1 为图书信息列表为图书信息列表 book 表 3 1 图书信息表 book 字段名数据类型长度允许空说明 IDint4自动编号 主键 booknameint4书名 bookclassvarchar255图书类别 authorvarchar100yes图书作者 publishfloat8yes出版社 bookNovarchar100yes书号 Contenttext16yes内容介绍 pricetinyint1yes价格 Amountint4yes总数量 Leav numberint4yes库存量 pictureint4yes封面 reg timedatetime8yes入库时间 表表 3 2 为用户信息列表为用户信息列表 shop user 表 3 2 用户信息表 shop user 字段名数据类型长度允许空说明 IDint4自动编号 会员编号 usernamevarchar4no用户名 passwordvarchar100no密码 Namesint4yes会员级别 Sexvarchar50yes名字 Addrvarchar50yes地址 Phonevarchar25yes电话 Postvarchar25yes邮编 Emailvarchar25yes邮箱 Retimedatetime8yes注册时间 RegIpAddrvarchar20yes注册 ip 表表 3 3 为订单表 记录订单信息为订单表 记录订单信息 orders 27 表 3 3 订单信息表 orders 字段名数据类型长度允许空说明 IDint4yes自动编号 订单编号 order idint4yes会员编号 user idint4yes图书编号 quantityint4yes订购数量 submit timedatetime8yes提交订单时间 consignmentTimedatetime8yes交货时间 totalpricefloat8yes总价 contentvarchar20yes备注 ipAddrvarchar20yes用户 ip isPayoffint11yes是否付款 isSaleint11yes是否发货 表表 3 4 为订单列表 记录订单列表信息为订单列表 记录订单列表信息 allorder 表 3 4 订单列表 allorder 字段名数据类型长度允许空说明 IDint4自动编号 卡类型编号 orderIDint11yes订单号 BookNoint11yes书号 Amountint11yes数量 表表 3 5 书店管理员信息表 记录管理员信息书店管理员信息表 记录管理员信息 bookadmin 表 3 5 管理员信息表 bookadmin 字段名数据类型长度允许空说明 AdminUservarchar20管理员用户名 AdminPassvarchar50 yes管理员密码 表表 3 6 图书分类信息表 记录图书分类信息图书分类信息表 记录图书分类信息 bookclass 表 3 6 图书分类表 bookclass 字段名数据类型长度允许空说明 IDint4自动编号 卡类型编号 Classnamevarchar30yes图书类别 28 第 4 章 详细设计 4 14 1 系统概述系统概述 4 4 1 1 1 1 用户界面部分用户界面部分 图书选购 可按分类查找图书 或者通过关键字进行查询 购物车功能 查看图书详细信息 用户注册 用户登录 查看用户的订单信息 修改用户个人信息 4 4 1 1 2 2 管理界面部分管理界面部分 现有图书管理 修改 删除 查看 用户管理 查看 修改 删除 订单管理 查看订单清单 更新订单付款 出货状态 删除订单 添加新图书 添加图书分类 4 24 2 系统主要文件系统主要文件 系统设计中包括业务逻辑层和表示层 业务逻辑 bean 由三个包组成分别是 booshop util bookshop book bookshop run 三个包分别完成 不同的功能由不同的类组成 表示逻辑由客户端表示层和服务器端表示层组成 4 4 2 2 1 1 bookshop utilbookshop util 包由两个类文件组成 包由两个类文件组成 DataBase 类 完成数据库的连接操作 Format 类 数据库与页面文件的格式转换操作 4 4 2 2 2 2 bookshop bookbookshop book 包由六个类文件组成 包由六个类文件组成 book 类 图书类 29 allorder 类 订单列表类 bookclass 类 图书分类类 order 类 订单类 shopcar 类 购物车类 user 类 用户类 4 4 2 2 3 3 booshop runbooshop run 包由五个类文件组成 包由五个类文件组成 login 类 管理用户登录 op book 类 管理图书 包括图书的查询 修改 删除 添加等操作 op user 类 管理用户 包括用户的查询 添加 删除和修改等操作 op buy 类 管理订单 包括订单的查询 添加 修改和删除等操作 op bookclass 类 管理图书分类 包括图书分类的查询 添加和删除等 4 4 2 2 4 4 客户端界面文件组成 客户端界面文件组成 index jsp 系统主界面 login jsp 用户登录界面 reg jsp 用户注册界面 buy jsp 用户购买图书界面 booklist jsp 显示图书列表信息 detail jsp 查看图书详细信息 shopcar jsp 用户查看购物车信息 info jsp 显示订单信息界面 4 4 2 2 5 5 服务端界面文件组成 服务端界面文件组成 adm login jsp 管理员登录界面 adm logou jsp 管理员退出界面 adm book jsp 显示所有图书信息 adm user jsp 显示所有用户的信息 adm order jsp 显示所有订单信息 adm addbook jsp 添加新图书操作界面 adm addbookclass jsp 图书分类操作界面 book modify jsp 修改图书详细信息 book detail jsp 显示图书详细信息 user modify jsp 修改用户信息 order detail jsp 显示订单详细信息 user detail jsp 显示用户详细信息 30 4 34 3 详细代码及说明详细代码及说明 4 3 14 3 1 实现实现 bookshop utilbookshop util 包包 1 1 在数据库连接 在数据库连接 DataBase javaDataBase java 文件中定义了文件中定义了 4 4 个操作分别是 个操作分别是 public static Connection getConnection 获得连接对象 public static void closeConnection Connection con 关闭数据库连接 public static void closeStatement Statement stmt 关闭 Statement 对象 public static void closeResultSet ResultSet rs 关闭 ResultSet 对象 四个方法都是 static 即静态方法也称为类方法 他们的实现如下 package bookshop
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 济南商铺合租合同范本
- 转让公寓免责合同范本
- 矿山废料处置合同范本
- 酒店代理出租合同范本
- 集中水果采购合同范本
- 2025至2030中国礼品罐行业项目调研及市场前景预测评估报告
- 防爆专业面试题及答案
- 海运专业面试题及答案
- 护理学基础题库教案及答案解析
- 医疗护理事业编刷题题库及答案解析
- 旅馆消防安全灭火疏散应急预案模版(3篇)
- 汽车吊维保记录
- 机房网络改造升级方案
- 函数的单调性与最值课件高三数学一轮复习
- DL∕T 5344-2018 电力光纤通信工程验收规范
- DL∕T 2528-2022 电力储能基本术语
- DL∕T 1785-2017 电力设备X射线数字成像检测技术导则
- 不交社保劳动合同模板
- DL-T5493-2014电力工程基桩检测技术规程
- 大冶市大垴山金矿千家湾矿区铜矿矿产资源开发利用与生态复绿方案
- 试运行专项方案模板
评论
0/150
提交评论