From 21d72c4a80fe2937d0c4ddd20624b27adbcd989b Mon Sep 17 00:00:00 2001 From: lizi00164331 Date: Mon, 7 Aug 2017 11:39:39 +0800 Subject: Upload the ESR GUI seed code Issue-ID: AAI-68 Change-Id: Ia50ce0570c2fabecd77199d4e8454f56fe587c4e Signed-off-by: lizi00164331 --- .../node_modules/mongoose/examples/lean/lean.js | 84 ++++++++++++++++++++++ 1 file changed, 84 insertions(+) create mode 100644 common/src/main/webapp/usageguide/appserver/node_modules/mongoose/examples/lean/lean.js (limited to 'common/src/main/webapp/usageguide/appserver/node_modules/mongoose/examples/lean/lean.js') diff --git a/common/src/main/webapp/usageguide/appserver/node_modules/mongoose/examples/lean/lean.js b/common/src/main/webapp/usageguide/appserver/node_modules/mongoose/examples/lean/lean.js new file mode 100644 index 0000000..763367f --- /dev/null +++ b/common/src/main/webapp/usageguide/appserver/node_modules/mongoose/examples/lean/lean.js @@ -0,0 +1,84 @@ + +// import async to make control flow simplier +var async = require('async'); + +// import the rest of the normal stuff +var mongoose = require('../../lib'); + +require('./person.js')(); + +var Person = mongoose.model('Person'); + +// define some dummy data +var data = [ + { + name: 'bill', + age: 25, + birthday: new Date().setFullYear((new Date().getFullYear() - 25)), + gender: 'Male', + likes: ['movies', 'games', 'dogs'] + }, + { + name: 'mary', + age: 30, + birthday: new Date().setFullYear((new Date().getFullYear() - 30)), + gender: 'Female', + likes: ['movies', 'birds', 'cats'] + }, + { + name: 'bob', + age: 21, + birthday: new Date().setFullYear((new Date().getFullYear() - 21)), + gender: 'Male', + likes: ['tv', 'games', 'rabbits'] + }, + { + name: 'lilly', + age: 26, + birthday: new Date().setFullYear((new Date().getFullYear() - 26)), + gender: 'Female', + likes: ['books', 'cats', 'dogs'] + }, + { + name: 'alucard', + age: 1000, + birthday: new Date().setFullYear((new Date().getFullYear() - 1000)), + gender: 'Male', + likes: ['glasses', 'wine', 'the night'] + } +]; + + +mongoose.connect('mongodb://localhost/persons', function(err) { + if (err) throw err; + + // create all of the dummy people + async.each(data, function(item, cb) { + Person.create(item, cb); + }, function(err) { + if (err) { + // handle error + } + + // lean queries return just plain javascript objects, not + // MongooseDocuments. This makes them good for high performance read + // situations + + // when using .lean() the default is true, but you can explicitly set the + // value by passing in a boolean value. IE. .lean(false) + var q = Person.find({age: {$lt: 1000}}).sort('age').limit(2).lean(); + q.exec(function(err, results) { + if (err) throw err; + console.log('Are the results MongooseDocuments?: %s', results[0] instanceof mongoose.Document); + + console.log(results); + cleanup(); + }); + }); +}); + +function cleanup() { + Person.remove(function() { + mongoose.disconnect(); + }); +} -- cgit 1.2.3-korg