基于node.js的宠物寄存管理系统,基于express的宠物寄存系统

news2024/11/18 3:09:08

摘    要

伴随着社会以及科学技术的发展互联网已经渗透在人们的身边,网络慢慢的变成了人们的生活必不可少的一部分,紧接着网络飞速的发展,系统管理这一名词已不陌生,越来越多的宠物店等机构都会定制一款属于自己个性化的宠物寄存管理系统

本毕业设计的内容是设计并且实现一个基于Node.js语言宠物寄存管理系统采用MYSQL为数据库开发平台,Express框架,宠物寄存管理系统的功能已基本实现,主要商家、顾客、宠物寄存、寄存信息、公告信息、系统管理等。

论文主要从系统的分析与设计 、数据库设计和系统的详细设计等几个方面来进行论述,系统分析与设计部分主要论述了系统的功能分析、系统的设计思路,数据库设计主要论述了数据库的设计,系统的详细设计部分主要论述了几个主要模块的详细设计过程。

【关键词】宠物寄存管理系统Node.js语言MYSQL数据库Express框架

Abstract

With the development of society and science and technology, the Internet has penetrated around people, and the network has slowly become an indispensable part of people's life. With the rapid development of the network, the term system management is no stranger. More and more pet stores and other institutions will customize their own personalized pet deposit management system.

The content of this graduation project is to design and implement a system based on node JS language pet deposit management system. Using MySQL as the database development platform and express framework, the functions of pet deposit management system have been basically realized, including main businesses, customers, pet deposit, deposit information, announcement information, system management, etc.

This paper mainly discusses from the aspects of system analysis and design, database design and detailed design of the system. The system analysis and design part mainly discusses the function analysis and design idea of the system. The database design mainly discusses the design of the database, and the detailed design part of the system mainly discusses the detailed design process of several main modules.

[Key words] pet deposit management system; Node. JS language; Mysql database; Express framework

  

1 引言

1.1  研究的目的及意义 2

1.2 研究的主要内容 3

1.3 本文的组织结构 4

 2 平台开发相关技术 5

2.1 Node.js介绍 6

2.2 Express框架 7

2.3 MYSQL数据库 8

2.4 MySQL环境配置 9

2.5 B/S架构 10

3 软件系统需求及可行性分析 11

3.1 需求分析 12

3.2 系统可行性分析 13

3.2.1 技术可行性 14

3.2.2 操作可行性 15

3.2.3 经济可行性 16

4 系统软件的总体设计 17

4.1 系统开发流程 18

4.2 系统总体架构设计 19

4.2.1 总体设计 20

4.3 系统数据库的设计 21

4.3.1数据库E/R图 22

4.3.2 数据库表 23

5 系统软件功能的具体实现 24

5.1 管理员功能模块 25

5.2 顾客功能模块 26

5.3 商家功能模块 27

5.4 前台首页功能模块 27

6系统的调试和测试 28

7 结论 29

7.1 收获与体会 30

参考文献 31

致    谢 32

1 引言

1.1研究的目的及意义

科学技术日新月异的如今,计算机在生活各个领域都占有重要的作用,尤其在信息管理方面,在这样的大背景下,学习计算机知识不仅仅是为了掌握一种技能,更重要的是能够让它真正地使用到实践中去,以创新的视角去不断方便人们的生活,推动对新知识的学习,培养自学能力,锻炼动手实践的本领。以前宠物寄存管理,也应该摆脱人工管理的模式,使用计算机技术来进行信息管理工作,于是我思考了很久,最后决定用Node.js语言开发一个宠物寄存管理系统如今随着科技的迅速发展,Node.js语言受到了众多开发者的青睐,Node.js语言不仅简化了开发者的负担而且提高了开发效率,那么一个宠物寄存管理系统将是广大用户所需要的。所以要通过计算机胜任宠物寄存管理系统的工作,使宠物寄存管理系统更加准确、方便及快捷。     

1.2 研究的主要内容

随着信息化的发展,互联网需要提供更多的服务,构造更完善的体系以满足越来越多的用户的精神与物质需求。伴随着Internet技术的日益成熟,一种建立在网络基础上的信息管理模式形成了,这便是今天为大家所熟悉的线上管理系统。

