Node.js 数据库 简单操作

来源:互联网 发布:猴岛游戏论坛 网站源码 编辑:程序博客网 时间:2024/05/18 17:41

Node.js ------后端系统

 

Js 的运行环境,在谷歌控制台运行,在cmd也一样可以执行js代码,使用V8引擎,本地浏览器环境

 

在node.js 不需要浏览器环境,直接在node环境运行

1.直接 node 回车键-----直接把代码粘贴----执行

2.直接node 要运行的文件名.js,----执行

 

 

创建一个简单的服务器

 

在nodejs运行

var a = 1;

console.log(a)

require配合这个module.exports home自定义的模块

var b =require("./home.js")

console.log(b.add(3,4))

 

 

创建一个简单的服务器

步骤1 用require,引入http模块

步骤2用http模块的createServer方法创建一个服务器,createServer接受一个函数

步骤3用response.end方法相应数据到前端

步骤4用listen打开接口

 

代码如下:

 

var http =require("http");

//引入mysql第三方模块

var mysql =require("mysql");

//处理路由的原生模块

var url =require("url");

//处理路由参数的模块

var querystring =require("querystring")

 

//进行数据库连接

var connection =mysql.createConnection({

host:'localhost',

user:'test',

password:'123456789',

database:'laoyao'

});

 

//执行连接

connection.connect();

 

 

 

命令行:cd js 定位到js文件,因为js文件应该放在与index.html的同一级下

否则出现错误:

 

创建一个服务器应用

 

var http =require('http');

 

http.createServer(function(request, response) {

 

// 发送 HTTP 头部

// HTTP 状态值: 200 :OK

// 内容类型: text/plain

response.writeHead(200,{'Content-Type': 'text/plain'});

 

// 发送响应数据"Hello World"

response.end('HelloWorld');

response.end(JSON.stringify(result))

 

}).listen(8888);

 

// 终端打印如下信息

console.log('Serverrunning at http://127.0.0.1:8888/');

 

 

 

从数据库把数据拉回来:

<!--  database-sql-> nodejs(中间件)-ajax->前端 -->

 

1.在命令行输入 cnmp  installmyaql

 

2.//引人mysql第三方模块

var mysql      = require('mysql');

var connection =mysql.createConnection({

  host    : 'localhost',

  user    : 'abc',

  password : 'abc',

  database : 'test'

});

 

connection.connect();

connection.query('SELECT* From classs', function (error, results, fields) {

  if (error) throw error;

  console.log('The solution is: ', results);

});

 

//断开数据库的链接

connection.end();

 

 

注意:每执行一次代码都要重启服务器

 

最终从数据库导出来的结果如下:

 

 

解决跨域:

 

http.createServer(function(request,response) {

//解决跨域

response.setHeader("Access-Control-Allow-Origin","*");

//设置头部信息

/*response.writeHead(200,{

'Content-Type':'text/css'

});*/

//请求的东西 ajax发过来的东西

//response就是服务器相应给浏览器

 

 

node.js链接到数据库代码:

https://www.npmjs.com/package/mysql ----借鉴代码网站

 

 

 

 

<!--  database-sql<- nodejs(中间件)<-ajax-前端 -->

 

//mysql

varobj = {

name:'teacher',

}

console.log("路由:" + request.url) //abc?name=yao

console.log("路由的路径:" + url.parse(request.url).pathname) // /abc

varpathname = url.parse(request.url).pathname;

console.log("路由的参数:" + url.parse(request.url).query) //name=yap&skill=ps

varparamsStr = url.parse(request.url).query;

console.log("路由的参数从字符串转为对象")

console.log(querystring.parse(paramsStr))

varparams = querystring.parse(paramsStr);

//console.log("路由参数:"+url.parse(string).query)

//处理路由的逻辑

//url.parse(string).pathname

 


0 0
原创粉丝点击