何梦丽(1067001052)--基于Java的二手图书交易系统后台管理.doc_第1页
何梦丽(1067001052)--基于Java的二手图书交易系统后台管理.doc_第2页
何梦丽(1067001052)--基于Java的二手图书交易系统后台管理.doc_第3页
何梦丽(1067001052)--基于Java的二手图书交易系统后台管理.doc_第4页
何梦丽(1067001052)--基于Java的二手图书交易系统后台管理.doc_第5页
已阅读5页,还剩39页未读 继续免费阅读

下载本文档

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

文档简介

普 通 本 科 毕 业 论 文 2010 2014 年 年 题目 基于 Java 的二手图书交易系统后台管理 设计与实现 Topic Used books Java based trading system admin Design and Implementation 学 生 姓 名 何 梦 丽 学 院 软 件 学 院专 业 软 件 工 程 学 号 1067001052 届 别 2014 指 导 教 师 李 弟 平 二 O 一四 年 六 月 普通本科生毕业论文 设计 诚信承诺书普通本科生毕业论文 设计 诚信承诺书 毕业论文 设计 题 目 基于 Java 的二手图书交易系统后台管理 设计与实现 学生姓名何梦丽专 业软件工程学 号 1067001052 指导老师李弟平职 称讲师 所在学院软件学院 诚信承诺诚信承诺 本人慎重承诺和声明 我承诺在毕业论文 设计 活动中遵守学校有关规定 恪守学术规 范 在本人的毕业论文中未剽窃 抄袭他人的学术观点 思想和成果 未篡改研究数据 如有违规行为发生 我愿承担一切责任 接受学校的 处理 学生 签名 2014 年 月 日 摘摘 要要 互联网的诞生不仅极大的缩小了地球 也给人们带来非常大的好处 随着 科技的发展 越来越多的日常事务都能够通过网络实现 让人们即使不出家门 也可以买到东西 了解到一些国家新闻 还能听音乐 看视频 放松我们的心 情 为了让广大的学子可以更方便买到自己想要的书籍 并且能够使旧书籍得 到充分的利用 设计了一个用于二手图书交易的系统 本系统非常具有实用性 既可以节省用户淘书的时间 又可以减少旧书的浪费 本课题研究的是对校园二手书交易系统的后台后台设计与实现 详细描述该系 统后台的设计与实现 主要实现管理员登陆 图书管理 用户管理 卖书管理 以及发送消息等功能 系统开发基于 B S 模式 采用 Struts2 框架 以 Java 为 编程语言 使用的开发工具为 eclipse 数据库使用 SQL Server 2005 由 Jsp Struts2 Jdbc 的技术来完成系统后台代码的编码 从而实现面向对象的界面 设计 个性化的设计特点以及简单实用的操作功能 该论文首先介绍本系统所用到的关键技术 接着是阐述对整个系统的需求 分析 然后再到系统的设计与实现 关键词 二手图书交易系统 后台管理 Java Struts2 Abstract The birth of the Internet not only greatly reduce the earth but also to bring great benefits With the development of technology more and more routine transactions are realized through the network even if not home so that people can buy things I learned some of the national press but also to listen to music watch videos relax our mood To make it easier for the majority of students want to buy their own books old books and the ability to be fully utilized to design a system for second hand book trade This system is very useful not only can save the user Taoshu time they can reduce the waste of old books This research is on the campus of the background used book trading system design and implementation design and implementation of a detailed description of the background of the system the main administrator login library management user management management and send messages to sell books and other functions System development based on B S mode using Struts2 framework to Java as the programming language used to develop tools for the eclipse the database using SQL Server 2005 By the Jsp Struts2 Jdbc technology to complete the background code coding system In order to achieve the object oriented interface design personalization simple and practical design features and operating functions This paper introduces the key technologies used in this system followed by elaborate analysis of the entire system needs and then design and implementation and then the system Key words second hand book trading system management background Java Struts2 目目 录录 第第 1 1 章章 绪论绪论 6 1 1 项目背景 6 1 2 研究意义 6 1 3 国内外的研究现状 6 1 4 研究内容与论文的组织结构 7 第第 2 2 章章 关键技术介绍关键技术介绍 6 2 1 JAVA 与 J2EE 技术 8 2 2 开发环境 ECLIPSE 9 2 3 动态页面 JSP 9 2 4 数据库技术 JDBC 8 2 5 STRUTS 框架 9 2 6 JAVA 与 J2EE 技术 8 第第 3 3 章章 需求分析需求分析 11 3 1 用户分析 11 3 2 功能分析 11 3 3 用例分析 13 3 4 可行性分析 14 第第 4 4 章章 系统系统详细详细设计设计 17 4 1 系统总体结构设计 18 4 1 1 系统体系结构 18 4 1 2 程序系统结构 18 4 2 数据库设计 20 4 3 系统后台功能设计 23 4 3 1 后台功能 23 第第 5 5 章章 系统实现系统实现 26 5 1 系统应用环境 26 5 1 1 系统运行的软件环境 26 5 2 页面设计的实现 27 5 3 角色功能代码的实现 31 5 3 1 数据库连接 31 5 3 2 登陆 31 5 3 3 用户管理 31 5 3 4 设定 33 第第 6 6 章章 总结与展望总结与展望 57 6 1 总结 35 6 2 展望 35 参考文献 36 致 谢 37 第第 1 章章 绪论绪论 1 1 项目背景项目背景 在这个科技飞速发展的时代 网络正以惊人的速度向社会生活的各个领域 渗透 并进而改变着我们的生活 学习 工作乃至思维方式 网络的快捷 方 便 开放等特点 使得我们的学习以及工作效率得到大大的提高 基于 Java 的 网上旧书交易系统是基于互联网的应用软件 它适用于不同地方不同语言的读 者交流 此系统可以将旧书交易简单化 使人们买书更加方便 同时也使旧书 利于率增加 人与人之间的交流与工作变得更加便捷 准确 及时 可以更准 确便捷及时地了解各类旧书的信息 在网上进行旧书交易 本系统主要分为前台与后台两部分 而本文则是从本人负责的系统后台的 设计与实现来阐述 后台管理是一个系统不可缺少的部分 只有通过前台的运 营以及后台的管理才可以使系统正常工作 1 2 研究意义研究意义 基于上诉的项目背景 本文的研究意义在于解决系统后台的设计与实现的 问题 使得系统后台界面美观 操作简单 功能全面 并且简化工作流程的复 杂度 让系统去做繁琐而相似的大量流水化手工操作 节约人力与时间 优化 了办公效率 该系统不仅为用户提供了方便 也改变了以往大家只有去旧书店淘书的方 式 在网上实现了旧书交易 并且提高了旧书的使用率 使得大家有书买有书 看 也使得大家处理不了的旧书等到回收利用 买书与卖书都可以只用该系统 使用性是相当强的 该系统后台具有较大的数据库资源 为后台的实现奠定基础 第一 该系统后台的图书资源 包括图书名称 作者 出版社等信息 也 为广大的学子寻找想要的图书提供了极大的便利 使学子们能够在线直接搜索 查看 评论以及购买图书 第二 该系统后台对用户的管理 强大的系统用户 资源 登陆名 密码等 也为广大的学子提供了交流的平台 第三 该系统后 台对买卖的图书同样也有独立的管理 使得广大的学子知道什么书正在销售 什么书需求量大 而什么书暂时缺货等等 1 3 国内外的研究现状国内外的研究现状 根据调查 目前互联网用于二手图书交易的网站系统很少 而被人们熟知 的则几乎还没有 现在互联网的一些网站已开始启用二手图书交易的平台 但 这些刚刚出世的还未成熟的系统还存在以下几点问题 1 界面风格不统一 不美观 操作复 2 使用门槛较高 没有顾及普通用户 3 无法真正实现二手书交易 4 系统维护及升级 所以 我与我的团队决定挑战此项目 设计并实现一个二手图书交易系 统 为了开发出真正满足用户需求的软件产品 首先必须知道用户的需求 然 后严格按照软件开发的步骤 一步一步实现并完善我们的系统 虽然我们的系 统还不够完善 但是我们会努力使它变得越来越好 由于团队人数 有限 所以 系统只分为了前台设计与后台管理两个部分 而我则是负责后台设计与实现 1 4 项目的确立项目的确立 针对目前的国内外科技发展形势 二手图示交易系统的特点可以满足广大 学子的需要 可以实现真正的实用性 为了帮助广大的学子可以找到自己喜欢 的图书 以及可以拥有想要的图书 我们将开发本系统 项目名称 二手图书交易系统 项目提出者 江西师范大学软件学院 项目开发者 系统开发人员及其指导老师 项目鉴定者 待定 项目开始时间 2013 9 1 5 研究内容与论文的组织结构研究内容与论文的组织结构 该项目的设计采用软件工程的方法 每个软件都有生命周期 概括地说 软件生命周期由软件定义 软件开发和运行维护 3 个时期组成 每个时期又进 一步划分成若干个阶段 1 系统开发也是如此 由需求分析到详细设计再到实现和测试维护部分都采 纳其思想原则 本论文结合本人的设计的过程以及实际产物从开发初期到开发完毕作详细 的分析和介绍 包括了以下几个部分 第一部分 介绍项目背景和研究意义 结合国内外的研究现状提出意见 第二部分 介绍系统开发所采用的技术以及开发环境 第三部分 系统的需求分析 第四部分 系统的详细设计 第五部分 系统的实现与测试 第六部分 为该系统及论文总结 提出系统仍然存在的不足以及如何改善使 之进一步发展 第第 2 章章 关键技术关键技术介绍介绍 本系统涉及到以下技术 Java J2ee JSP JDBC Struts2 以及 UML 建模 等技术 以及开发工具 Eclipse 所以本章简要介绍以下关键技术 Java 和 J2ee 技术 Eclipse JSP 技术 数据库连接 JDBC Java Data Base Connectivity Struts UML 2 1 JAVA 与与 J2EE 技术技术 随着互联网的普及和持续增长 面向 Web 应用的程序的开发方法已成为软 件编程的主流方法 而 Java 正是互联网编程的一种主流语言 Java 提供了成熟 的 高效的软件开发工具以及大量包括多线程和高级图形用户界面在内的各种 应用程序的开发包 此外 体系结构中立的设计使 Java 具有很好的可移植性 2 J2EE 是 Java2 平台企业版 Java 2 Platform Enterprise Edition 一套全然 不同于传统应用开发的技术架构 包含许多组件 主要可简化且规范应用系统 的开发与部署 进而提高可移植性 安全与再用价值 2 2 开发环境 开发环境 ECLIPSE Eclipse 是一个开放源代码的 基于 Java 的可扩展开发平台 其附带了一 个标准的插件集 包括 Java 开发工具 Java Development Kit JDK Eclipse 还包括插件开发环境 Plug in Development Environment PDE 这个组件主要 针对希望扩展 Eclipse 的软件开发人员 因为它允许他们构建与 Eclipse 环境 无缝集成的工具 Eclipse 软件图如下图 2 1 所示 图图 2 12 1 EclipseEclipse 软件图软件图 2 3 动态页面动态页面 JSP JSP Java Server Pages 是由 Sun Microsystems 公司倡导 许多公司参与 一起建立的一种动态网页技术标准 JSP 技术有点类似 ASP 技术 它是在传统 的网页 HTML 文件 htm html 中插入 Java 程序段 scriptlet 和 JSP 标记 tag 从而形成 JSP 文件 jsp 3 Web 服务器在遇到访问 JSP 网页的请求时 首先执行其中的程序段 然后 将执行结果连同 JSP 文件中的 HTML 代码一起返回给客户 插入的 Java 程序 段可以操作数据库 重新定向网页等 以实现建立动态网页所需要的功能 JSP 与 Java Servlet 一样 是在服务器端执行的 通常返回该客户端的就是 一个 HTML 文本 因此客户端只要有浏览器就能浏览 2 4 数据库连接数据库连接 JDBC JDBC Java DataBase Connectivity 是用于运行 SQL 的解决方案 开 发人员使用 JDBC 的标准接口 是由一组标准接口与类所组成的 4 JDBC 为工具 数据库开发人员提供了一个标准的API 据此可以构建更高级的工 具和接口 使数据库开发人员能够用纯 Java API 编写数据库应用程序 5 任何一个系统都必须有后台强大的数据库支持 Java 数据库连接体系 结构是用于 Java 应用程序连接数据库的标准方法 JDBC 对 Java 程序员而 言是 API 对实现与数据库连接的服务提供商而言是接口模型 其连接体系 结构图如图 2 2 所示 图图 2 2 JDBC 连接体系结构图连接体系结构图 2 5 Struts2 框架框架 Struts 2 是 Struts 的下一代产品 是在 struts 1 和 WebWork 的技术基础 上进行了合并的全新的 Struts 2 框架 其全新的 Struts 2 的体系结构与 Struts 1 的体系结构差别巨大 Struts 2 以 WebWork 为核心 采用拦截器的机制来处理用户的请求 这样 的设计也使得业务逻辑控制器能够与 ServletAPI 完全脱离开 所以 Struts 2 可以理解为 WebWork 的更新产品 Struts2 对应的有自己的标签 并且功能强 大 Struts 工作原理图如图 2 3 所示 图图 2 32 3 strutsstruts 工作原理图工作原理图 2 6 UML 建模建模 UML Unified Modeling Language 统一建模语言 是一种通用的 统一 的 可视化建模语言 是用现代抽象模型理论建立的面向对象软件系统结构 表示方法 8 UML 展现了一系列最佳工程实践 这些最佳实践在对大规模 复杂系统进行建模方面 特别是在软件架构层次已经被验证有效 UML 可以贯穿软件开发周期中的每一个阶段 被OMG 采纳作为业界的标 准 UML 最适于数据建模 业务建模 对象建模 组件建模 UML 作为一种模型语言 它使开发人员专注于建立产品的模型和结构 而不是选用什么程序语言和算法实现 当模型建立之后 模型可以被UML 工具转化成指定的程序语言代码 第第 3 章章 需求分析需求分析 3 1 用户分析用户分析 该系统后台管理用户角色 系统管理员系统管理员 下面对用户角色进行分析 系统管理员是指该系统的超级用户 其主要职责是进行系统相关设置 进 行系统维护的人员 同时拥有对用户进行设置 分配权限等更能作 并且负责 管理数据库的数据查询 删除和修改等操作 主要管理模块划分为 用户管理 书籍管理和交易管理等 管理员功能包括对书籍 用户 卖书信息几大模块的管理 主要能够实现 以下功能 1 管理员可对系统数据进行维护 修改 打印 2 管息理员能够在线查阅与网页相关的数据信息 3 管理员可以进行各板块的管理操作 4 管理员可通过此系统对书籍信息等行查询 查看 删除等操作 5 管理员可通过此系统对用户信息等进行查询 查看等操作 6 管理员可通过此系统对用户进行发送消息的操作 与用户进行沟通 7 管理员可进行强制的处理操作 8 此系统允许用户在线对卖家进行评价以及举报不良用户 管理员可 根据规定对不良用户进行处理等 3 2 功能分析功能分析 3 2 1 功能结构图功能结构图 功能结构图就是按照功能的从属关系画成的图表 图中的每一个框都称为 一个功能模块 功能模块可以根据具体情况分的大一点或小一点 分解得最小 功能模块可以是一个程序中的每个处理过程 而较大的功能模块则可能是完成 某一个任务的一组程序 通过对系统需求的分析 以及对要设计并实现的功能的分析 得到的系统 功能结构图如下图 3 1 所示 图图 3 1 系统功能结构图系统功能结构图 通过对系统后台的需求的分析 以及对要设计并实现后台的功能的分析 得到的后台功能结构图如下图 3 2 所示 图图 3 2 后台功能结构图后台功能结构图 3 2 2 后台功能分析后台功能分析 就开发一个新系统而言 首先要讨论的问题不是系统的界面要多么美观 而是要了解系统要满足什么要求 系统要实现什么功能以及开发此系统的目的 所以 为了开发出好的系统 必须先知道用户使用该系统的需求 通过详细的 研究 结合论文的研究方向以及预期目标 经过分析预计基于 Java 的二手图书 交易系统后台管理应该具备以下主要功能 1 登陆 系统管理员登陆系统 2 图书管理 对图书信息等行查询 删除 修改等操作 3 用户管理 对用户信息等进行查询等操作 4 求书管理 对用户需求的图书进行添加 修改等操作 5 发送消息 向用户发送消息 6 设定 对管理员自身信息的修改 3 3 用例分析用例分析 3 3 1 用例图用例图 用例 Use Case 是对系统的用户需求 主要是功能需求 的描述 用例 表达了系统的功能和所提供的需求情况 6 通过 Use Case 观察系统 能够将系 统实现与系统目标分开 有助于了解最重要的部分 满足用户要求和期望 而不会沉浸于实现细节 通过对系统的用户需求的分析 得到的系统总体用例图如下图 3 1 所示 上上 上上上 上上 上上 上上上上 上上上上 上上上上 上上上上 上上上上 上上 上上上上 上上 上上上上上上 上上 上上上上 图图 3 3 系统总体用例图系统总体用例图 通过对系统后台用户需求的分析 得到管理员用例图如下图 3 4 所示 上上上 上上 上上上上 上上上上 上上上上 上上上上 上上上上 上上上上上上 上上上上 上上上上 上上上上上上 上上上上上上 图图 3 4 管理员用例图管理员用例图 3 3 2 系统主要用例详细描述系统主要用例详细描述 1 登陆用例 表表 3 13 1 登陆用例表登陆用例表 用例名称登陆 参与者系统后台管理员 用例描述系统使用者登陆系统过程 基本操作流程1 登陆信息已给出 2 验证身份 3 点击登陆系统 2 查询图书用例 表表 3 23 2 查询图书用例表查询图书用例表 用例名称查询图书用例 参与者系统后台管理员 用例描述系统使用者对后台的图书库进行查询操 作 基本操作流程1 图书相关信息已给出 点击搜索 2 查询此书 3 查看此书的信息 3 删除图书用例 表表 3 33 3 删除图书用例表删除图书用例表 用例名称删除图书用例 参与者系统后台管理员 用例描述系统使用者对后台的图书库进行删除操 作 基本操作流程1 查看图书管理的所有图书的列表或 查询图书 2 根据实际情况是否此图书已经售空 等删除图书 4 查看图书信息用例 表表 3 43 4 修改图书信息用例表修改图书信息用例表 用例名称查看图书信息用例 参与者系统后台管理员 用例描述系统使用者对后台的图书库的信息进行 查看操作 基本操作流程1 点击压迫查看的图书 2 图书相关信息已给出 3 查看图书信息 根据实际情况查看 图书的基本信息 包括作者 出版社 图书的数量等 5 发送消息用例 表表 3 53 5 发送消息用例表发送消息用例表 用例名称发送消息用例 参与者系统后台管理员 用例描述系统使用者对前台用户进行发邮件操作 基本操作流程1 查找用户 2 用户邮箱已取得 3 编辑消息并发送邮件 3 4 可行性分析可行性分析 系统进行可行性研究的目的 就是用最小的代价在尽可能短的时间内确定 问题是否能够解决 1 下面是对二手图书交易系统后台管理的可行性分析 1 技术可行性 该系统的开发采用的技术都是当代的领先技术 由于该系 统后台数据较大 所以数据库采用 SQL Server 2005 作为后台数据存储管理 eclipse 的开发环境结合 struts2 标签是实现该系统的技术奠基 2 经济可行性 由于该系统的开发所应用的物理资源与人力资源并不多 所以系统的经济效益能够超过它的开发成本 3 操作可行性 鉴于 Web 系统的特点 为了方便用户操作 使用一些常见 的操作 使得系统操作简单 大大提高系统的效率 第第 4 章章 系统设计系统设计 4 1 系统总体结构设计系统总体结构设计 4 1 1 系统体系结构设计系统体系结构设计 使用模式最好的方式是 把模式装进脑子里 然后在你的设计和已有的 应用中饭 寻找何处可以使用它们 以往是代码复用 现在是经验复用 7 系统的体系结构设计是对整个系统的一个规划性设计 其对系统设计有着 很大的决定性因素 如下图 4 1 所示 WEB服务器端数据库服务器端 客户端 图图 4 14 1 系统体系结构图系统体系结构图 本系统结构为 Browser Server B S 与平常的三层体系结构类似 也同 样拥有系统页面呈现端 客户浏览器端 系统服务端 数据储存端 用户由浏览器端进入系统 WEB 服务器端相应请求向客户端发送数据 客 户端接收数据并在浏览器中刷新显示 用户的一部分操作将通过 DOM 向服务 器端发送请求 服务器响应请求并向数据库服务器端写入或者读取数据 将数 据再次发送给响应方 此时客户端浏览器局部刷新提出响应请求的部分而显示 为响应后得到的数据 WEB 服务端可与数据库服务端位于同一台机器上而逻辑 上将拆分为两个相互独立的虚拟终端 因本系统基于 AJAX DOM 技术使用较多 因而客户端显得略为 肥 一 些 这种略 肥 型随着计算机终端技术的发展已显得微不足道 但该系统并 不是 肥客户端 型 很多操作在客户端前端能够轻松进行但并不影响其安全 除了前段的基本校验外其后台也有一系列数据校验措施 在访问数据库端时有 一系列具备校验功能的存储过程将非法数据滤除在外 4 1 2 程序系统结构设计程序系统结构设计 关于系统类图 用于描述系统中所包含的类以及它们之间的相互关系 帮 助人们简化对系统的理解 它是系统分析和设计阶段的重要产物 也是系统编 码和测试的重要模型依据 系统类图如下图 4 2 所示 user index index register login user main user trade user buy user sale user change user update user want book user sale book use search save exit user id int password string 用用户户 send exit user id int m id int 信信息息 m index login m booklist m userlist m book m change m sale m send m delete user m delete user m search exit m id int m name string m sex string m password string user id int book id int 管管理理员员 searchbook book book id int book name string author string kind string public string 书书籍籍 look exit booklist 书书籍籍列列表表 look user id int user name string addr string tel int sex string photo string password string 个个人人资资料料 图图 4 2 系统类图系统类图 Web 应用程序设计应用程序设计 Web 应用程序的组织结构可以分为 5 个部分 Web 应用根目录下放置用于前端展现的 JSP 文件 action 文件夹内放置调用某个 java 类的某个方法进行数据预处理的类 bean 文件夹内放置处理的 javabean service 文件夹内放置处理请求相应的类 serviceImpl 文件夹放置处理数据持久化类 另外 在 src 下放置了数据库配置文件 struts xml 1 后台 JSP 文件 如表 4 1 所示 表表 4 14 1 JSPJSP 文件列表文件列表 文件名称功 能 login jsp登录页面 m index jsp管理员首页 管理员 m userlist jsp用户管理页面 管理员 m booklist jsp书籍管理页面 管理员 m book jsp书籍信息显示页面 管理员 m sale jsp卖书管理页面 管理员 出售的书籍列表 m send jsp发送信息页面 管理员 m change jsp修改密码页面 管理员 2 action 文件夹中包括的类 如表 4 2 所示 表表 4 24 2 actionaction 列表列表 文件名称功 能 BookManagerAction java图书管理处理类 LoginAction java登陆处理类 ManagerAction java管理员资料处理类 UserManagerAction java用户管理处理类 3 bean 文件夹中包括的类 如表 4 3 所示 表表 4 4 3 3 beanbean 列表列表 文件名称功 能 User java客户类 Book java图书类 Needbook java求书书籍类 Picture java图片类 4 service 文件夹中包括的类 如表 4 4 所示 表表 4 44 4 serviceservice 列表列表 文件名称功 能 UserManagerService java处理用户管理相关的类 BookManagerService java处理图书管理相关的类 LoginService java处理登陆的类 ManagerService java处理管理员相关功能类 5 serviceImpl 文件夹中包括的类 如表 4 4 所示 表表 4 54 5 serviceImplserviceImpl 列表列表 文件名称功 能 UserServiceImpl java处理用户管理相关数据的类 BookServiceImpl java处理图书管理相关数据的类 LoginServiceImpl java处理评价管理相关功能数据的类 ManagerServiceImpl java处理管理员功能数据类 4 2 数据库设计数据库设计 4 2 1 数据库设计原则数据库设计原则 数据库的设计应该以系统需求分析中对数据的需求描述为依据 遵循数据 库设计的基本原则 为后期的系统开发实现提供支持 8 在进行系统数据库设 计时一般应该遵循的基本原则主要如下 1 一致性 系统数据库设计要符合数据一致性原则 数据的一致性是指表示同一个客 观事物的数据 在同一时刻无论出现在何处都应该是一致的 正确的 在关系 型数据库中 事务执行的结果必须是使数据库从一个一致性状态转变到另一个 一致性状态 当事务完成时 必须使所有数据都具有一致的状态 由于数据库 面向整个系统 可以被多个应用程序和多个用户共享数据 因此 数据库设计 应该考虑各种破坏数据一致性的因素 并采取了一些相应的保护措施 2 规范化 系统的数据库设计应遵循规范化原则 规范化一般分为几个级别 1NF 2NF 3NF 4NF BCNF 规范化程度过低的关系 可能会存在插入 删 除异常 修改复杂 数据冗余等问题 需要转换成高级范式 但是并非规范化 程度越高越好 系统操作如果经常涉及执行多表之间的关联查询 将会降低系 统性能 同时也增加了程序的编程难度 因此 规范化应该根据实际情况需要 进行考虑 一般原则上要采用第三范式要求进行设计 3 完整性 数据库的完整性是指数据的正确性 主要是需要防止合法用户使用数据库 时向数据库加入不符合语义的数据 保护数据结构不受损害 防止错误数据输 入和输出 对输入到数据库中的数据要有预定义的规则约束 4 可伸缩性 数据库结构的设计应该在满足现有系统功能应用需求的基础上 充分考虑 业务发展的需要 移植的需要 满足可伸缩性 可扩展性和移植性等要求 5 可维护和管理 在进行数据库设计时 应该考虑易于对数据进行管理和维护 提高系统运行效 率 4 2 2 数据库表设计数据库表设计 1 用于定义系统管理员用户 管理员属性如表 4 7 所示 表表 4 64 6 managermanager 表表 列 名类 型是否允许空描 述 m idvarchar 10 否表示管理员 ID 是自动递增的主键 m namevarchar 32否表示管理员名称 m passwordvarchar 32 否表示管理员登录密码 m telvarchar 32 是表示管理员联系电话 m emailvarchar 32 是表示管理员电子邮件地址 2 用于定义系统用户 用户属性如表 4 7 所示 表表 4 74 7 useruser 表表 列 名类 型是否允许空描 述 user idint否表示用户 ID 是自动递增的主键 user namevarchar 32 否表示用户名称 passwordvarchar 32 否表示用户登录密码 telvarchar 32 否表示用户联系电话 Emailvarchar 32 否表示用户电子邮件地址 addrvarchar max 是表示用户地址 sexvarchar 10 否表示用户性别 picturevarchar max 是表示用户头像路径 3 用于定义图书 图书属性如表如表 4 8 所示 表表 4 84 8 bookbook 表表 列 名类 型是否允许空描 述 bnoint否表示书籍 ID 是自动递增的主键 bnamevarchar 32 否表示书籍名称 publishvarchar 32 是表示书籍出版社 publishtimevarchar 32 是表示出版时间 editorvarchar 32 是表示作者 pricevarchar 32 否表示书籍价格 revisionint是表示书籍版次 kindvarchar 32 否表示书籍种类 isbnvarchar 32 是表示书籍 isbn describevarchar max 是表示对书籍的描述 user idint否表示卖家 ID 外键 4 用于定义求书 图书属性如表如表 4 8 所示 表表 4 94 9 needbookneedbook 表表 列 名类 型是否允许空描 述 bnoint否表示书籍 ID 是自动递增的主键 bnamevarchar 32 否表示书籍名称 publishvarchar 32 是表示书籍出版社 editorvarchar 32 是表示作者 user idint否表示求书者 ID 外键 5 用于定义图片 图片属性如表如表 4 8 所示 表表 4 94 9 picturepicture 表表 列 名类 型是否允许空描 述 pnoint否表示图片 ID 是自动递增的主键 picturevarchar max 否表示图片路径 4 3 系统后台功能设计系统后台功能设计 4 3 1 后台功能后台功能 1 管理员登陆 A 功能 实现管理员登陆 B 输入项 登录页面输入用户名和密码 C 输出项 显示管理员管理界面信息 D 算法 管理员输入用户名和密码登陆进入管理员管理平台 E 流程逻辑如图 4 3 所示 图图 4 34 3 登陆时序图登陆时序图 2 用户管理 A 功能 实现注册用户的屏蔽和启用 查看与搜索 强制删除用户信息 B 输入项 点击管理员管理界面导航栏上的用户管理 进入用户管理界 面 点击相应操作进入相对应的页面 C 输出项 显示管理员管理界面信息 D 算法 管理员输入用户名和密码登陆进入管理员管理平台 E 流程逻辑 如图 4 4 所示 图图 4 44 4 用户管理时序图用户管理时序图 3 图书管理 A 功能 实现对用户上传的旧书的信息的查询 删除功能 B 输入项 点击管理员管理界面导航栏上的书籍管理 进入书籍管理界 面 C 输出项 显示新的结果页面 D 算法 点击书籍管理 展现所有书籍信息的数据 删除书籍时 销毁 此书籍信息 输入关键字 点击搜索 跳转页面显示书籍信息 E 流程逻辑 查询图书如图 4 5 所示 删除图书如图 4 6 所示 图图 4 54 5 查询图书时序图查询图书时序图 个 个 个 admin WebinterfaceStruts2actionServiceServiceimpDataAccess 1 个 个 个 个 个 个 个 个 个 个 2 个 个 个 个 3 个 个 个 个 4 个 个 个 个 5 个 个 个 个 6 getconnection 7 个 个 个 个 图图 4 64 6 删除图书时序图删除图书时序图 4 求书管理 A 功能 实现对管理员对用户上传需求的图书的管理功能 B 输入项 点击管理员管理界面导航栏上的求书管理 进入求书管理界 面 C 输出项 显示新的结果页面 D 算法 点击管理 展现所有需要书籍的数据 E 流程逻辑 查询如图 4 7 所示 图图 4 7 查询求书时序图查询求书时序图 5 发送消息 A 功能 实现对管理员向用户发送信息的功能 B 输入项 点击管理员管理界面导航栏上的发送消息 进入发送信息界 面 C 输出项 显示新的结果页面 D 算法 点击登录用户管理 展现所有登录用户的数据 点击发送时 发 送信息给相应的用户 E 流程逻辑 6 设定 修改信息 A 功能 实现对管理员修改个人信息的功能 B 输入项 点击管理员管理界面左侧上栏中的修改 进入修改界面 C 输出项 显示新的结果页面 D 算法 点击进入修改页面 展现部分管理员原有的数据 将修改的内 容填好 点击保存时 信息入库 保存成功 E 流程逻辑 设定如图 4 8 所示 图图 4 8 设定时序图设定时序图 个 个 user WebinterfaceStruts2ActionDataAccess 1 个 个 个 个 个 个 个 个 个1 2 个 个 个 个 3 个 个 个 个 4 个 个 个 个 个 第第 5 章章 系统实现系统实现 5 1 系统应用环境系统应用环境 所谓计算机网络 9 是指通过数据通信系统把地理上分散的自主计算机系 统连接起来 以达到数据通信和资源共享目的的一种计算机系统 为了保证我们的系统的稳定性以及良好的访问状态 系统的应用环境尽量 满足如下条件 5 1 1 系统运行的软件环境系统运行的软件环境 1 操作系统 Windows 2 数据库 SQL SERVER 2000 2005 或更高版本数据库服务器 3 程序语言工具包 JDK 1 5 以上版本 4 服务端 TOMCAT 5 0 以上版本服务器 5 2 页面设计的实现页面设计的实现 网页设计是艺术与技术的结合 从艺术的角度看 网页设计的本质是一种 平面设计 对于平面设计要考虑的两个基本问题就是布局和配色 10 以下是本系统后台的相关页面 1 用户选择角色登录 登录页面 login jsp 如图 5 1 所示 图图 5 15 1 登陆界面登陆界面 2 管理员输入正确的用户名与密码 用户名 hml 密码 123 验证成功后登 陆 进入管理主页 m index jsp 如图 5 2 所示 图图 5 25 2 管理主页管理主页 3 点击页面上方的导航条的用户管理 进入用户管理页面 m userlist jsp 如图 5 3 所示 图图 5 35 3 用户管理页面用户管理页面 4 点击会员操作下方的发邮件 进入发送信息页面 m send jsp 如图 5 4 所示 图图 5 45 4 发送信息页面发送信息页面 5 点击页面上方的导航条的书籍管理 进入图书管理页面 m booklist jsp 如图 5 5 所示 图图 5 55 5 图书管理页面图书管理页面 6 点击图书名称 进入图书信息页面 m book jsp 如图 5 6 所示 图图 5 65 6 图书信息页面图书信息页面 7 点击求书管理 进入求书管理页面 m need jsp 如图 5 7 所示 图图 5 75 7 求书管理页面求书管理页面 8 点击左侧设定 进入管理员修改页面 m change jsp 如图 5 8 所示 图图 5 85 8 修改界面修改界面 5 3 角色功能代码的实现角色功能代码的实现 5 3 1 数据库连接数据库连接 1 实现原理 由于系统对数据库的操作非常频繁 故设计一个好的与数据库打交道的接 口显得尤为重要 好的接口不仅能提高工作效率 同时也节省一些不必要的资 源 系统中专门设计一个 DbConnection java 用来为业务逻辑层提供操作数据库的方 法 包括建立连接 执行更新操作 执行查询操作 释放资源 在 DbConnection java 的构造函数中建立连接并创建语句 在业务逻辑层当 实例化一个 DbConnection java 时就已经建立连接 同时在业务逻辑层将释放资 源的方法放在捕捉异常的 finally 语句块中 这样不管出现什么异常 系统都会 释放掉不需要的资源 2 代码实现 DbConnection java 文件为使用 JDBC 操作数据库的一个 javabean 里面提 供了操作数据库的常用方法 详细代码实现如下 public class DbConnection private String driver com microsoft sqlserver jdbc SQLServerDriver private String url jdbc sqlserver localhost 1433 DatabaseName bs pubs 为你的数据库的 private String user sa private String password 123456 private Connection conn null private Statement stmt null private ResultSet rs null public DbConnection try Class forName driver catch ClassNotFoundException e TODO Auto generated catch block e printStackTrace TODO Auto generated constructor stub public ResultSet excuteQuery String sql try conn DriverManager getConnection url user password stmt conn createStatement rs stmt executeQuery sql catch SQLException e TODO Auto generated catch block e printStackTrace return rs public int excuteUpdate String sql int result 0 try conn DriverManager getConnection url user password stmt conn createStatement result stmt executeUpdate sql catch SQLException e TODO Auto generated catch block e printStackTrace return result public boolean closeRs boolean bl false if rs null try rs close bl true catch SQLException e TODO Auto generated catch block e printStackTrace else bl true return bl public boolean closeStmt boolean bl false if stmt null try stmt close bl true catch SQLException e TODO Auto generated catch block e printStackTrace else bl true return bl public boolean closeConn boolean bl false if conn null try conn close bl true catch SQLException e TODO Auto generated catch block e printStackTrace else bl true return bl 5 3 2 登录登录 管理员在登陆页面填写登陆信息 点击提交 由 jsp 页面通过标签将登陆信息传至服务器 代码如下 由 action 中代码 记住登陆的管理员信息 将信息放入 session 代码如下 HttpServletRequest request ServletActionContext getRequest HttpSession session request

温馨提示

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

评论

0/150

提交评论