传统的手工统计进行管理力量远远不够,所以有很多宠物店宠物寄存管理系统工作只停留在传统的宠物寄存管理服务。同时,很多宠物店本身资金是有限再加上也缺少专业水平的工作人员,所以宠物寄存管理的管理手段较为落后,同时也就不能很好的为用户提供宠物寄存、寄存信息、公告信息功能,于是宠物寄存管理能够为用户提供更为完善的服务。以前宠物寄存管理都是通过手动来进行管理记录及操作,不但麻烦琐碎,还经常出现错误,给广大用户带来很不便,同时也需要大量的人力、物力和财力,极大的浪费了宠物店的资源。随着服务行业的快速发展,人们慢慢地来希望宠物寄存管理系统能够提供更为合理及完善的服务

1.3 本文的组织结构

本文的组织结构如下:

1、绪论。综述了本文的目的及意义,分析了宠物寄存管理系统的结构;更好的从用户的角度出发,发现当今宠物寄存管理系统中的不足,同时要指出本次系统中的特色。

 2、对系统主要的使用技术,开发环境、环境配置的介绍。介绍了本次开发所用的系统开发环境Vscode,还介绍了Express框架和MySql数据库

3、系统的设计与实现。介绍了开发宠物寄存管理系统信息系统的思路并进行了需求分析,在需求分析的基础上进行了总体设计、详细设计以及数据库等相关方面介绍;该部分是全文的主旨。

4、系统功能模块具体实现。对开发中一些主要具体功能的实现进行描述。涉及到数据库、页面参数传递等相关知识。

5、总结。对整个论文及设计过程进行总结,指出系统设计过程的心得以及设计中存在的不足;后期还有待完善的地方等。

2 平台开发相关技术

2.1 Node.js 介绍 

Node.jsScript 这门语言的设计虽然被很多人诟病,但是因为其占据了浏览器而且容易上手所以广泛流行。后来随着 Node.js 的出现,npm 包管理带来的强大生态更是如虎添翼(截止到 2017 年 3 月 npm 共有 43 万个包)。但是这也造成了 JS 社区变态的快速迭代,大家都直呼赶不上,框架太多,选择太多,眼花缭乱。

 Node.js非常适用于Web开发,但是现在无论是一个网站,还是Web App都已经成为包括很多不同部分,如前端、数据库、业务模块、功能模块等等的大型项目,使用Node.js从零开始进行Web开发,也许大中型团队能够 胜任,但对于个人和小型团队来说是不现实的。这时候框架就成为Web开发利器,对于个人开发来说几乎是必不可少。

2.2 Express框架

Express是一个简洁而灵活的node.js web框架,提供了一系列强大特性帮助你创建各种web应用,和丰富的HTTP工具。使用Express可以快速地搭建一个完整功能的网站。

1.express框架的特性

(1)可以设置中间件来响应HTTP请求;

(2)定义了路由表用于执行不同大的HTTP请求动作;

(3)可以通过向模板传递参数来动态渲染HTML页面;

2.3 MYSQL数据库

MySQL数据库管理系统,是目前最流行的关系型数据库管理系统之一。它相对与SQLServer来说小了很多,电脑内存比较小的人用这个会比较方便而且MySQL安装起来非常方便,不需要有很多插件的安装,基本上只需要点击下一步执行,只有在最后的时候选一下数据集选项。MySQL查询起来也非常方便,连接数据库之后直接打开就可看到,对于我这种懒人来说真的非常实用。MYSQL能够以极高的效率完成各种数据库查询,并能方便的使用存储过程,同时我们一般在实用MySQL是基本上都是实用简单的可视化工具查看,界面简单清晰,以图形的形式表达用户界面易查看的,又能够使数据库管理和系统管理更加简单、直观。由于MySQL对Web端的支持,用户能轻易的在浏览器里面运行界面获取数数据关系,所以这次课题选用MySQL数据库。

2.4 MySQL环境配置

本系统的数据使用的是MySQL,所以要将MySQL安装到指定目录,如果下载的是非安装的MySQL压缩包,直接解压到指定目录就可以了。然后点击C:\Program Files\MySQL\bin\winMySQLadmin.exe这个文件其中C:\Program Files\MySQL是MySQL安装目录。输入winMySQLadmin的初始用户、密码(注:这不是MySQL里的用户、密码)随便填不必在意,确定之后右下角任务的启动栏会出现一个红绿灯的图标,红灯亮代表服务停止,绿灯亮代表服务正常,左击这个图标->winnt->install the service 安装此服务,再左击这个图标->winnt->start the service 启动MySQL服务。

修改MySQL数据库的root密码。用cmd进入命令行模式输入如下命令:

cd C:\Program Files\MySQL\bin

MySQLadmin -u root -p password 123

回车出现Enter password: ,这是要输入原密码. 刚安装时密码为空,所以直接回车,此时MySQL 中账号 root 的密码被改为 123 安装完毕。

