数据库使用的mongodb
mongodb下载:https://www.mongodb.com/
mongodb GUI:https://robomongo.org/

使用中间件koa来搭建框架
使用中间件monk来链接数据库

  1. // 导入koa,和koa 1.x不同,在koa2中,我们导入的是一个class,因此用大写的Koa表示:
  2. const Koa = require('koa');
  3. const Router = require('koa-router');
  4. const Monk = require('monk');
  5. // 创建一个Koa对象表示web app本身:
  6. const app = new Koa();
  7. const router=new Router();
  8. const db=new Monk('localhost/School');//链接到库
  9. const students = db.get('student');//表
  10.  
  11. // 打印request URL:
  12. app.use(async (ctx, next) => {
  13. console.log(`Process ${ctx.request.method} ${ctx.request.url}...`);
  14. await next();
  15. });
  16.  
  17. // 对于任何请求,app将调用该异步函数处理请求:
  18. router.get('/', async ( ctx ) => {
  19. ctx.response.type = 'text/html';
  20. ctx.body = 'hi'
  21. })
  22. router.get('/getList', async ( ctx ) => {
  23. let st = await students.find();
  24. ctx.response.type = 'application/json';
  25. ctx.body = st;
  26. })
  27.  
  28. // 加载路由中间件
  29. //解释:app.use 加载用于处理http請求的middleware(中间件),当一个请求来的时候,会依次被这些 middlewares处理。
  30. app.use(router.routes());
  31.  
  32. // 在端口3000监听:
  33. app.listen(3000, () => {
  34. console.log('[myapp]已经运行,端口为300')
  35. })

效果预览

koa2链接mongodb的更多相关文章

  1. nodejs学习笔记二——链接mongodb

    a.安装mongoose库用来链接mongodb数据库 安装mongodb数据库参考mongodb安装 前言(怨言) 本来是想安装mongodb库来链接mongodb的,命令行到nodejs工程目录: ...

  2. nodejs链接mongodb数据库

    nodeJs链接mongodb数据库有两种方式,第一种是利用官方自己开发的npm包mongodb链接,第二种是利用第三方npm包mongoose链接:这里如果是window操作系统,建议用mongoo ...

  3. nodejs 初次链接 mongodb 的详细细节

    时间  2016-06-2613:05:16 在前端的学习也有一段时间了,学习了html,css,javascript,jqery,ajax,php,mysql,学习了这些,了解了一些皮毛,也没有什么 ...

  4. 远程链接mongoDB robomongo

    墙裂推荐一个软件robomongo 下载地址:https://robomongo.org/download 最初不用这个软件的时候需要shell链接mongoDB,折腾了半天结果版本不匹配 用robo ...

  5. Java 链接mongodb 执行集合查询

    public static String mongodbConnection(String phone){ String sendCode = null; //创建mongodb链接地址 MongoC ...

  6. 在IDEA中用三个jar包链接MongoDB数据库——实现增删改查

    安装Robo 3T连接MongoDB数据库教程:https://blog.csdn.net/baidu_39298625/article/details/98845789 使用Robo 3T操作Mon ...

  7. nodejs配置nginx 以后链接mongodb数据库

    服务器 :windows server2008 R2 反向代理 :nginx 1.15.1 for window 64位 数据库:mongodb 4 64位 使用框架express 首先下载nodej ...

  8. node链接mongoDB及封装

    // 这个模块中封装所有对数据库的常用操作 const MongoClient = require('mongodb').MongoClient; const assert = require('as ...

  9. 二、PHP链接mongodb

    <?php $db=new Mongo("mongodb://sa:sa@localhost:27017"); $c=$db->selectDB("TestD ...

随机推荐

  1. 还是PHPExcel问题

    //设置自动设置宽度,但是对中文不起作用..(中文自动长还在研究当中) $objPHPExcel->getActiveSheet()->getColumnDimension('A')-&g ...

  2. [转]Linux动态库的种种要点

    linux下使用动态库,基本用起来还是很容易.但如果我们的程序中大量使用动态库来实现各种框架/插件,那么就会遇到一些坑,掌握这些坑才有利于程序更稳健地运行. 本篇先谈谈动态库符号方面的问题. 测试代码 ...

  3. img与特殊布局下对浏览器渲染的剖析

    补白 在内联元素中,分为替换元素和非替换元素(不了解的同学可以百度一下),非替换元素是不可以设置尺寸的,而替换元素作为特殊的内联元素,由于其自身拥有尺寸属性,所以其的尺寸是可以进行再次设置的. 此文适 ...

  4. 剑指 offer set 22 数组中的逆序数

    总结 1. 题目为归并排序的变形, 不过我完全没想到 2. 在归并排序进行字符组 merge 时, 统计逆序数. merge 后, 两个子数组是有序的了, 下次再 merge 的时候就能以 o(n) ...

  5. JVM内存简析

    1.程序计数器: 这是一块较小的内存空间,它的作用可以看作是当前线程所执行的字节码的行号指示器,线程私有. 2.Java虚拟机栈: 它是Java方法执行的内存模型,每一个方法被调用到执行完成的过程,就 ...

  6. URL地址传值型多条件搜索JS

    function ResetSearchVal(objArray) { var strUrl = location.href; ; i < objArray.length; i++) { var ...

  7. poj_1836 动态规划

    题目大意 N个士兵排成一排,不是按照高度顺序排列.现在想要从中去掉几名士兵,从而使得队伍中剩余的士兵能够看到这排最左边或者最右边的那个士兵,某士兵能够看到最左边(或最右边)的士兵指这名士兵和最左边(或 ...

  8. 进击的RecyclerView入门二(来点小装饰?)

    接着上一讲,我们看到我们的Demo可以正常的运行,并且能自动加载网络图片,那么为了后面观察的方便,我们取消这种自动加载的功能,使用两个按钮来代替,分别用来增加一个数据和减少一个数据.截图如下: 正在我 ...

  9. Content-Negotiation Header Quality Values

    HTTP: The Definitive Guide 17.3.2 Content-Negotiation Header Quality Values The HTTP protocol define ...

  10. android开发笔记(一)Android studio 输入法

    以前都是用的时候查资料做些增添即可,现在下决心系统学习下. 首先发现developer.Android.com在开发工具上开始推出了 Android Studio了,不过他自己没有sdk manage ...