手动创建项目文件
1.在指定目录下,右击创建项目文件夹。
2.使用git init 命令把此文件下内容变成可由git进行版本控制的文件。
3.执行“npm init -y”命令,创建package.json文件,初始化
4.执行“npm init koa”命令,安装koa,此时项目路径下会生成一个package-lock.json文件。
创建server
1.创建一个app.js文件,然后将以下代码复制进去
const Koa = require(\'koa\');
const app = new Koa();
const main = ctx => {
ctx.response.body = \'Hello World\';
}
app.use(main);
app.listen(3000);
然后执行以下命令
node app.js
最后在浏览器打开http://127.0.0.1:3000/这个连接,如果看到熟悉的“Hello World”就说明你的server已经启动成功啦。
连接数据库
这里我是用的是mysql,mac上mysql的安装可以参考我的这篇mac上n次安装与卸载mysql。
先安装nodejs的mysql包
npm install mysql
创建连接:
const Koa = require(\'koa\');
var mysql = require(\'mysql\'); //导入模块
const app = new Koa();
var connection = mysql.createConnection({
host:\'http://localhost\',
user:\'root\',
port: \'3306\',
password:\'\',
database:\'test\'
});
connection.connect(); //创建连接
操作数据库
附上自己创建表的sql语句
create table record(
id INT NOT NULL AUTO_INCREMENT,
userId INT NOT NULL,
text TEXT,
foreign key(userId) references user(id),
PRIMARY KEY(id)
);
create table record_img(
id INT NOT NULL AUTO_INCREMENT,
recordId INT NOT NULL,
imgSrc varchar(255) NOT NULL,
foreign key(recordId) references record(id),
PRIMARY KEY(id)
);
create table user(
id INT NOT NULL AUTO_INCREMENT,
nickName varchar(200) NOT NULL,
gender varchar(200),
city varchar(200),
province varchar(200),
country varchar(200),
birthday DATE,
PRIMARY KEY(id)
);
对数据库的基本操作
- 查询
var sql =\'select * from user\';
connection.query(sql,function(err,result){
if(err){
console.log(\'[SELECT ERROR] - \',err.message);
return;
}
console.log(\'--------------------------SELECT----------------------------\');
console.log(result);
console.log(\'------------------------------------------------------------\\n\\n\');
});
- 修改
connection.connect(); //创建连接
var sql =\'update user set nickName = ? where id = ?\';
var sqlpar=[\'julieCopy\',1];
connection.query(sql,sqlpar,function(err,result){
if(err){
console.log(\'[UPDATE ERROR] - \',err.message);
return;
}
console.log(\'--------------------------SELECT----------------------------\');
console.log(\'UPDATE affectedRows\',result.affectedRows);
console.log(\'------------------------------------------------------------\\n\\n\');
});
connection.end();
- 增加
connection.connect(); //创建连接
var addSql =\'insert into user (nickName) values(?)\';
var addPar= [\'jessicacopy\'];
connection.query(addSql,addPar,function(err,result){
if(err){
console.log(\'[insert ERROR] - \',err.message);
return;
}
console.log(\'--------------------------SELECT----------------------------\');
console.log(\'UPDATE affectedRows\',result.affectedRows);
console.log(\'------------------------------------------------------------\\n\\n\');
});
connection.end();
- 删除
connection.connect(); //创建连接
var delSql =\'delete from user where id = 2\';
connection.query(delSql,function(err,result){
if(err){
console.log(\'[UPDATE ERROR] - \',err.message);
return;
}
console.log(\'--------------------------SELECT----------------------------\');
console.log(\'UPDATE affectedRows\',result.affectedRows);
console.log(\'------------------------------------------------------------\\n\\n\');
});
connection.end();