2.5 B/S架构

B/S的系统是通过能上网的电脑就可以使用,它最大的优点是不需要安装专门的软件,首先浏览器向服务器发出请求,然后服务器处理请求把信息再返回给浏览器。不需要再次对数据进行存取与计算数据,只要负责显示数据来降低要求,如果说客户端像个“瘦子”,而服务器会越来越“胖”。B/S体系结构与C/S体系结构相比,最大的不同是:B/S体系的应用软件使用网络浏览器作为与用户交互的平台,而C/S则需要开发专用的应用程序。
当前MIS系统结构目前存在两种较为流行的结构:C/S和B/S两种。
  C/S结构的系统:C/S结构就是客户机服务器结构,它可以法派任务到Client端和Server端来进行,充分利用两端硬件环境的优势,来降低系统的通讯的花费。客户端主要作用是处理人机交互,执行客户端应用程序,收集数据以及向服务器发送任务请求。服务器基本作用是执行后台程序,它主要对客户机的请求申请进行反馈,除此之外,它的作用还包括:数据服务预约储系统的共享管理、通讯管理、文件管理等等。
  B/S结构的系统:这种网络结构简化了客户端,并把系统功能实现的中心集中到服务器上,在这种模式中,只需要一个浏览器就可以了。这种结构将很多的工作交于WEB服务器,只通过浏览器请求WEB服务,随后根据请求返回信息。
通常在网站网内部使用,采用C/S。而使用不仅限于内网的情况下使用B/S。考虑到本管理系统的一系列需求,所以,该系统开发使用B/S结构开发。

3 软件系统需求及可行性分析

3.1 需求分析

本次的毕业设计主要就是在基于Node.js语言平台下设计并开发一个宠物寄存管理系统软件。运用当前Google提供的Express框架来实现对宠物寄存查询功能模块和寄存信息查询功能。当然使用的数据库是mysql。尽管没有面向对象的数据库的作用强大,但是在Express框架开发上还是比较的灵活和方便的。系统功能主要介绍以下几点:

宠物寄存管理系统主要包括大功能模块,即顾客功能模块和管理员功能模块商家功能模块。

1)管理员模块:系统中的核心用户是管理员,管理员登录后,通过管理员功能来管理后台系统。主要功能有:首页、个人中心、顾客管理、商家管理、宠物寄存管理、寄存信息管理、公告信息管理、系统管理等功能。管理员用例图如图3-1所示。

3.2 系统可行性分析

一个完整的系统,可行性分析是必须要有的,因为他关系到系统生存问题,对开发的意义进行分析,能否通过本网站来补充线下宠物寄存管理系统模式中的缺限,去解决其中的不足等,通过对本网站,不仅能使工作量不断地减少,还能使工作和管理的效率更加高。所以开发该网站能实现更大的意义和价值,网站完成后,能否达到预期效果就要通过可行性分析,分析之后,决定此系统是否开发。该宠物寄存管理系统的开发设计中,对技术、经济、操作方面进行了可行性分析; 

3.2.1 技术可行性

本系统开发选择Node.js语言它被研究的目的就是在于能够为网页创建等可以看到的信息。随着移动互联网技术的不断发展和创新,Express俨然已成为下一代互联网的Web标准。所以后台设计选择使用mysql数据库主要用来的建立和维护信息。后台数据库的要求则是能够建立和维护数据信息的统一性和完整性。

3.2.2 操作可行性

现在随着科技的飞速发展,计算机早已经进入了人们的日常生活中,人们的工作环境也不像以前有那么多的要求,需要员工一定要到公司办公,有的工作在家也可以完成。这使得人们的工作效益有了很大的提高。操作的多样性也变高了。因此,管理的计算机化,智能化是社会发展而带来的必然趋势,各种智能的软件层出不穷,不同的软件能完成用户不同的需求,这不仅提高了工作效率还能完成一些客户特定的一些需求。本系统不仅界面简洁明了还采用可视化界面,用户只要用鼠标和键盘就可以完成对相关信息的修改,删除,添加等操作。因为这个系统的操作十分简单,方便上手,对于第一次使用系统的人,只需要很少的时间就可以上手操作。由此可见,本系统在操作上是可行的。

3.2.3经济可行性

基于Node.js宠物寄存管理系统,该网站软件开发仅需要一台普通的计算机便可完成实现开发,其成本很低。另外,作为毕业设计作品来讲,开发成本基本上可以忽略不计,且该系统软件的投入使用,可以实现更加快速高效的宠物寄存管理系统,同时还能实现对管理资源的有效节约,该宠物寄存管理系统在经济上完全可行。

