这里有新鲜出炉的 Node.js 教程,程序狗速度看过来!
Node.js 是一个基于 Chrome JavaScript 运行时建立的一个平台, 用来方便地搭建快速的 易于扩展的网络应用 · Node.js 借助事件驱动, 非阻塞 I/O 模型变得轻量和高效, 非常适合 运行在分布式设备 的 数据密集型 的实时应用
Module: cassandra-driver Installation
- $ npm install cassandra-driver
Example
- var cassandra = require('cassandra-driver')
- var client = new cassandra.Client({ contactPoints: ['localhost'] })
- client.execute('select key from system.local', function (err, result) {
- if (err) throw err
- console.log(result.rows[0])
- })
Module: couchnode Installation
- $ npm install couchbase
Example
- var couchbase = require('couchbase') var bucket = (new couchbase.Cluster('http://localhost:8091')).openBucket('bucketName')
- // add a document to a bucket
- bucket.insert('document-key', {
- name: 'Matt',
- shoeSize: 13
- },
- function(err, result) {
- if (err) {
- console.log(err)
- } else {
- console.log(result)
- }
- })
- // get all documents with shoe size 13
- var n1ql = 'SELECT d.* FROM `bucketName` d WHERE shoeSize = $1'
- var query = N1qlQuery.fromString(n1ql) bucket.query(query, [13],
- function(err, result) {
- if (err) {
- console.log(err)
- } else {
- console.log(result)
- }
- })
Module: nano Installation
- $ npm install nano
Example
- var nano = require('nano')('http://localhost:5984') nano.db.create('books') var books = nano.db.use('books')
- // Insert a book document in the books database
- books.insert({
- name: 'The Art of war'
- },
- null,
- function(err, body) {
- if (err) {
- console.log(err)
- } else {
- console.log(body)
- }
- })
- // Get a list of all books
- books.list(function(err, body) {
- if (err) {
- console.log(err)
- } else {
- console.log(body.rows)
- }
- })
Module: levelup Installation
- $ npm install level levelup leveldown
Example
- var levelup = require('levelup')
- var db = levelup('./mydb')
- db.put('name', 'LevelUP', function (err) {
- if (err) return console.log('Ooops!', err)
- db.get('name', function (err, value) {
- if (err) return console.log('Ooops!', err)
- console.log('name=' + value)
- })
- })
Module: mysql Installation
- $ npm install mysql
Example
- var mysql = require('mysql')
- var connection = mysql.createConnection({
- host : 'localhost',
- user : 'dbuser',
- password : 's3kreee7',
- database : 'my_db'
- });
- connection.connect()
- connection.query('SELECT 1 + 1 AS solution', function (err, rows, fields) {
- if (err) throw err
- console.log('The solution is: ', rows[0].solution)
- })
- connection.end()
Module: mongodb Installation
- $ npm install mongodb
Example
- var MongoClient = require('mongodb').MongoClient
- MongoClient.connect('mongodb://localhost:27017/animals', function (err, db) {
- if (err) throw err
- db.collection('mammals').find().toArray(function (err, result) {
- if (err) throw err
- console.log(result)
- })
- })
If you want an object model driver for MongoDB, look at Mongoose.
Module: apoc Installation
- $ npm install apoc
Example
- var apoc = require('apoc')
- apoc.query('match (n) return n').exec().then(
- function (response) {
- console.log(response)
- },
- function (fail) {
- console.log(fail)
- }
- )
Module: pg-promise Installation
- $ npm install pg-promise
Example
- var pgp = require('pg-promise')(/*options*/)
- var db = pgp('postgres://username:password@host:port/database')
- db.one('SELECT $1 AS value', 123)
- .then(function (data) {
- console.log('DATA:', data.value)
- })
- .catch(function (error) {
- console.log('ERROR:', error)
- })
Module: redis Installation
- $ npm install redis
Example
- var client = require('redis').createClient()
- client.on('error', function (err) {
- console.log('Error ' + err)
- })
- client.set('string key', 'string val', redis.print)
- client.hset('hash key', 'hashtest 1', 'some value', redis.print)
- client.hset(['hash key', 'hashtest 2', 'some other value'], redis.print)
- client.hkeys('hash key', function (err, replies) {
- console.log(replies.length + ' replies:')
- replies.forEach(function (reply, i) {
- console.log(' ' + i + ': ' + reply)
- })
- client.quit()
- })
Module: tedious Installation
- $ npm install tedious
Example
- var Connection = require('tedious').Connection;
- var Request = require('tedious').Request;
- var config = {
- userName: 'your_username',
- // update me
- password: 'your_password',
- // update me
- server: 'localhost'
- }
- var connection = new Connection(config);
- connection.on('connect',
- function(err) {
- if (err) {
- console.log(err);
- } else {
- executeStatement();
- }
- });
- function executeStatement() {
- request = new Request("select 123, 'hello world'",
- function(err, rowCount) {
- if (err) {
- console.log(err);
- } else {
- console.log(rowCount + ' rows');
- }
- connection.close();
- });
- request.on('row',
- function(columns) {
- columns.forEach(function(column) {
- if (column.value === null) {
- console.log('NULL');
- } else {
- console.log(column.value);
- }
- });
- });
- connection.execSql(request);
- }
Module: sqlite3 Installation
- $ npm install sqlite3
Example
- var sqlite3 = require('sqlite3').verbose()
- var db = new sqlite3.Database(':memory:')
- db.serialize(function () {
- db.run('CREATE TABLE lorem (info TEXT)')
- var stmt = db.prepare('INSERT INTO lorem VALUES (?)')
- for (var i = 0; i < 10; i++) {
- stmt.run('Ipsum ' + i)
- }
- stmt.finalize()
- db.each('SELECT rowid AS id, info FROM lorem', function (err, row) {
- console.log(row.id + ': ' + row.info)
- })
- })
- db.close()
Module: elasticsearch Installation
- $ npm install elasticsearch
Example
- var elasticsearch = require('elasticsearch')
- var client = elasticsearch.Client({
- host: 'localhost:9200'
- })
- client.search({
- index: 'books',
- type: 'book',
- body: {
- query: {
- multi_match: {
- query: 'express js',
- fields: ['title', 'description']
- }
- }
- }
- }).then(function (response) {
- var hits = response.hits.hits
- }, function (error) {
- console.trace(error.message)
- })
来源: http://www.phperz.com/article/17/0328/326671.html