Bootstrap

(一)项目实战

肝了一周。。终于把 node 、koa 的基础知识学完了。。长舒一口气。。看了一下工作中中间层的代码,大部分都能看懂了,还是很有收获的,下面我就开始实战了,实战中的项目参考了 从0 到 1 搭建微博、书籍《 Koa 和 Node.js 开发实战》这两个项目,下面把项目中的收获记录在这里。这两个项目 的 技术选型:vue + node + koa + mysql + ejs

微博的项目我准备手打代码:https://github.com/123luckybing/sina_weibo.git ,代码放在 github 上了

《 Koa 和 Node.js 开发实战》就准备把书看一遍,不打代码了。。话不多说。。继续开始肝了。。。

时间安排:从 0 到 1 搭建微博准备7天 完成吧,《 Koa 和 Node.js 开发实战》看书的话 3天吧,还有 《深入浅出 Node.js 》这本书也得看一下,先放到以后再说吧。。捂脸哭。。。

(一)数据库知识 增删改查

// 增
insert  into <表名> (列名) values (列值)
// 举例
insert into area(province, type, year, firstScore, secondScore, thirdScore) values ('黑龙江', '文科', '2015','495','410','333') 

// 删
delete from 表名称 where 列名称 = 值
// 举例
delete from users where username = 'zfb'

// 改
update <表名> set <列名=更新值> where <更新条件>
// 举例
update area set realName='lisi' where id=3

// 查:
select <列名> from <表名> where <查询条件表达试> order by <排序的列名>[asc或desc]
// 举例
select * from area where username='zhangsan' and password='123'

// 模糊查询:
// username中含有zhang的 zhang前后加% 
selct * from area where username like '%zhang%' or username='lisi'
// 排序
select * from area where username='zhangsan' order by id; // (按照id排序,默认升序)

select * from area where username='zhangsan' order by id desc; // (降序)

// 查询总数
select count(任意一列的列名) as `count` from 表名
select count(id) as `count` from ' users
// count 是关键字 需要转义一下

// 分页查询
select * from 表名称 order by desc/asc limit 每页数量 offset 页数
select * from blogs order by desc limit 20 offset 20

// 连表查询
select * from 表名 inner join 表名 on 信息=信息
// 举例
select * from blogs inner join user on users.id = blogs.userId

外键:

(1)背景:

比如两个表,博客表以及用户表,当用户改了自己的昵称,不仅仅用户表昵称字段需要修改,博客表用户昵称也需要修改,将这两个表的字段连起来,这就是外键

(二)koa 前缀路由

const router = new Router({
  prefix: '/zz' // 定义前缀
});

(三)在项目中安装 mysql 数据

这样就可以通过服务端操控数据库了

具体步骤参考官方文档:https://www.npmjs.com/package/mysql

在项目中把请求的查询自己封装一下,封装成Promise

悦读

道可道,非常道;名可名,非常名。 无名,天地之始,有名,万物之母。 故常无欲,以观其妙,常有欲,以观其徼。 此两者,同出而异名,同谓之玄,玄之又玄,众妙之门。

;