4 系统软件的总体设计

4.1 系统开发流程

(1)需求分析:初步分析用户的需求,列出功能模块

(2)系统设计:相关数据库、各功能的设计。

3界面设计:根据各个模块准备素材,设计界面。

4代码编写:实现相关功能代码的编写

5测试运行:按照规划测试软件各项功能是否正常运行。

4.2 系统总体架构设计

4.2.1 总体设计

宠物寄存管理系统采用了结构化开发的方法。这种开发方法的优点是控制性比较强,开发过程中采用了结构化和模块化的设计思想,自顶向下,从总体到部分,合理划分系统的结构和模块。结构化开发时使用模块式开发,各模块之间互不影响,方便系统的开发与管理。 

本系统的设计是基于 B/S架构的三层体系结构,也就是浏览器和服务器结构。计算机技术发展的速度非常快,以前的设计结构都以C/S的模式为主,也就是用户端和服务端模式。但随着网页技术的发展,越来越多的用户习惯于使用浏览器。现在的网页技术可以在浏览器中实现非常漂亮的效果,以前的单一低调的用户端页面已经无法满足用户的需求。在B/S这种结构下,技术人员可以很轻松的设计出用户所需要的工作界面,页面代码通过浏览器进行解析展示,在浏览器中不做过多的事务逻辑的处理。主要的事务逻辑放在服务端进行处理。这样用户的电脑就不会承载过多的东西,只需要浏览器展示即可。对于开发人员也很方便进行系统的维护和升级。开发人员只需要在服务端进行系统的维护就可以了。使用Node.js这样的跨平台性非常好的技术,这样的开发模式更加的方便,高效。本系统合理的进行了模块划分和组合,因此由于各个模块之间基本上是相互独立的,所以每个模块都可以独立的被解释、执行、调试和修改,让繁琐的系统设计工作简单化。

如图4.1系统软件的功能结构图:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2052421.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

2.8销毁窗口

目录 1.实验原理 2.实验代码 3.运行结果 1.实验原理 销毁某一个指定名称的窗口 destoryWindow 函数原型 Destroys a window.void destroyWindow(const string& winname);含义 功能: 销毁指定名称的窗口。 参数: const string& winname: 一个字符串&am…

香港租云服务器多少钱一台?

香港租云服务器多少钱一台?香港云服务器的租用价格因配置、带宽、服务等级等因素而异,从数百元到数千元不等。例如,入门级服务器的价格在数百元至一千元之间,适用于个人网站、小型博客等低流量应用。标准型服务器的价格在一千元至…

电商人必看!4招拿捏消费者心理,没有卖不出去的产品

在竞争激烈的电商领域,产品如何脱颖而出,成为消费者心中的首选,不仅依赖于产品的质量与性价比,更在于如何精准把握并巧妙运用消费者心理。今天,我们就来探讨4个关键策略,结合选品建议,帮助电商人…

欠债还钱 天经地义李秘书专业写作:这是一篇涉借款纠纷的民事起诉状

欠债还钱 天经地义 李秘书专业写作:这是一篇涉借款纠纷的民事起诉状 (精品范文) 民 事 诉 状 原告:李某军,男,现年46岁,无业,现住黑龙江省大兴安岭地区漠河市汉东路阳和门。 被告…

儿童可以用挖耳勺吗?六大挑选妙招需掌握!

耳垢会随着人体的运动量增加,1岁以下的儿童运动量较小,可以不用经常掏耳朵,但随着年龄增长,耳垢也会增多,这时可以适当地给儿童掏耳勺。但掏耳朵的工具要选对,目前市面上不少宣称是儿童专用的掏耳工具&…

汇凯金业:清洗黄金首饰的方法

黄金首饰,作为我们日常生活中常见的饰品,不仅能够提升我们的穿着品味,更彰显了我们的经济实力。然而,黄金首饰戴久了,难免会出现一些污渍,甚至失去原有的光泽。这时候,很多人会选择去专业的珠宝…

【MySQL】SQL语句执行流程

目录 一、连接器 二、 查缓存 三、分析器 四、优化器 五、执行器 一、连接器 学习 MySQL 的过程中,除了安装,我们要做的第一步就是连接上 MySQL 在一开始我们都是先使用命令行连接 MySQL mysql -h localhost -u root -p 你的密码 使用这个命令…

Qt (9)【Qt窗口 —— 如何在窗口中创建菜单栏和工具栏】

