基于Node.js+Express+MySQL的学科专业网站设计与实现

来源 :中国科技博览 | 被引量 : 0次 | 上传用户:guoln
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  [摘 要]学科专业网站的特点是上传下载流量高但是后台逻辑并不复杂,本文主要根据Node.js 技术的特点,利用Express框架对网站功能模块进行构建,再结合MySQL,实现对网站平台的设计与实现。
  [关键词]网站开发;Node.js;Express;MySQL
  中图分类号:TP393.092;TP311.52 文献标识码:B 文章编号:1009-914X(2019)03-0104-01
  1、引言
  Node.js是一个非常新兴的网站开发工具,非常适合I/O密集型的实时应用系统的开发。学科专业网站是一个上传下载流量高且后台逻辑并不复杂的服务端应用程序,非常适合使用Node.js来实现。其中,Express是node.js官方唯一推荐的一种轻巧灵活、应用广泛的Web应用框架,可以为开发者快速创建简洁、高效的Web应用提供便利;MySQL是一个小型关系型数据库管理系统,由于其轻巧、速度快、成本低,被广泛地应用在Internet上的中小型网站中。
  2、系统设计
  学科专业网站是展现专业特点和自主学习相结合的一个学术平台,不仅要展示和学科相关的信息资料,还要提供大量的网络学习资源。结合以上的特点以及用户的需求,系统设计的功能模块如下:
  (1)学科简介:包括该学科相关简介、围绕该学科的一门或多门课程的相关介绍、师资队伍这三部分内容;
  (2)学科前沿:可以查看到与该学科领域相关的前沿科技新闻等;
  (3)资源共享:按类型展示资源,提供资源的查询和下载;
  (4)学习空间:进行交流、讨论和答疑的空间;
  (5)系统设置:用户权限管理、各类信息资源管理等。
  3、系统实现
  3.1 开发环境简述
  (1)安装Node.js。官网下载最新的Node.js安装包进行安装。安装完毕之后,可以打开控制台程序输入“node -v”检测是否安装成功。新版的Node.js自带npm,可直接输入“npm -v”检测是否已安装成功。
  (2)安装Express。在命令行中输入 “npm install -g express” 执行安装。同样,可以执行命令 “express -V”检测是否安装成功,正常情况下会输出版本
  (3)安装MySQL。如果只需安装mysql server,安装类型选择 “Custom”。
  (4)安装Navicat for MySQL。该软件是一款可视化操作MySQL数据库的软件,界面简单易操作,可以新建连接检测MySQL数据库是否安装成功。
  (5)安装WebStorm编辑器。WebStorm不仅可以编写代码,还提供编译打包、版本控制、自动构建以及调试等功能,被广大JS开发者誉为“Web前端开发神器”。
  以上开发环境搭建之后,便可以开始进行基于Node.js+Express+Mysql的网站平台开发。
  3.2 建立工程
  打开WebStorm,点击新建Project,创建一个Node.js Express App 的工程项目,WebStorm将自动生成工程的目录结构。其中,app.js是程序的启动文件,routes存放路由文件,views存放的页面文件,public存放工程所有静态文件,node_modules存放所有的项目依赖库。
  3.3 功能模块实现
  (1)修改app.js代码,使得ejs 模板文件使用扩展名为html 的文件。代码如下所示:
  app.set('views', path.join(__dirname, 'views'));
  app.engine('.html', require('ejs').__express);
  app.set('view engine', 'html');
  (2)根据不同的功能模块,分别实现路由文件(.js)与页面文件(.html),路由文件保存在目录 routes下,页面文件保存在views下。最后修改app.js文件:
  var introduceRouter = require('./routes/introduce');
  var newsRouter = require('./routes/news');
  (3)创建数据库模块,通过“npm install mysql -g”安装中间件MySQL,创建数据库连接文件dbconnect.js,成为和数据库进行交互的模块。
  (4)程序测试运行
  创建一个服务,并监听从端口号(8989)进入的所有连接请求,使用webStorm运行和调试按钮,可以运行该程序,运行后在浏览器输入“ http://localhost:8989/ ”查看输出结果。使用“node app.js”命令也可以启动该应用程序。
  4、网站部署
  用node.js创建的服务器,当用户关闭控制台程序之后,服务也就停止了,不能持久运行。因此,可以使用forever来管理node.js应用程序,使其永久运行。首先使用“npm install forever -g”来安装forever,安装成功之后,可按以下代码进行应用程序的管理:
  forever start/stop app.js #启动/关闭应用
  5、结语
  Node.js轻量、高效的特点,可方便、快速地构建网络应用程序平台,我们熟知的许多公司如:Yahoo、eBay、Walmart、淘宝、网易、百度等,有许多项目都是运行在Node.js之上。Node.js还可以和多种工具配合来进行开发, Express是轻量灵活的Nodejs Web应用框架,再加上与MySQL 的合作,更出色地发挥了其高效、灵活、安全、稳定的优点。Nodejs在快速的发展着,相信未来Node.js+Express+MySQL会在网站的开发应用中发挥更大的作用。
  参考文献
  [1]朴灵. 深入浅出Node.js [M]. 北京: 人民邮电出版社,2013.
  [2]王惠. 基于Node.js 的旅游网站设计[J].科技经济信息化,2017(17):32.
  [3]仇晶,黄岩,柴瑜晗.基于Node.js中间层Web开发的研究与实现[J].河北工业科技,2017(34) :120-122.
  [4]张华,曹旭光,贾嘉. 基于Express的违章查询REST Web Service设计与实现[J].软件导刊,2017(16) :67-69.
  作者简介
  孙燕明(1985-),女,福建莆田人,国防科技大学信息通信学院,助教,学历2008级硕士 研究方向:網络与信息安全。
