毕设DW做网站的过程,wordpress 看不到图,网站建设 010,网站做视频摘 要 在信息飞速发展的今天#xff0c;网络已成为人们重要的信息交流平台。宠物网站每天都有大量的信息需要通过网络发布#xff0c;为此#xff0c;本人开发了一个基于B/S#xff08;浏览器/服务器#xff09;模式的宠物网站系统。 该系统以JJava编程语言、MySQL和SSM框… 摘 要 在信息飞速发展的今天网络已成为人们重要的信息交流平台。宠物网站每天都有大量的信息需要通过网络发布为此本人开发了一个基于B/S浏览器/服务器模式的宠物网站系统。 该系统以JJava编程语言、MySQL和SSM框架等为开发技术实现了添加、修改、查看、删除系统数据。本系统采取组件化的方式对系统进行拆分并对数据库中各个表的增删查改、表与表之间的约束关系进行分析与设计最终实现符合用户需求功能的商业级应用。 系统界面简洁大方布局合理易操作易上手。对应用户的每一步操作系统都能高响应地做出反馈。系统具体包含网站管理轮播图、公告信息人员管理管理员、系统用户内容管理论坛列表、论坛分类、资讯列表、资讯分类购物管理宠物商城、分类列表、订单列表模块管理领养中心、领养申请、分享中心、宠物类型个人管理等功能为宠物服务提供一个管理平台实现对数据地高效、安全地管理。 关键词宠物网站B/S模式Java编程语言MySQL Ssm pet website system Abstract With the rapid development of information today, the network has become an important information exchange platform for people. There are a lot of information to be published through the network on pet websites every day. For this reason, I developed a pet service platform based on B/S (browser/server) mode. The system uses JJava programming language, MySQL and SSM framework as development technologies to add, modify, view and delete system data. The system splits the system in a componentized way, analyzes and designs the addition, deletion, query and modification of each table in the database, and the constraint relationship between tables, and finally realizes the commercial application that meets the users needs. The system interface is simple and generous, with reasonable layout and easy operation. The system can respond to each operation of the user in a highly responsive manner. The system specifically includes website management (rotation chart, announcement information) personnel management (administrator, system user) content management (forum list, forum classification, information list, information classification) shopping management (pet mall, classification list, order list) module management (adoption center, adoption application, sharing center, pet type) personal management and other functions, providing a management platform for pet services, Realize efficient and safe management of data. Keywords: pet website, B/S mode, Java programming language, MySQL 目 录 第1章 绪论 1.1 研究背景与意义 1.2 开发现状 1.3 本文的组织结构 第2章 相关技术介绍 2.1 前后端分离 2.2 Java编程语言 2.3 JSP技术 2.4 B/S模式 2.5 MySQL简介 2.6 JDK简介 第3章 系统分析 3.1 可行性分析 3.1.1 法律可行性分析 3.1.2 技术可行性分析 3.1.3 经济可行性分析 3.2 功能需求分析 3.3 非功能需求分析 3.4 用例分析 3.5 业务流程分析 3.6 数据流程分析 第4章 系统设计 4.1 系统架构设计 4.2 系统功能结构 4.3 功能模块设计 4.4 数据库设计 4.4.1 E-R图 4.4.2 表结构设计 第5章 系统实现 5.1 开发工具 5.2 注册模块 5.3 登录/注销模块 5.4 用户模块 5.4.1 个人资料模块 5.4.2 评论模块 5.4.3 商品搜索模块 5.4.4 商品购买模块 5.4.5 领养申请模块 5.5 管理员模块 5.5.1 商品管理模块 5.5.2 领养中心管理模块 第6章 系统测试 6.1 测试概述 6.2 测试过程 6.2.1 登录测试 6.2.2 信息录入测试 6.2.3 信息更新测试 6.2.4 信息删除测试 6.3 测试结果 第7章 总结与展望 7.1 总结 7.2 展望 参考文献 致谢 绪论 研究背景与意义 近年来随着生活水平的不断提高与发展越来越多人喜欢在宠物领养管理系统查看宠物信息领养自己喜欢的宠物将自己喜欢的宠物商品收藏方便自己进行购买。宠物领养管理对用户和管理员都有很大帮助在线寻主寻宠管理通过和数据库管理系软件协作来实现用户与管理员之间的一个很好的操作平台基于这一点设计了一个宠物网站管理。 经过对以上的情况进行分析我们对用户的实际需求进行了详细的分析指定出了相应的开发计划为了方便用户在线进行查看宠物信息以及可以在线进行购买商品方面的管理操作帮助宠物管理员节省很多的管理时间以及可以减少工作量使得管理工作更加快捷顺利的进行因此开发设计了该系统。 随着计算机的不断发展已经融入到我们生活工作的每一个领域中给我们的生活工作带来了很多的便利因此希望可以通过该系统的开发也能使宠物管理实现信息化管理减轻人的负担提高工作效率计。 开发现状 与其他国家相比我国的软件产业相对落后在信息化建设方面起步也比较晚但是随着我国经济的不断发展以及网络技术的不断提高我国也在不断的进行软件行业的摸索也得到了一些成果我国的软件产业得到了快速的发展越来越多的软件系统出现在人们的视线中也逐渐改变着人们生活工作的方式。但是对于信息化的建设与很多发达国家相比由于信息化程度的落后以及经费的不足我国的宠物领养管理开发方面还是相对落后的因此要不断的努力探索争取开发出一个实用的信息化的宠物管理系统来实现宠物管理的信息化。因此本课题以宠物为例目的是开发一个实用的宠物领养管理系统。 宠物领养管理的开发运用java技术MIS的总体思想以及MYSQL、SSM等技术的支持下共同完成了该网站系统的开发实现了宠物管理的信息化用户可以有一个非常好的宠物体验管理员也可以通过该系统进行更加方便的管理操作实现了之前指定好的计划。 本文的组织结构 六个章节共同组成了本文研究及设计内容包括 第一章绪论。本文章的开头部分对本题目的研究背景和研究意义等一些做文字性的描述。 第二章相关技术介绍。主要介绍Java编程技术、JSP嵌入式脚本语言、B/S模式等。 第三章系统分析。包括系统总体需求描述、功能性角度分析系统需求、非功能性等各个方面分析系统是否可以实现。 第四章系统设计。本文章的重要部分提供了系统架构的详细设计和一些主要功能模块的设计说明。 第五章系统实现。将本系统分为前提的开发工具介绍和后期的功能代码实现。 第六章系统测试。系统完成后根据各个模块的测试用例才对各个模块进行功能测试。 相关技术介绍 前后端分离 Ajax的出现也带来了另外一个问题那就是有了Ajax以后之前用模板语言实现起来的功能变得简单之前模板语言实现不了的功能现在也能实现了。这样就造成越来越多的逻辑转移到了Javascript上使其变得越来越复杂。 随着JS复杂度的增长原来的开发模式出现了问题一个程序员搞定全站变得越来越不靠谱因此在这个时候就把网站开发这个职位划分成了前端和后端两个职位。但是只划分了前后端的职责范围还是远远不够的在原来的开发模式下前后端的代码也在一起的。现在既然已经分为前后端两波人在开发了维护同一套代码就变得不那么方便。项目越复杂出现你等我我等你的情况就会越来越多这样就拖慢了整体团队的节奏。所以为了团队的效率前后端的代码也要做分离。 前后端的分离方式分为部分分离和全部分离两种部分分离是只把脚本和样式分离出去而html模板还留在后端通过JSPVelocity或者Freemarker来渲染另一种就是完全分离脚本样式以及模板全都放在前端来维护。 部分分离已经很大程度上解决了前后端开发时的协调问题开发效率也得到了很大程度的提升。但也得承认这种方式也还是有问题的。当要开发html模板的时候就需要搭起一整套后端的开发环境或者是找后端程序员来协助。 而完全分离一般有两种方案第一种就是使用Velocity这种在Nodejs和Java下都可以编译的页面模板在开发时放到前端项目里但在发布时会把模板发布到后端的模板目录下这样开发时就做到了完全分离。这种方式最大的好处就是线上模板的渲染还是由Java来做的形成的是带有动态数据的Html比较有利于SEO。但这种方式下前端的开发环境和发布系统的复杂度都相对较高单纯的前端改动也还是要带着后端一起发布。 第二种完全分离的方式就是把纯静态的Html模板完全放在前端数据全部通过RESTful接口来进行交互。这样前后端就完全分开了脱离了后端的模板而这种方式的系统复杂度也会比第一种完全分离的方式低。但这种方案下所有的页面数据都是用JS渲染的没有动态模板不太利于SEO。这个不足我们可以通过做Server render或者给蜘蛛做一套定制页面来解决。 Java编程语言 Java采用函数或者过程来解析对于数据的操作但又把数据和函数之间相互分开这样并不利于维护并会增加程序的工作量。而面向对象的编程将程序的函数和函数对于数据的操作封装在一个类中作为一个整体来处理。所以Java语言是主要通过面向对象来实现编程并且摒除了C语言中的指针、多继承等比较难理解部分创造出了自身独有的单继承、多接口、高内聚、低耦合等特性[3] [4]。 JSP技术 JSP技术对动态Web页面的开发作用简直是举足轻重。可以很快的响应到客户端的发送请求。是甲骨文公司旗下的IT及互联网技术服务公司Sun Microsystems公司主导并创立的动态网页技术的标准。而且能依据请求内容动态地生成XML、HTML为用户的网络请求提供技术服务而且可以与服务器上的其它Java程序共同处理先对复杂的业务需求[5] [6]。 JSP主要优势如下: (1)一旦程序有一次成功的编写就能在多处运行起来。 (2)支持面特别广许多平台已经引入该技术。 B/S模式 计算机的系统软件主要分为两种:系统软件和应用软件。应用软件则是为了某个特定的应用而开发的一类软件比如文字处理软件Word、QQ、开发本软件用的myeclise工具等。而应用型软件大致的分为B/S和C/S两种模式常用的QQ、Office办公软件就是C/S结构的另外常见基于的B/S结构开发的有各种网站比如淘宝、企业的门户网站[7]。 B/S模式的优势有三个:第一是开发和业务扩展简单、只需要改变网页代码就可以达到想要的网页效果;第二学生的操作显浅易懂;第三具有分布性特定可以随时随地的进行查询、浏览等业务的处理。这是C/S所无法实现的。综上因素选择B/S模式来设计和实现本系统[8]。 MySQL简介 MySQL是一个开放的、快速的、多线程的SQL关系型数据库服务器。由于其体积小、免费、运行速度快以及可以通过相关免费的软件来对MySql数据库中的相关数据结构信息等等优点。受广大中等、小型企业所喜爱并占据了很大地位。本系统在数据库方面选用MySQL并通过Nacivat来进行MySql数据库的管理。在Mysql的安装过程中最需要注意的就是数据库的编码问题所以在安装数据库时需要设置数据库的编码为Utf-8与前台页面和服务器的编码相一致[13]。 JDK简介 JDK是用于开发Java的可以用来开发网站、企业级开发、电子商务等等各个方向的软件其中与Java语言相结合开发的工具中使用的最多、最广泛以及最开源的是MyEclipse所以本系统选用的开发工具之一就是MyEclipse。Java中所有需要使用到的类都存在JDK安装目录下的对应版本的src目录下[14]。 系统分析 可行性分析 法律可行性分析 开发软件有没有触犯法律这涉及到软件或者系统能不能发布的问题。如果触犯了法律就必将会受到法律的制裁。常见法律问题就是软件抄袭问题若是抄袭别人软件将会受到严厉惩罚。 技术可行性分析 软件产业经过多年的发展现在已经达到了很大的规模从事软件开发的专业人员不计其数软件产业的重要性已经上升到了影响和推动国民经济发展的核心地位。本系统基于的架构目前技术已经非常的成熟是不存在技术上面难以实现的麻烦。 经济可行性分析 开发软件所需的时间、人力和物力成本开发完成后的收益如何从投资回报的角度软件所需功能在现有经济条件能不能实现等进行深入的考虑都符合实际的要求。所以宠物网站系统具有经济可行性和实用性可以节约管理成本 功能需求分析 宠物网站系统主要是为了管理和控制宠物服务的管理情况对网站管理轮播图、公告信息人员管理管理员、系统用户内容管理论坛列表、论坛分类、资讯列表、资讯分类购物管理宠物商城、分类列表、订单列表模块管理领养中心、领养申请、分享中心、宠物类型个人管理提供了方便的机制。本系统有多类使用者分别是管理员和普通用户。以下是从这两种用户的角度分别介绍本系统所要实现的功能。 普通用户 注册首先检查用户名和邮箱是否存在如果都不存在才能进行注册并将用户输入的密码进行MD5加密注册成功后提示注册成功并将用户信息保存到数据库中。 登录使用系统前提是需要登录账号。 评价在商品的基础上发表对商品的评价评价按时间形成评价列表。 收藏在商品的基础上对商品的收藏收藏按时间形成收藏列表个人对其收藏夹进行维护和整理。 商品搜索和浏览商品展示功能模块主要包括商品搜索、查看商品详情功能。未注册用户游客和已注册用户均可以在首页进行商品搜索及查看商品详情。具体功能需求如下1商品搜索前台用户可以在前台输入关键词进行搜索搜索成功后返回该商品的动态排序列表且能够进行分页展示。 2查看商品详情用户可点击对应商品从而查看该商品的商品详情。 商品购买商品已存在的前提下提供商品的购买功能商品购买成功后可以查看到个人已有的商品购买列表。 宠物领养申请用户可提交申请领养宠物并可查看领养宠物。 管理员 用户管理1新增用户,用于创建新用户。管理员在页面上选择新增用户,输入用户所需的信息后保存。2查找用户信息,可根据条件查找用户。管理员第一次点击用户列表时,默认用户列表显示出全部的用户,可以根据用户姓名和出生年月进行模糊搜索,系统将查询到的用户显示到用户列表。如果不加限制、直接点击搜索按钮,则查询出全部的用户。3删除用户,用于删除已有用户。在用户列表显示出用户后,选择用户进行删除。在确定删除之后,该条记录将从数据库中删除,并提示删除成功,确认后列表会重新刷新。4修改用户信息,在用户列表显示出用户后,选择用户进行编辑。表单将出现已有用户信息,用户可以对已有信息进行确认更改。更改完成后选择确认,列表会重新刷新。 商品管理 1商品列表展示所有商品信息形成的列表样式。 2商品搜索通过商品名、商品类目来搜索商品。 3图片上传给商品添加商品图片。 4增加商品 5更新商品更新商品的信息如商品编号、商品名称、商品类别、价格、库存、图片等。 6商品上下架 宠物服务管理 1新增宠物领养信息 2删除宠物服务 3更新宠物宠物领养 购买订单管理 1按购买订单编号查询购买订单 2查看购买订单详情 非功能需求分析 系统非功能需求有非常多比如性能需求、可承载最大用户数、稳定性、易用性需求等。本系统分析时考虑到易用性需求因为系统是给人使用的所以必须充分从用户的角度出发考虑用户体验使系统易理解易上手易操作。 用例分析 1.普通用户主要使用系统的商品购买和宠物服务下单业务下图所示为普通用户的用例图。 图3-1 普通用户用例图 2.管理员主要负责网站管理轮播图、公告信息人员管理管理员、系统用户内容管理论坛列表、论坛分类、资讯列表、资讯分类购物管理宠物商城、分类列表、订单列表模块管理领养中心、领养申请、分享中心、宠物类型个人管理下图所示描述管理员的用例图。 图3-2 管理员用例图 业务流程分析 系统业务流程图如下所示。 图3-3 系统业务流程图 业务流程图(TFD)通过一些特定的符号描述业务的处理过程它重点强调业务过程中每一项处理活动和具体业务部门的关系选择部分模块进行具体描述。重点对本系统整体业务中最为主要的商品交易及订单业务进行描述用户进入宠物网站系统后进行各种模块信息的浏览选择想要购买的商品添加到购买订单对宠物服务下单用户确认购买、填写订单信息另外管理人员进入后端管理以执行该订单信息控制模块的相关管理方法并在解决后向客户提供反馈机制。 数据流程分析 如下为系统的顶层数据流图外部实体有用户和管理员分别对系统输入数据从而得到要输出的数据。 图3-4系统顶层数据流图 如下图所示为系统底层数据流图。 图3-5系统底层数据流图 宠物网站系统底层数据流图主要描述系统底层模块的数据流、数据载体、数据处理、外部实体的具体交互。本系统就是管理员和普通用户在首页、宠物论坛、公告信息、宠物资讯、宠物商城、领养中心、分享中心等模块上的数据交互。 系统设计 系统架构设计 本系统采用MVC结构结构包括了View、Controller、Service、ServiceImpl、Dao等模块。系统架构图如下图所示。 图4-1系统架构图 根据本系统需求分析应为系统搭建多个包分别为Controller、Service、ServiceImpl、Dao、Entity、Util。 现对上述的包进行简要的功能阐述Controller层负责接收前台传来的请求并对取到的数据进行封装。Service层主要负责处理业务逻辑。Dao层负责数据库方面的交互。Entity包放置实体类对应数据库里面一张张的表。Util包放置工具类比如以json数据的格式返回前台的JSONUtil类自动生成id的GenerateID类等。通过applicationContext.xmlapplicationContext-dataSource.xmlweb.xml这三个配置文件来搭建本系统。 首先配置applicationContext.xml主要是自动扫描控制器视图模式注解的启动。 applicationContext.xml是springMVC的一些相关配置数据。 系统功能结构 为了将系统从“做什么”落实到“怎么做”基于系统设计原则对系统功能进行更适合编码实现的功能划分。根据上图的系统架构设计整理出规范的系统功能结构图为系统的实现编码做好准备。 如下图所示为系统功能结构图。 图4-2系统功能结构图 功能模块设计 用户管理针对所有用户和管理员。未注册用户点击注册进入注册页面填写新用户信息得到自定义生成账号后注册完成。未注册用户注册的活动图如下图所示。 图4-3未注册用户注册活动图 用户可进行登录使用更多功能首先进入用户登录界面输入用户账号和密码后台对账号和密码信息进行核对验证验证成功则页面直接显示登录用户昵称代表登录成功否则返回用户登录界面。用户登录活动图如下图。 图4-4用户登录活动图 用户登录后进入功能页面可对自己的信息进行管理包括首页、宠物论坛、公告信息、宠物资讯、宠物商城、领养中心、分享中心。用户使用功能活动图如下图所示。 图4-5用户使用功能活动图 用户功能界面可对自己的密码进行修改。进入修改密码界面后核对当前密码核对成功后填写新密码。修改密码活动图如下图所示。 图4-6修改密码活动图 数据库设计 宠物网站系统采用的数据库是MySQL该部分将根据系统需求和设计设计合理的数据库。本系统考虑到之后系统的扩展集群数据库将不使用外键。此外不用外键时数据管理也较为简单操作更加方便性能更高。 E-R图 E-R图更加直观的告诉开发人员系统的各个数据的属性各个数据之间的联系各个数据的类型。能通过该模型更直观地了解数据库的设计并根据对其逐渐改善。 本系统图设计如下图所示。 图4-7系统E-R图 表结构设计 本系统根据第三范式的思想设计数据库减少最大程度的冗余总共建立有多个表用户表、管理员表、商品表、购买表、宠物领养表、评论表。 表结构如下所示。 表access_token (登陆访问时长) 编号 名称 数据类型 长度 小数位 允许空值 主键 默认值 说明 1 token_id int 10 0 N Y 临时访问牌ID 2 token varchar 64 0 Y N 临时访问牌 3 info text 65535 0 Y N 4 maxage int 10 0 N N 2 最大寿命默认2小时 5 create_time timestamp 19 0 N N CURRENT_TIMESTAMP 创建时间 6 update_time timestamp 19 0 N N CURRENT_TIMESTAMP 更新时间 7 user_id int 10 0 N N 0 用户编号: 表address (收货地址) 编号 名称 数据类型 长度 小数位 允许空值 主键 默认值 说明 1 address_id int 10 0 N Y 收货地址 2 name varchar 32 0 Y N 姓名 3 phone varchar 13 0 Y N 手机 4 postcode varchar 8 0 Y N 邮编 5 address varchar 255 0 N N 地址 6 user_id mediumint 8 0 N N 用户ID[0,8388607]用户获取其他与用户相关的数据 7 create_time timestamp 19 0 N N CURRENT_TIMESTAMP 创建时间 8 update_time timestamp 19 0 N N CURRENT_TIMESTAMP 更新时间 9 default bit 1 0 N N 0 默认判断 表adoption_application (领养申请) 编号 名称 数据类型 长度 小数位 允许空值 主键 默认值 说明 1 adoption_application_id int 10 0 N Y 领养申请ID 2 application_no varchar 64 0 Y N 申请编号 3 pet_number varchar 64 0 Y N 宠物编号 4 pet_name varchar 64 0 Y N 宠物名称 5 type_of_pet varchar 64 0 Y N 宠物类型 6 pet_age varchar 64 0 Y N 宠物年龄 7 sex_of_pet varchar 64 0 Y N 宠物性别 8 adoption_agreement varchar 255 0 Y N 领养协议 9 application_user int 10 0 Y N 0 申请用户 10 reason_for_adoption text 65535 0 Y N 领养理由 11 examine_state varchar 16 0 N N 未审核 审核状态 12 examine_reply varchar 16 0 Y N 审核回复 13 recommend int 10 0 N N 0 智能推荐 14 user_id int 10 0 N N 0 用户ID 15 create_time datetime 19 0 N N CURRENT_TIMESTAMP 创建时间 16 update_time timestamp 19 0 N N CURRENT_TIMESTAMP 更新时间 表adoption_center (领养中心) 编号 名称 数据类型 长度 小数位 允许空值 主键 默认值 说明 1 adoption_center_id int 10 0 N Y 领养中心ID 2 pet_number varchar 64 0 Y N 宠物编号 3 cover varchar 255 0 Y N 封面 4 pet_name varchar 64 0 Y N 宠物名称 5 type_of_pet varchar 64 0 Y N 宠物类型 6 pet_age varchar 64 0 Y N 宠物年龄 7 sex_of_pet varchar 64 0 Y N 宠物性别 8 adoption_agreement varchar 255 0 Y N 领养协议 9 relevant_information longtext 2147483647 0 Y N 相关信息 10 praise_len int 10 0 N N 0 点赞数 11 recommend int 10 0 N N 0 智能推荐 12 limit_times int 10 0 N N 0 限制次数 13 limit_type tinyint 4 0 N N 2 限制次数类型1-每天次2-总计次 14 create_time datetime 19 0 N N CURRENT_TIMESTAMP 创建时间 15 update_time timestamp 19 0 N N CURRENT_TIMESTAMP 更新时间 表article (文章用于内容管理系统的文章) 编号 名称 数据类型 长度 小数位 允许空值 主键 默认值 说明 1 article_id mediumint 8 0 N Y 文章id[0,8388607] 2 title varchar 125 0 N Y 标题[0,125]用于文章和html的title标签中 3 type varchar 64 0 N N 0 文章分类[0,1000]用来搜索指定类型的文章 4 hits int 10 0 N N 0 点击数[0,1000000000]访问这篇文章的人次 5 praise_len int 10 0 N N 0 点赞数 6 create_time timestamp 19 0 N N CURRENT_TIMESTAMP 创建时间 7 update_time timestamp 19 0 N N CURRENT_TIMESTAMP 更新时间 8 source varchar 255 0 Y N 来源[0,255]文章的出处 9 url varchar 255 0 Y N 来源地址[0,255]用于跳转到发布该文章的网站 10 tag varchar 255 0 Y N 标签[0,255]用于标注文章所属相关内容多个标签用空格隔开 11 content longtext 2147483647 0 Y N 正文文章的主体内容 12 img varchar 255 0 Y N 封面图 13 description text 65535 0 Y N 文章描述 表article_type (文章分类) 编号 名称 数据类型 长度 小数位 允许空值 主键 默认值 说明 1 type_id smallint 5 0 N Y 分类ID[0,10000] 2 display smallint 5 0 N N 100 显示顺序[0,1000]决定分类显示的先后顺序 3 name varchar 16 0 N N 分类名称[2,16] 4 father_id smallint 5 0 N N 0 上级分类ID[0,32767] 5 description varchar 255 0 Y N 描述[0,255]描述该分类的作用 6 icon text 65535 0 Y N 分类图标 7 url varchar 255 0 Y N 外链地址[0,255]如果该分类是跳转到其他网站的情况下就在该URL上设置 8 create_time timestamp 19 0 N N CURRENT_TIMESTAMP 创建时间 9 update_time timestamp 19 0 N N CURRENT_TIMESTAMP 更新时间 表auth (用户权限管理) 编号 名称 数据类型 长度 小数位 允许空值 主键 默认值 说明 1 auth_id int 10 0 N Y 授权ID 2 user_group varchar 64 0 Y N 用户组 3 mod_name varchar 64 0 Y N 模块名 4 table_name varchar 64 0 Y N 表名 5 page_title varchar 255 0 Y N 页面标题 6 path varchar 255 0 Y N 路由路径 7 position varchar 32 0 Y N 位置 8 mode varchar 32 0 N N _blank 跳转方式 9 add tinyint 3 0 N N 1 是否可增加 10 del tinyint 3 0 N N 1 是否可删除 11 set tinyint 3 0 N N 1 是否可修改 12 get tinyint 3 0 N N 1 是否可查看 13 field_add text 65535 0 Y N 添加字段 14 field_set text 65535 0 Y N 修改字段 15 field_get text 65535 0 Y N 查询字段 16 table_nav_name varchar 500 0 Y N 跨表导航名称 17 table_nav varchar 500 0 Y N 跨表导航 18 option text 65535 0 Y N 配置 19 create_time timestamp 19 0 N N CURRENT_TIMESTAMP 创建时间 20 update_time timestamp 19 0 N N CURRENT_TIMESTAMP 更新时间 表cart (购物车) 编号 名称 数据类型 长度 小数位 允许空值 主键 默认值 说明 1 cart_id int 10 0 N Y 购物车ID 2 title varchar 64 0 Y N 标题 3 img varchar 255 0 N N 0 图片 4 user_id int 10 0 N N 0 用户ID 5 create_time timestamp 19 0 N N CURRENT_TIMESTAMP 创建时间 6 update_time timestamp 19 0 N N CURRENT_TIMESTAMP 更新时间 7 state int 10 0 N N 0 状态使用中已失效 8 price double 9 2 N N 0.00 单价 9 price_ago double 9 2 N N 0.00 原价 10 price_count double 11 2 N N 0.00 总价 11 num int 10 0 N N 1 数量 12 goods_id mediumint 8 0 N N 商品id[0,8388607] 13 type varchar 64 0 N N 未分类 商品分类 14 description varchar 255 0 Y N 描述[0,255]用于产品规格描述 表collect (收藏) 编号 名称 数据类型 长度 小数位 允许空值 主键 默认值 说明 1 collect_id int 10 0 N Y 收藏ID 2 user_id int 10 0 N N 0 收藏人ID 3 source_table varchar 255 0 Y N 来源表 4 source_field varchar 255 0 Y N 来源字段 5 source_id int 10 0 N N 0 来源ID 6 title varchar 255 0 Y N 标题 7 img varchar 255 0 Y N 封面 8 create_time timestamp 19 0 N N CURRENT_TIMESTAMP 创建时间 9 update_time timestamp 19 0 N N CURRENT_TIMESTAMP 更新时间 表comment (评论) 编号 名称 数据类型 长度 小数位 允许空值 主键 默认值 说明 1 comment_id int 10 0 N Y 评论ID 2 user_id int 10 0 N N 0 评论人ID 3 reply_to_id int 10 0 N N 0 回复评论ID空为0 4 content longtext 2147483647 0 Y N 内容 5 nickname varchar 255 0 Y N 昵称 6 avatar varchar 255 0 Y N 头像地址[0,255] 7 create_time timestamp 19 0 N N CURRENT_TIMESTAMP 创建时间 8 update_time timestamp 19 0 N N CURRENT_TIMESTAMP 更新时间 9 source_table varchar 255 0 Y N 来源表 10 source_field varchar 255 0 Y N 来源字段 11 source_id int 10 0 N N 0 来源ID 表forum (论坛) 编号 名称 数据类型 长度 小数位 允许空值 主键 默认值 说明 1 forum_id mediumint 8 0 N Y 论坛id 2 display smallint 5 0 N N 100 排序 3 user_id mediumint 8 0 N N 0 用户ID 4 nickname varchar 16 0 Y N 昵称[0,16] 5 praise_len int 10 0 Y N 0 点赞数 6 hits int 10 0 N N 0 访问数 7 title varchar 125 0 N N 标题 8 keywords varchar 125 0 Y N 关键词 9 description varchar 255 0 Y N 描述 10 url varchar 255 0 Y N 来源地址 11 tag varchar 255 0 Y N 标签 12 img text 65535 0 Y N 封面图 13 content longtext 2147483647 0 Y N 正文 14 create_time timestamp 19 0 N N CURRENT_TIMESTAMP 创建时间 15 update_time timestamp 19 0 N N CURRENT_TIMESTAMP 更新时间 16 avatar varchar 255 0 Y N 发帖人头像 17 type varchar 64 0 N N 0 论坛分类[0,1000]用来搜索指定类型的论坛帖 表forum_type (论坛分类) 编号 名称 数据类型 长度 小数位 允许空值 主键 默认值 说明 1 type_id smallint 5 0 N Y 分类ID[0,10000] 2 name varchar 16 0 N N 分类名称[2,16] 3 description varchar 255 0 Y N 描述[0,255]描述该分类的作用 4 url varchar 255 0 Y N 外链地址[0,255]如果该分类是跳转到其他网站的情况下就在该URL上设置 5 father_id smallint 5 0 N N 0 上级分类ID[0,32767] 6 icon varchar 255 0 Y N 分类图标 7 create_time timestamp 19 0 N N CURRENT_TIMESTAMP 创建时间 8 update_time timestamp 19 0 N N CURRENT_TIMESTAMP 更新时间 表goods (商品信息) 编号 名称 数据类型 长度 小数位 允许空值 主键 默认值 说明 1 goods_id mediumint 8 0 N Y 产品id[0,8388607] 2 title varchar 125 0 Y N 标题[0,125]用于产品和html的title标签中 3 img text 65535 0 Y N 封面图用于显示于产品列表页 4 description varchar 255 0 Y N 描述[0,255]用于产品规格描述 5 price_ago double 8 2 N N 0.00 原价[1] 6 price double 8 2 N N 0.00 卖价[1] 7 sales int 10 0 N N 0 销量[0,1000000000] 8 inventory int 10 0 N N 0 商品库存 9 type varchar 64 0 N N 商品分类 10 hits int 10 0 N N 0 点击量[0,1000000000]访问这篇产品的人次 11 content longtext 2147483647 0 Y N 正文产品的主体内容 12 img_1 text 65535 0 Y N 主图1 13 img_2 text 65535 0 Y N 主图2 14 img_3 text 65535 0 Y N 主图3 15 img_4 text 65535 0 Y N 主图4 16 img_5 text 65535 0 Y N 主图5 17 create_time timestamp 19 0 N N CURRENT_TIMESTAMP 创建时间 18 update_time timestamp 19 0 N N CURRENT_TIMESTAMP 更新时间 19 customize_field text 65535 0 Y N 自定义字段 20 source_table varchar 255 0 Y N 来源表 21 source_field varchar 255 0 Y N 来源字段 22 source_id int 10 0 N N 0 来源ID 23 user_id int 10 0 Y N 0 添加人 表goods_type (商品类型) 编号 名称 数据类型 长度 小数位 允许空值 主键 默认值 说明 1 type_id int 10 0 N Y 商品分类ID 2 father_id smallint 5 0 N N 0 上级分类ID[0,32767] 3 name varchar 255 0 Y N 商品名称 4 desc varchar 255 0 Y N 描述 5 icon varchar 255 0 Y N 图标 6 source_table varchar 255 0 Y N 来源表 7 source_field varchar 255 0 Y N 来源字段 8 create_time timestamp 19 0 N N CURRENT_TIMESTAMP 创建时间 9 update_time timestamp 19 0 N N CURRENT_TIMESTAMP 更新时间 表hits (用户点击) 编号 名称 数据类型 长度 小数位 允许空值 主键 默认值 说明 1 hits_id int 10 0 N Y 点赞ID 2 user_id int 10 0 N N 0 点赞人 3 create_time timestamp 19 0 N N CURRENT_TIMESTAMP 创建时间 4 update_time timestamp 19 0 N N CURRENT_TIMESTAMP 更新时间 5 source_table varchar 255 0 Y N 来源表 6 source_field varchar 255 0 Y N 来源字段 7 source_id int 10 0 N N 0 来源ID 表notice (公告) 编号 名称 数据类型 长度 小数位 允许空值 主键 默认值 说明 1 notice_id mediumint 8 0 N Y 公告id 2 title varchar 125 0 N N 标题 3 content longtext 2147483647 0 Y N 正文 4 create_time timestamp 19 0 N N CURRENT_TIMESTAMP 创建时间 5 update_time timestamp 19 0 N N CURRENT_TIMESTAMP 更新时间 表order (订单) 编号 名称 数据类型 长度 小数位 允许空值 主键 默认值 说明 1 order_id int 10 0 N Y 订单ID 2 order_number varchar 64 0 Y N 订单号 3 goods_id mediumint 8 0 N N 商品id[0,8388607] 4 title varchar 32 0 Y N 商品标题 5 img varchar 255 0 Y N 商品图片 6 price double 10 2 N N 0.00 价格 7 price_ago double 10 2 N N 0.00 原价 8 num int 10 0 N N 1 数量 9 price_count double 8 2 N N 0.00 总价 10 norms varchar 255 0 Y N 规格 11 type varchar 64 0 N N 未分类 商品分类 12 contact_name varchar 32 0 Y N 联系人姓名 13 contact_email varchar 125 0 Y N 联系人邮箱 14 contact_phone varchar 11 0 Y N 联系人手机 15 contact_address varchar 255 0 Y N 收件地址 16 postal_code varchar 9 0 Y N 邮政编码 17 user_id int 10 0 N N 0 买家ID 18 merchant_id mediumint 8 0 N N 0 商家ID 19 create_time timestamp 19 0 N N CURRENT_TIMESTAMP 创建时间 20 update_time timestamp 19 0 N N CURRENT_TIMESTAMP 更新时间 21 description varchar 255 0 Y N 描述[0,255]用于产品规格描述 22 state varchar 16 0 N N 待付款 订单状态待付款待发货待签收已签收待退款已退款已拒绝已完成 表pet_mall (宠物商城) 编号 名称 数据类型 长度 小数位 允许空值 主键 默认值 说明 1 pet_mall_id int 10 0 N Y 宠物商城ID 2 commodity_specification varchar 64 0 Y N 商品规格 3 commodity_manufacturer varchar 64 0 Y N 商品厂家 4 recommend int 10 0 N N 0 智能推荐 5 cart_title varchar 125 0 Y N 标题[0,125]用于产品html的标签中 6 cart_img text 65535 0 Y N 封面图用于显示于产品列表页 7 cart_description varchar 255 0 Y N 描述[0,255]用于产品规格描述 8 cart_price_ago double 8 2 N N 0.00 原价[1] 9 cart_price double 8 2 N N 0.00 卖价[1] 10 cart_inventory int 10 0 N N 0 商品库存 11 cart_type varchar 64 0 N N 未分类 商品分类 12 cart_content longtext 2147483647 0 Y N 正文产品的主体内容 13 cart_img_1 text 65535 0 Y N 主图1 14 cart_img_2 text 65535 0 Y N 主图2 15 cart_img_3 text 65535 0 Y N 主图3 16 cart_img_4 text 65535 0 Y N 主图4 17 cart_img_5 text 65535 0 Y N 主图5 18 create_time datetime 19 0 N N CURRENT_TIMESTAMP 创建时间 19 update_time timestamp 19 0 N N CURRENT_TIMESTAMP 更新时间 表praise (点赞) 编号 名称 数据类型 长度 小数位 允许空值 主键 默认值 说明 1 praise_id int 10 0 N Y 点赞ID 2 user_id int 10 0 N N 0 点赞人 3 create_time timestamp 19 0 N N CURRENT_TIMESTAMP 创建时间 4 update_time timestamp 19 0 N N CURRENT_TIMESTAMP 更新时间 5 source_table varchar 255 0 Y N 来源表 6 source_field varchar 255 0 Y N 来源字段 7 source_id int 10 0 N N 0 来源ID 8 status bit 1 0 N N 1 点赞状态:1为点赞0已取消 表sharing_center (分享中心) 编号 名称 数据类型 长度 小数位 允许空值 主键 默认值 说明 1 sharing_center_id int 10 0 N Y 分享中心ID 2 pet_name varchar 64 0 Y N 宠物名称 3 type_of_pet varchar 64 0 Y N 宠物类型 4 cover varchar 255 0 Y N 封面 5 pet_label varchar 64 0 Y N 宠物标签 6 introduction_to_pets text 65535 0 Y N 宠物介绍 7 pet_video varchar 255 0 Y N 宠物视频 8 system_user int 10 0 Y N 0 系统用户 9 details longtext 2147483647 0 Y N 详情内容 10 praise_len int 10 0 N N 0 点赞数 11 examine_state varchar 16 0 N N 未审核 审核状态 12 recommend int 10 0 N N 0 智能推荐 13 create_time datetime 19 0 N N CURRENT_TIMESTAMP 创建时间 14 update_time timestamp 19 0 N N CURRENT_TIMESTAMP 更新时间 表slides (轮播图) 编号 名称 数据类型 长度 小数位 允许空值 主键 默认值 说明 1 slides_id int 10 0 N Y 轮播图ID 2 title varchar 64 0 Y N 标题 3 content varchar 255 0 Y N 内容 4 url varchar 255 0 Y N 链接 5 img varchar 255 0 Y N 轮播图 6 hits int 10 0 N N 0 点击量 7 create_time timestamp 19 0 N N CURRENT_TIMESTAMP 创建时间 8 update_time timestamp 19 0 N N CURRENT_TIMESTAMP 更新时间 表system_user (系统用户) 编号 名称 数据类型 长度 小数位 允许空值 主键 默认值 说明 1 system_user_id int 10 0 N Y 系统用户ID 2 user_name varchar 64 0 Y N 用户姓名 3 gender varchar 64 0 Y N 性别 4 examine_state varchar 16 0 N N 已通过 审核状态 5 recommend int 10 0 N N 0 智能推荐 6 user_id int 10 0 N N 0 用户ID 7 create_time datetime 19 0 N N CURRENT_TIMESTAMP 创建时间 8 update_time timestamp 19 0 N N CURRENT_TIMESTAMP 更新时间 表type_of_pet (宠物类型) 编号 名称 数据类型 长度 小数位 允许空值 主键 默认值 说明 1 type_of_pet_id int 10 0 N Y 宠物类型ID 2 type_of_pet varchar 64 0 Y N 宠物类型 3 recommend int 10 0 N N 0 智能推荐 4 create_time datetime 19 0 N N CURRENT_TIMESTAMP 创建时间 5 update_time timestamp 19 0 N N CURRENT_TIMESTAMP 更新时间 表upload (文件上传) 编号 名称 数据类型 长度 小数位 允许空值 主键 默认值 说明 1 upload_id int 10 0 N Y 上传ID 2 name varchar 64 0 Y N 文件名 3 path varchar 255 0 Y N 访问路径 4 file varchar 255 0 Y N 文件路径 5 display varchar 255 0 Y N 显示顺序 6 father_id int 10 0 Y N 0 父级ID 7 dir varchar 255 0 Y N 文件夹 8 type varchar 32 0 Y N 文件类型 表user (用户账户用于保存用户登录信息) 编号 名称 数据类型 长度 小数位 允许空值 主键 默认值 说明 1 user_id mediumint 8 0 N Y 用户ID[0,8388607]用户获取其他与用户相关的数据 2 state smallint 5 0 N N 1 账户状态[0,10](1可用|2异常|3已冻结|4已注销) 3 user_group varchar 32 0 Y N 所在用户组[0,32767]决定用户身份和权限 4 login_time timestamp 19 0 N N CURRENT_TIMESTAMP 上次登录时间 5 phone varchar 11 0 Y N 手机号码[0,11]用户的手机号码用于找回密码时或登录时 6 phone_state smallint 5 0 N N 0 手机认证[0,1](0未认证|1审核中|2已认证) 7 username varchar 16 0 N N 用户名[0,16]用户登录时所用的账户名称 8 nickname varchar 16 0 Y N 昵称[0,16] 9 password varchar 64 0 N N 密码[0,32]用户登录所需的密码由6-16位数字或英文组成 10 email varchar 64 0 Y N 邮箱[0,64]用户的邮箱用于找回密码时或登录时 11 email_state smallint 5 0 N N 0 邮箱认证[0,1](0未认证|1审核中|2已认证) 12 avatar varchar 255 0 Y N 头像地址[0,255] 13 create_time timestamp 19 0 N N CURRENT_TIMESTAMP 创建时间 表user_group (用户组用于用户前端身份和鉴权) 编号 名称 数据类型 长度 小数位 允许空值 主键 默认值 说明 1 group_id mediumint 8 0 N Y 用户组ID[0,8388607] 2 display smallint 5 0 N N 100 显示顺序[0,1000] 3 name varchar 16 0 N N 名称[0,16] 4 description varchar 255 0 Y N 描述[0,255]描述该用户组的特点或权限范围 5 source_table varchar 255 0 Y N 来源表 6 source_field varchar 255 0 Y N 来源字段 7 source_id int 10 0 N N 0 来源ID 8 register smallint 5 0 Y N 0 注册位置: 9 create_time timestamp 19 0 N N CURRENT_TIMESTAMP 创建时间 10 update_time timestamp 19 0 N N CURRENT_TIMESTAMP 更新时间 系统实现 开发工具 系统中应用的开发工具总结如下表所示。 表5-1开发工具 名称 工具 版本 操作系统 IDE(Integrated Development Environment) Windows Eclipse 7/8/10 2017 服务器 Tomcat 9.10.7 JDK(Java Development Kit) JDK Java SE 8.0 (1.8.0) 数据库 浏览器 界面工具 MySQL 谷歌 Photoshop 5.7 6.0 2016 注册模块 未注册用户在用户注册界面uerRegister.jsp输入新用户信息点击注册后新用户信息由界面传入控制层userAction调用addUser(user)方法通过userDAOImp向数据库用户表插入用户信息由于用户账号是自动生成的若成功则反馈注册成功并提示新用户的用户账号若失败则回到登录界面并显示登录失败。 注册界面如下所示。 图5-1注册界面 注册代码如下 /** * 注册 * return */ PostMapping(register) public MapString, Object signUp(HttpServletRequest request) throws IOException { // 查询用户 MapString, String query new HashMap(); MapString,Object map service.readBody(request.getReader()); query.put(username,String.valueOf(map.get(username))); List list service.selectBaseList(service.select(query, new HashMap())); if (list.size()0){ return error(30000, 用户已存在); } map.put(password,service.encryption(String.valueOf(map.get(password)))); service.insert(map); return success(1); } public MapString,Object readBody(BufferedReader reader){ BufferedReader br null; StringBuilder sb new StringBuilder(); try{ br reader; String str; while ((str br.readLine()) ! null){ sb.append(str); } br.close(); String json sb.toString(); return JSONObject.parseObject(json, Map.class); }catch (IOException e){ e.printStackTrace(); }finally{ if (null ! br){ try{ br.close(); }catch (IOException e){ e.printStackTrace(); } } } return null; } public void insert(MapString,Object body){ E entity JSON.parseObject(JSON.toJSONString(body),eClass); baseMapper.insert(entity); log.info([{}] - 插入操作{},entity); } 登录/注销模块 用户在首页点击登录进入用户登录界面uerLogin.jsp输入用户账号和密码点击登录用户账号和密码信息由界面传入控制层userAction调用userLogin(user)方法通过userDAOImp向数据库用户表搜索该用户账号与密码将最终结果反馈到前端。若成功则回到首页用户成功登录若失败则回到登录界面并显示登录失败。 用户点击注销清空浏览器session值然后返回登录页或者首页。 登录界面如下所示。 图5-1登录界面 登录代码如下 Slf4j public class LoginInterceptor implements HandlerInterceptor { private String tokenName x-auth-token; Override public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception { String token request.getHeader(this.tokenName); setHeader(request, response); log.info([请求接口] - {} , [请求类型] - {},request.getRequestURL().toString(),request.getMethod()); if (request.getRequestURL().toString().contains(/api/user/login)){ return true; } else if (request.getRequestURL().toString().contains(/api/user/state)){ return true; } else if (request.getRequestURL().toString().contains(/api/user/register)){ return true; } if (token null || .equals(token)){ if (POST.equals(request.getMethod())){ return false; }else { return true; } }else { return true; } } private void setHeader(HttpServletRequest request, HttpServletResponse response) { //跨域的header设置 response.setHeader(Access-control-Allow-Origin, request.getHeader(Origin)); response.setHeader(Access-Control-Allow-Methods, GET, HEAD, POST, PUT, DELETE, TRACE, OPTIONS, PATCH); response.setHeader(Access-Control-Allow-Credentials, true); response.setHeader(Access-Control-Allow-Headers, request.getHeader(Access-Control-Request-Headers)); response.setHeader(Access-Control-Max-Age, 1800); //防止乱码适用于传输JSON数据 response.setHeader(Content-Type, application/json;charsetUTF-8); response.setStatus(HttpStatus.OK.value()); } 用户模块 个人资料模块 登录用户在首页点击进入用户中心userCenter.jsp再点击修改个人信息按钮进入userChangeInfo.jsp界面系统根据session中存储的目前登录的用户的账号向控制层userAction发送请求搜索当前用户信息userAction向userDAOImp调用queryByUserId(user)向数据库的用户表搜索当前用户信息并将用户信息以对象的形式层层返回到userChangeInfo.jsp界面显示出当前用户的个人信息。 若用户要对个人信息进行修改则通过修改当前信息之后点击确认向控制层userAction发送更改后的用户信息调用changeUser(user)方法通过userDAOImp向数据库用户表更新用户信息若成功则反馈注册成功则返回的userChangeInfo.jsp界面被更改成功若失败则显示修改失败。 评论模块 用户可以发表自己的评论。将页面session中的用户账号userId和发表评论文字框内容和评分传入控制层PinglunAction调用addPinglun方法通过PinglunDAOImp向数据库评论表插入将结果返回Pinglun_list.jsp界面。 评论发表界面如下所示。 图5-1评论发表界面 商品搜索模块 用户可以在首页进行商品搜索在搜索框输入关键词后前台发起请求将传递的keyword参数信息从前台传递ShangpinController类里匹配到list()方法list()方法调用ShangpinServiceImpl类的getShangpinByKeywordCategory()方法如果没有该关键词则返回空的结果集。 商品搜索界面如下。 图5-1商品搜索界面 商品购买模块 用户在登录状态下浏览商品时可将该商品加入商品购买订单从session中取出该用户的信息点击加入商品购买订单后前台发起请求将对应的商品数量shuliang、id参数信息从前台传递GoumaiController类里匹配到add()方法add()方法调用GoumaiServiceImpl类的add()方法。 商品购买界面如下所示。 图5-1商品购买界面 领养申请模块 用户在登录状态下浏览领养申请时可将该领养申请加入领养申请记录从session中取出该用户的信息点击领养申请记录后前台发起请求将对应的领养申请shenqing、id参数信息从前台传递lingyangController类里匹配到add()方法add()方法调用lingyangServiceImpl类的add()方法。 领养申请下单界面如下所示。 图5-1领养申请界面 管理员模块 商品管理模块 管理员在后台管理界面点击到所有商品界面shangpinxinxi_list.jsp向控制层shangpinxinxiAction发送请求搜索当前所有商品信息shangpinxinxiAction向shangpinxinxiDAOImp调用搜索全部商品的请求向数据库的商品表搜索当前所有商品并将商品信息以对象的形式层层返回到shangpinxinxi_list.jsp界面显示出当前所有商品信息。若要对商品信息进行修改和删除则分别进入shangpinxinxi_updt.jsp或shangpinxinxi_delete.jsp通过shangpinxinxiAction向shangpinxinxiDAOImp调用对应的修改或删除方法向数据库的商品表做相应的持久层操作。 商品管理界面如下所示。 图5-1商品管理界面 领养中心管理模块 管理员在后台管理界面点击到领养赵忠祥界面lingyangzhongxini_list.jsp向控制层lingyangzhongxiniAction发送请求搜索当前所有领养中心信息lingyangzhongxiniAction向lingyangzhongxiniDAOImp调用搜索全部领养中心的请求向数据库的领养中心表搜索当前所有领养中心并将宠物信息以对象的形式层层返回到lingyangzhongxini_list.jsp界面显示出当前所有领养中心信息。 领养中心管理界面如下所示。 图5-1领养中心管理界面 系统测试 测试概述 软件测试是软件开发完成后必须经过的一道程序它在软件开发过程中地位十分重要需要由专业的测试工程师来对软件进行各方面的测试大到功能模块测试小到代码的单元测试这对测试工程师来说需要有足够的耐心和专业的测试方案软件测试归根结底就是对软件的结构和功能的综合测评需要做到结构稳定和功能正确二者兼顾。软件测试也叫寻找系统bug的过程世界上没有完美无缺、不存在bug的软件只能将软件的bug降到最低最小来追求极致。 测试过程 登录测试 登录测试是系统最开始就要进行测试用户能否登录才能完成后续的功能操作。 登录测试用例表如下所示。 表6-1登录测试 用例编号 YL001 程序版本 1.00 功能名称 使用者登录测试 编制人 李铁蛋 功能描述 根据用户的登录情况测试 用例目的 测试用户登录情况是否正确 测试项 测试数据 测试结果 预期结果 用户名 为空 请输入用户名 请输入用户名 密码 为空 请输入密码 请输入密码 用户密码组合 用户名:klouse 密码 klouses 用户与密码不匹配 用户与密码不匹配 用户密码组合 用户名 : klouse 密码 klouse 进入系统 正确的用户名和密码 登录系统 信息录入测试 管理员在发布信息页面通过按照预先格式发布信息如果因为输入时候缺少相关内容就不能发布成功且有相应错误提示 信息录入发布测试用例表如下所示。 表6-1信息录入发布测试 用例编号 YL002 程序版本 1.00 功能名称 信息发布测试 编制人 李铁蛋 功能描述 对使用者发布或者录入信息进行测试判断其功能是否达到预期的要求 用例目的 对系统使用者录入发布信息进行原型测试。 测试项 测试数据 测试结果 预期结果 属性1 为空 请输入属性1对应的数据 请输入属性1对应的数据 属性2 为空 请输入属性2对应的数据 请输入属性2对应的数据 属性3 为空 请输入属性3对应的数据 请输入属性3对应的数据 全部输入 数据均填入 录入发布成功 录入发布成功 信息更新测试 管理员在更新信息页面通过按照预先格式更新信息如果因为输入时候缺少相关内容或者更新的数据不符合当前规范的话就不能更新成功且有相应错误提示 信息更新测试用例表如下所示。 表6-1信息更新测试 用例编号 YL003 程序版本 1.00 功能名称 信息更新测试 编制人 李铁蛋 功能描述 对使用者更新信息进行测试判断其功能是否达到预期的要求 用例目的 对系统使用者更新信息进行原型测试。 测试项 测试数据 测试结果 预期结果 属性1 编号321 编号更新成功 编号更新成功 属性2 名称名称1 名称更新成功 名称更新成功 属性3 内容内容1234内容 内容更新成功 内容更新成功 全部输入 数据均未更改 更新成功 更新成功 信息删除测试 管理员在信息页面通过点击数据删除按钮来删除该条数据如果该数据和其他数据有关联则提示是否确定删除。 信息删除测试用例表如下所示。 表6-1信息删除测试 用例编号 YL004 程序版本 1.00 功能名称 信息删除测试 编制人 李铁蛋 功能描述 对使用者删除信息进行测试判断其功能是否达到预期的要求 用例目的 对系统使用者删除信息进行原型测试。 测试项 测试数据 测试结果 预期结果 数据1 无任何关联的数据1 数据删除成功 数据删除成功 数据2 和其他数据有关联的数据2 请确认是否删除 请确认是否删除 测试结果 在经过之前的所有的工作之后通过对软件的测试方法、测试原则还有典型的测试用例进行全面的、深入的介绍。经过对系统的全面测试系统目前所具有的所有功能均成功的实现并且通过了测试整个系统实现了基于 Java 开发的期望。 总结与展望 总结 宠物网站系统采用MVC结构该结构非常完美的集优点于一身成熟、强大、易理解易使用通过使用这个结构降低了开发的难度。本系统实现了基于Java的宠物网站系统将数据操作维护的过程转化成电脑操作流程具体实现了对系统网站管理轮播图、公告信息人员管理管理员、系统用户内容管理论坛列表、论坛分类、资讯列表、资讯分类购物管理宠物商城、分类列表、订单列表模块管理领养中心、领养申请、分享中心、宠物类型个人管理、数据维护并提供查询统计功能来对商品和购买的相关数据进行统计分析让使用者能更清晰的掌握运营情况帮助使用者进行数据操作维护简化工作流程提高工作效率和盈利。 展望 目前完成的宠物网站系统还有许多有待改进的地方。一个是功能上的改进用户理应可以修改自己的相关信息故应增设个人中心功能另外系统如果能提供更多的功能就会使得系统更加丰富和多样化比如数据当前分析和未来预测等。第二个是技术上的改进由于对开发框架不太熟悉权限管理这部分本系统采用一个JSP页面来规定好导航栏即跳转的页面这相对比较不灵活如果将URL路径记录到数据库并实现增删查改会比较好另外就是对EasyUI的使用还不够熟练视觉效果和界面观感有待提升希望日后能对这个系统有所改进。 参考文献 [1]潘杨占胜.JSP中文乱码问题的探讨与解决方法[J].福建电脑,2020,36(04):36-41. [2]蒋治学.JSP技术及其在动态网页开发中的应用分析[J].浙江水利水电学院学报,2020,32(02):75-77. [3]刘小飞,李明杰.基于JSP和Servlet架构的新闻频道系统[J].电脑知识与技术,2020,16(12):82-83. [4]曾晰,舒坚.基于JSP的养老院管理信息系统的设计与实现[J].信息通信,2017,(09):122-124. [5]费扬,杜庆治.基于JSP的大学城外卖网的设计与实现[J].软件,2017,38(07):92-96. [6]PANCai-hua,LYUJian-you.ResearchonDesignofDigitalDesignManagementSystemofElectronLinearAcceleratorBasedonJSP[J].AnnualReportofChinaInstituteofAtomicEnergy,2016,(00):204-205. [7]张元刚.煤炭运销综合管理系统智能发运关键技术的研究[J].自动化技术与应用,2020,39(05):154-159. [8]朱家全,韦海清.基于JSP技术开发计算机网络技术专业资源库平台[J].电子技术与软件工程,2017,(01):46-47. [9]陆丽.MVC设计模式在JavaWeb开发中的应用研究[J].信息通信,2020(04):104-106. [10]刘玉成.用jsp实现整个目录上传案例[J].金融科技时代,2017,(02):52-54. [11]毋世晓.基于MVC的BBS论坛创建与实现[J].电脑编程技巧与维护,2019(12):21-23. [13]任宪臻,梁宏英.JSP页面中文乱码解决方法[J].数字技术与应用,2017,(01):154157. [13]袁嘉欣,马佳琳.基于JSP的大学生活动管理平台的设计与实现[J].软件工程,2019,22(01):43-46. [14]韩会雯.基于JSP的BBS论坛设计与实现[J].电脑编程技巧与维护,2017,(05):16-1739. [15]张文鹏,王兴.改进型蝙蝠算法在作业车间调度问题中的应用[J].计算机工程与应用,2017,53(08):137-140153. [16]MorisPieter,Bui-ThiDanh,LaukensKris,MeysmanPieter.MILES:aJavatooltoextractnode-specificenrichedsubgraphsinbiomolecularnetworks[J].Bioinformatics,2020,36(6). [17]TakashiTomiyasu,YurikoKonoHamada,ChristineBaransano,HitoshiKodamatani,AkitoMatsuyama,RyusukeImura,NurilHidayati,JoeniSetijoRahajoe.Mercuryconcentrationsinpaddyfieldsoilandfreshwatersnailsaroundasmall-scalegoldminingarea,WestJava,Indonesia[J].ToxicologyandEnvironmentalHealthSciences,2020,12(prepublish). [18]TropicalGeography;NewTropicalGeographyFindingsfromUniversityCollegeLondon(UCL)Reported(GrowthandGrowthConstraintsInCraftIndustryClusters:theBatikIndustriesofCentralJava)[J].ScienceLetter,2020. [19]ChemicalResearch;InvestigatorsatSardarVallabhbhaiNationalInstituteofTechnologyReportFindingsinChemicalResearch(Improvedhydrodistillationprocessusingamphiphiliccompoundsforextractionofessentialoilfromjavacitronellagrass)[J].ChemicalsChemistry,2020 [20]JoaquimPereiraCarvalho,HelberVérasNunes,DaniellaInácioBarros,EvandroAlvesRibeiro,Jo?oHenriquedaSilvaLuz,LayssaGabriellyBarbosaGarciaRamos,PauloVictorGomesSales,RicardoAlencarLiborio,BrunoHenriqueDiNapoliNunes.VigorofJavaPlumSeedlings,inthePresenceandAbsenceofMucilageSubmittedtoDifferentSubstrates[J].EuropeanJournalofMedicinalPlants,2020. 致谢
在老师的教导和帮助下本人完成了本篇论文老师对论文的内容、格式都有非常严格的要求在我写毕业论文的过程中他多次给出了建议并定期检查对我们严格要求帮助我们在文档的编写上写到极致和正确他这种教学和工作态度让我对他产生无限的敬佩感和尊敬感。写毕业论文的同时作为应届生我也忙着找工作中遇到了很多选择感到困惑迷茫的时候老师给了我很多意见感谢老师的耐心开导跟她的聊天我明白了许多。
我还要感谢我的父母一直以来都非常支持和相信我在精神和经济上给了我很多力量如今我将毕业走上工作之路终于能报答父母的养育教导之恩。还有我大学期间所有老师和全体同学遇到问题时这些老师同学总是无私地帮助我真的非常感谢我也会加油努力成长为一个有用的人。 免费领取项目源码请关注❥点赞收藏并私信博主谢谢~