阅读导航 引言一、Qt窗口简介二、如何在窗口中创建菜单栏1. 创建菜单栏2. 在菜单栏中添加菜单3. 创建菜单项4. 在菜单项之间添加分割线 三、如何在窗口中创建工具栏1. 创建工具栏2. 设置停靠位置3. 设置浮动属性4. 设置移动属性 引言 在上一篇文章中,我们深入探讨了…

掌握 BM25:深入了解算法及其在 Milvus 中的应用

我们可以通过 Milvus 轻松实现 BM25 算法,将文档和查询转化为稀疏向量。然后,这些稀疏向量可用于向量搜索,根据特定查询找到最相关的文档。 信息检索算法在搜索引擎中非常重要,可确保搜索结果与用户的查询相关。 想象一下&#…

Vue2中watch与Vue3中watch对比和踩坑

上一节说到了 computed计算属性对比 ,虽然计算属性在大多数情况下更合适,但有时也需要一个自定义的侦听器。这就是为什么 Vue 通过 watch 选项提供了一个更通用的方法,来响应数据的变化。当需要在数据变化时执行异步或开销较大的操作时&#…

conda环境下在pycharm中调试scrapy项目

前提条件 已经创建好了conda环境已经安装好了scrapy框架项目初始化完成 编写一个爬虫脚本 import scrapyclass StackOverflowSpider(scrapy.Spider):name stackoverflowstart_urls [http://stackoverflow.com/questions?sortvotes]def parse(self, response):print("…

阿一网络安全实战演练之利用 REST URL 中的服务器端参数污染

所需知识 要解决这个实验室问题,您需要了解以下内容: 如何确定用户输入是否包含在服务器端的 URL 路径或查询字符串中。如何使用路径遍历序列尝试更改服务器端请求。如何查找 API 文档。 这些内容在我们的 API 测试学院主题中有涵盖。 进入实验室 研…

终极解决CondaValueError: Malformed version string ‘~’: invalid character(s)问题

conda 创建环境时出现: Solving environment: failed CondaValueError: Malformed version string ‘~’: invalid character(s)以下两种方法都不行时: 原因一: 添加的镜像源中,清华镜像源是https(错误)&a…

软件测试 - 测试分类(静态测试、动态测试、白盒测试、黑盒测试、灰盒测试、单元测试、集成测试、系统测试、验收测试等)

一、为什么要对软件测试进⾏分类? 软件测试是软件⽣命周期中的⼀个重要环节,具有较⾼的复杂性,对于软件测试,可以从不同的⻆度 加以分类,使开发者在软件开发过程中的不同层次、不同阶段对测试⼯作进⾏更好的执⾏和管理…

R语言管道操作详解-高效编程

引言 R语言是一种广泛应用于统计分析和图形表示的编程语言和软件环境。随着数据分析和数据科学的发展,R语言的管道操作符已经成为提高代码可读性和效率的重要工具。本文将详细介绍R语言中的管道操作符,包括它们的用途、语法和一些实用的示例。 目录 引…

手写签名怎么变成电子签名?

教大家一个快速生成有效电子签名的方法!(有效电子签名即通过正轨平台绑定了CA数字证书、防伪防盗的签名) 1.登录【微签】,点击【自己签】。 2.点【添加文件】,上传需要签名的电子文件(格式不限)…

一起学习LeetCode热题100道(46/100)

46.二叉树展开为链表(学习) 给你二叉树的根结点 root ,请你将它展开为一个单链表: 展开后的单链表应该同样使用 TreeNode ,其中 right 子指针指向链表中下一个结点,而左子指针始终为 null 。 展开后的单链表应该与二叉树 先序遍历…

Affine Transformations仿射变换

什么是仿射变换 仿射变换(Affine Transformation)是数学和计算机图形学中的一种线性变换,它包括了平移、旋转、缩放、剪切等操作。仿射变换保留了几何图形的“仿射性质”,即平行线在变换后仍然平行,线性组合在变换后仍…

电机预测性维护模组

设备简介 本模组为了对电机进行预测性运维而开发,可以采集电机的 3 路加速度振动传感器、3 路电流(电机供电互感器输出信号)、1 路转速(电机转速)、8 路温度(PT100 温度传感器)。 模组计算振动…

一文带你看懂安全生产管理系统

通过集成多种先进技术和设备,实现对企业安全生产全过程的智能化、精细化管理。系统分为五个核心层面,各层面相互协作,共同确保企业的安全生产。 1. 数据采集层 设备终端:利用防爆终端、防爆平板、无线传感器、电子标签、定位设备、…