其他文献
[摘 要]目前关于应用SAGD开发技术生产过程中的动态跟踪和动态预测,尚没有成熟的开发动态跟踪、动态调控注采参数等技术界限,影响了SAGD技术在辽河油田的推广应用,本文通过对杜84馆陶油层转入SAGD开发后的现场跟踪评价,整理并分析其多年的开发参数,开展了动态调控技术参数界限的研究,希望可以应用理论数据指导现场实施,以进一步提高措施效果。  [关键词]杜84馆陶;SAGD开发;动态参数  中图分类
期刊
[摘 要]本文在文献研究基础上,主要总结了不同活化工艺的优势和不足,并对非金属化学镀前活化工艺的发展趋势进行了展望,以供参考。  [关键词]非金属基材;化学镀;活化工艺  中图分类号:TB306 文献标识码:A 文章编号:1009-914X(2019)03-0107-01  化学镀适用于多种材质,尤其在非金属表面金属化等方面应用优势显著,被广泛应用在集成电路、印刷线路板、工程塑料、织物等领域。在非
期刊
[摘 要]以微博、微信、快手等一系列新媒体,正以以无纸化、高效率、受众广等优势,日益受到广大受众的欢迎。新媒体的快速崛起,使得我国电视新闻媒体面临新的挑战,电视新闻媒体必须要进行创新发展,才能在激烈的市场竞争中实现可持续发展。本文主要分析了新媒体对电视新闻媒体的影响,并在此基础上,重点探讨了基于新媒体背景的我国电视新闻媒体创新对策,以供参考。  [关键词]新媒体;电视新闻;新闻媒体;创新对策  中
期刊
[摘 要]紧固件间距是影响复合材料连接强度的重要因素之一,该文就紧固件间距对双剪试验件破坏载荷的影响进行了试验研究,给出了同样铺层的碳纤维复合材料在不同紧固件间距情况下的连接破坏载荷。  [关键词]复合材料 连接 坚固件间距 试验  中图分类号:TB33 文献标识码:A 文章编号:1009-914X(2019)03-0100-01  复合材料是20世纪60年代崛起的一大类新型材料,其强度高、刚度大
期刊
[摘 要]随着时代的不断进步发展,处理渣油加氢的技术已经成为了目前发展最为快速的一个技术。在这个技术当中,渣油加氢处理催化剂是其中的关键点。就目前国外而言,目前已经开发了很多种固定床渣油加氢处理催化剂,并已运用进工业中。在中国的话,其实也有很多固定床渣油加氢处理催化剂开发了出来,并且开发出的这些催化产品质量是非常好的,并且活性和稳定性也是相当不错的,也成为了PFCC的原料。  [关键词]渣油加氢;
期刊
[摘 要]对空中交通管制员来说,危险感知水平决定了其工作品质的高低。但不同人员个体无论先天的身心发育还是后天的学习培训,都存在或多或少不同,这也导致管制员存在对危险感知的差异性。需要不断进行优化以保持对危险感知的敏感度,从而更好地进行空中交通管制。本文分析了民航空中交通管制员危险感知差异。  [关键词]民航空中;交通管制员;危险感知差异;  中图分类号:V355 文献标识码:A 文章编号:1009
期刊
[摘 要]航空机轮作为航空飞机落地和着陆系统中非常关键的部分,具有一定的使用寿命,其使用寿命与航空飞机在起飞和着陆等过程中的安全息息相关,由此对航空机轮的使用寿命进行控制就是非常有必要的。本文主要对航空机轮的组成、作用以及发展历程进行了概述,列举了一些航空机轮的寿命指标,并就提高航空机轮的使用寿命提出了一些建议。  [关键词]航空机轮;使用寿命;寿命控制  中图分类号:V226.6 文献标识码:A
期刊
[摘 要]玻璃液体温度计的相关检定操作属于精密测试活动,紧紧围绕着提升和增加温度计示值的准确性,开展检定操作。温度计是否垂直插入恒温槽中、读数是否水平、是否依据相关要求进行浸没等,这些因素都会在较大程度上影响检定结果。本文重点研究了对玻璃液体温度进行检定的相关问题,以提升检定示值的可靠性与准确性。  [关键词]玻璃液体温度计;检定技术  中图分类号:TH765.23 文献标识码:A 文章编号:10
期刊
[摘 要]概述了浮空器在临近空间探测预警上的作用,在此基础上,重点阐述了浮空器作为临近空间探测平台的优势,并与卫星和预警飞机进行了比较分析。主要针对美國对于浮空器的军事应用和进展,如利用浮空器对巡航导弹的探测应用等进行了介绍,最后得出结论。  [关键词]浮空器;临近空间;探测;预警  中图分类号:E926 文献标识码:A 文章编号:1009-914X(2019)03-0099-01  1引言  临
期刊
[摘 要]近几年来,随着市场经济的发展,人们生活水平的提高,为了满足经济和人们生活的需求,我国航空需求量大大增加,其航空安全问题也备受关注。现阶段,航空不安全事件的发生与大部分空中交通管制员的情境意识下降有关,所以空中交通管制员的情境意识对预防航空不安全事件具有重要影响。本文分析了基于多传感器数据的航空管制员情境意识的计算。  [关键词]多传感器数据;航空管制员情境意识;计算;  中图分类号:B8
期刊