目录
项目介绍
这个厨房达人美食分享平台,它的本质是为人们服务。是希望其可以实现并满足广大使用者对科技时代下的厨房达人美食分享平台的憧憬与向往。如何解放需要人工才能完成的部分和提升使用者的使用观感是最为基础的也是最重要的。它的设计宗旨就是为使用者服务。明确使用者的想法和需求,设法让使用者可以真实的感受到科技时代的魅力是设计的初衷。厨房达人美食分享平台可以满足新时代使用者的需求,让使用者能够真实的感受到它的便捷[7]。
(2)可修改原则
设计系统时并不能确保让所有的功能都达到使用者最理想的要求,在设计的过程中可能会有纰漏。所以在设计时要确保可以及时对不完整,不完美的部分进行修改和补充。同时,也要确保在系统发行后,在出现bug时可以在不影响使用者使用的情况下对系统进行线上维护[8]。同时要确保在修复,更新,维护的同时可以保证使用者的体验。
具体实现截图
技术栈
该系统将采用B/S结构模式,开发软件有很多种可以用,本次开发用到的软件是vscode,用到的数据库是MySQL,为了更加便捷地使用数据库,用到了MySQL的可视化工具SQLyog/Navicat。
开发语言 node.js
前端:vue.js+ElementUi
数据库:mysql
数据库工具:Navicat/SQLyog都可以
开发运行软件:VScode/webstorm/hbuiderx均可
框架:Express
开发工具和技术简介
Nodejs语言
只有拥有了一款解析器才能使得脚本语言顺利运行,JavaScript语言是一种脚本语言,各种各样的解析器位于系统中的不同部位,Node.js是一个完整的解析器,而且OS允许js来定义多种多样种类繁多的数据结构,从而处理各种运算,还准许js使用系统环境所提供的多种内置对象和方式做各类计算。当处在浏览器运行环境下时,js技术的用途是进行DOM相关的运算,在这个情况下,该环境便提供一个document类别的内置操作对象。而在node.js运行环境下的js的用途是对磁盘文件进行操作或者是对http服务器进行搭建,此时,node.js就相应提供了fs,http等系统内置对象。
vue前端框架
前端方面,采用近几年比较火的Vue前端框架。Vue是一套用于构建用户界面的渐进式前端框架,使用其可以简化前端页面的开发。同时本系统采用前后端分离开发模式,前端只需要专注于页面的开发,以及接收后端传过来的数据,而后端只需要专注于业务的处理,提供获取JSON格式数据的接口。Express不对node.js已有的特性进行二次抽象,只是在它之上扩展了Web应用所需的功能。丰富的HTTP工具以及来自Connect框架的中间件随取随用,创建强健、友好的API变得快速又简单。Express是Web开发人员最欢迎的Node.js框架之一,提供一系列强大特性帮助创建各种Web应用。
VScode是我们最常用的网页编辑器,通过日常学习,我们基本熟练运用,在完成项目的过程中,我们可以更加节省时间。而且VScode包含很多插件并且免费,下载更加快捷方便,可以给我们提供很多便捷条件。运行的便捷给我提供很大帮助。
MySQL通过协议分析SQL语句的语法,支持标准的SQL语言实现增删改查,同时,MYSQL提供了丰富的接口,可以和不同的语言进行连接。在使用MySQL时,首先通过create语句创建数据库名称,并指定数据库文件对应的路径地址,然后通过create table来创建数据库表。创建数据库表时要设置数据库表内的字段以及字段类型、字段是否为空、是否主键、是否外键、是否索引字段、类型的长度等等。
错误处理和异常处理
在系统中,设计了一个健壮的错误处理和异常处理策略。系统会捕获可能发生的错误和异常情况,并提供相应的处理和反馈机制。
系统将采用适宜的异常类别来描述各种类型的错误和异常状况,并通过异常处理策略去捕获和应对这些异常。在处理异常时,系统会提供相关的错误数据和日志记录,以协助开发者和管理者进行问题诊断和解决。此外,系统还会向用户提供友好的错误提示,以确保用户能够理解问题并采取适当的行动。
nodejs类核心代码部分展示
import { version } from '../../package.json'
import { Router } from 'express'
import { Op } from 'sequelize'
import toRes from '../lib/toRes'
import UsersModel from '../models/UsersModel'
import jwt from 'jsonwebtoken'
export default ({ config, db }) => {
let api = Router()
// 用户登录接口
api.post('/login', async (req, res) => {
try {
let userinfo = await UsersModel.findOne({ where: { username: req.query.username, password: req.query.password } })
if (userinfo === null) {
toRes.session(res, -1, '用户名或密码错误!')
return;
}
const token = jwt.sign(
{
id: userinfo.dataValues.id,
username: userinfo.dataValues.username,
role: userinfo.dataValues.role
},
config.jwtSecret,
{
expiresIn: 60 * 60 * 24 * 1
}
)
userinfo.dataValues.token = token
delete userinfo.dataValues.password
req.session.userinfo = userinfo
toRes.session(res, 0, '登录成功!', token)
} catch(err) {
toRes.session(res, 500, '服务器错误!', '', 500)
}
})
// 用户退出接口
api.all('/logout', (req, res) => {
if (!toRes.auth(req, res, '管理员')) return
req.session.destroy(err => {
toRes.session(res, 0, '退出成功!')
})
})
// 注册接口
api.post('/register', async (req, res) => {
try {
const userinfo = await UsersModel.create(req.body)
if (userinfo === null) {
toRes.session(res, -1, '注册失败!')
} else {
toRes.session(res, 0, '注册成功!')
}
} catch(err) {
toRes.session(res, 500, '服务器错误!', '', 500)
}
})
解决的思路
分为前后台分离模式开发,后台管理员管理整个系统的功能,前台用户查询信息,通过功能菜单可以一目了然的清楚系统具有的功能和操作方式,没有复杂的界面设置和流程要求,只要具有计算机基础的操作即可使用本系统,所以。在操作上就有可行性。
采用B/S模式架构系统,开发简单,只需要连接网络即可登录本系统,不需要安装任何客户端。开发工具采用VSCode,前端采用Vue+ElementUI,后端采用Node.js,数据库采用MySQL。
涉及的技术栈
1) 前台页面:
页面结构布局采用Vue框架,可能会使用到第三方组件库Element-ui或View Design组件库、axios发送请求、html和less语法。
2) 后台服务器:
服务器搭建采用基于node的Express框架快速搭建服务器,需要引入mysql模块进行对数据库的操作
3) 数据库:
mysql数据库,Navicat可视化工具辅助操作数据库
其他题目推荐
nodejs 小程序养老驿站服务平台-vue
nodejs二手交易系统-vue
nodejs基于Nodejs的商城系统-vue
nodejs基于node的在线教育平台-vue
nodejs基于Web的牛场管理系统-vue
nodejs宜家宜业物业管理系统-vue
nodejs校园内部点餐运营与数据分析系统-vue
nodejs预约上门维修服务运营与数据分析系统的设计与实现-vue
springboot基于Java Web技术的在线银行管理系统的设计与实现-vue
springboot基于JavaWeb的房产信息管理系统的设计与实现-vue
springboot基于JavaWeb的旅行社网站系统的设计与实现-vue
springboot基于javaweb的茶园茶农文化交流平台的设计与实现-vue
springboot基于Java的任务管理系统设计与实现-vue
springboot基于Java的商城系统三端-vue
springboot基于Java的在线文献检索系统-vue
springboot基于Java的学生档案管理系统的设计与实现-vue
springboot基于Java的家电销售管理系统的设计与实现-vue
springboot基于Java的民宿山庄农家乐的设计与实现-vue
springboot基于Java的畅玩安阳平台的设计与实现-vue
springboot基于Java的高校一卡通设计与实现-vue
java基于Spring Boot和Vue的餐饮管理系统的设计与实现-vue
java基于Spring Boot的网上书店系统的设计与实现-vue
java基于SpringBoot+Vue技术的宇宙动漫网站的设计与实现-vue
java基于SpringBoot+Vue的个人健康管理小程序的设计与实现-vue
java基于Springboot卖家乐二手电子产品回收系统-vue
java基于SpringBoot校园快递代取系统-vue
java基于SpringBoot的中华诗词文化交流平台的设计与实现-vue
java基于SpringBoot的乐器推荐系统设计与实现-vue
java基于SpringBoot的摇滚乐鉴赏网站的设计与实现-vue
java基于SpringBoot的斯诺克台球馆购票系统设计-vue
java基于SpringBoot的高校科研工作管理系统的设计与实现-vue
java基于SringBoot框架的智慧博物馆预约平台的设计与实现-vue
java基于SSM的农家乐预约系统设计与实现-vue
java基于Ssm的线上花店鲜花销售商城的设计与实现-vue
java基于SSM线上视频学习系统设计与实现-vue
源码获取/联系我
标签:基于,vue,java,nodejs,系统,js,设计,in9c2 From: https://blog.csdn.net/yibo2022/article/details/143052944文章最下方名片联系我即可~