步骤3:创建应用程序 使用LoopBack API创建一个应用程序很简单。 打开你的window命令行窗口,使用下面的命令来创建一个新的应用程序restexample.
接下来它会提示输入项目根路径的名称。 在这个示例中,使用restexample。 接下来它会提示输入应用程序名称。 使用默认值restexample。 slc命令现在已经创建一个名称为restexample的LoopBack应用程序,并且已经配置了这个应用程序。 如果再次执行上面的命令,仍然使用restexample命名,LoopBack会创建一个新的目录。 可以使用cd命令来修改应用程序的根路径。
现在我们已经创建完一个应用程序,接下来我们将MongoDB配置为程序的数据源。
步骤4:定义数据源 为了连通MongoDB,我们需要给应用程序增加一个数据源,运行以下命令即可: $ slc loopback:datasource 在弹出的提示符下,可以输入任意自定义的数据源名称,这里选择myMongo [?] Enter the data-source name: myMongo 这样我们就将后端的数据源定义附加到由StrongLoop支持的真实连接器上面.这里我们从列表选择MongoDB连接器. [?] Select the connector for myMongo: 步骤5:指向真实的数据源 为了连通MongoDB,我们需要指向真实际的MongoDB实例.LoopBack在datasource.json文件中定义了所有的数据源配置信息.这个文件位于应用程序的root/server目录.打开这个文件,按照如下的方式,为MongoDB增加一个数据源:
注意:要保证为MongoDB数据库提供正确的 连接 URL.针对这个例子,我创建了一个名为 restexample 的数据库,它用来作为数据源. 步骤6:导入数据到MongoDB(mmmmm 啤酒) 就像本文Java部分说到的那样,我们需要加载数据集到MongoDB数据库中.如果你已经按照本文说到的方法完成了这个步骤,然后打算使用同一个数据库,你可以忽略步骤6,直接跳到步骤7. 首先,你需要下载一个包含所有要返回信息的JSON文件,可以从如下的URL获取: https://dl.dropboxusercontent.com/u/72466829/beers.json 数据集文件下载完毕后,直接使用如下的mongoimport命令将它加载到数据库: $ mongoimport --jsonArray -d yourDBName -c beers --type json --file /tmp/beers.json -h yourMongoHost --port 你应该可以看到如下的结果: connected to: 127.6.189.2:27017 步骤7:创造我们自己的啤酒模型 在Java世界里,由此可以想到对象模型.它代表这一个对象,只是在这里,这个对象是啤酒.LoopBack通过命令行,提供了一种创建模型对象的简便方式.打开终端窗口,进入到工程文件夹,输入如下命令: $ slc loopback:model 这将会开启一个交互式的会话来定义模型.首先需要输入的是模型名称,这里输入"beer".接下来会提示,这个模型应该附加到的数据源,这里选择之前创建的myMongo数据源. [?] Enter the model name: beer 接下来提示,是否通过REST将此API暴露出来.当然,这里希望这样. [?] Expose beer via the REST API? Yes 最后,为模型选择网络复数名,这里模型名为beer,所以复数为beers(默认).敲击Enter键接受默认值. [?] Custom plural form (used to build REST URL): 接下来会提示定义模型属性.对这个示例程序,我们关注名称和对啤酒的描述. Enter an empty property name when done. 只要敲击了Enter,就会提示输入各个指定属性的数据类型.第一个项是name,这里选择字符串类型.选择字符串类型,然后敲击Enter. [?] Property type: (Use arrow keys) 接下来,按照同样的方式创建description属性,接着会要求输入数据类型.它同样是一个字符串类型,选择字符串选项,然后敲击Enter. Let's add another beer property. 祝贺!你已经使用LoopBack结合Node完成了模型对象的创建.如果想查看在这个过程中真正创建了什么,可以打开位于应用程序root/common/models目录的beer.json文件,滚动到这个文件的最后,将会看到如下模型:
这里可以看到,我们创建了一个模型,同时,name和description属性已经赋予了这个模型. 在/server/model-config.js文件中,可以注意到,文件中包含一些额外的字段,包括public和datasource.其中public域指定我们希望通过一个REST网络服务将此模型暴露给外部.datasource域则指定这个模型的CRUD操作将会用到的数据源.
步骤8:沉浸在看到beers的喜悦中 祝贺!你已经创建了第一个Node.js应用程序,其中包含可以获取beer信息的REST网络服务.最后,我们需要做的就是部署这个应用程序. 庆幸的是,部署是已经很容易的事情.可以通过在应用程序根目录执行如下命令来完成: $ slc run 只要应用程序一运行,就可以通过浏览器转到如下的URL来确认部署是否成功: 相当酷,是不是? LoopBack同时也包含了一个允许查看应用程序所有可用服务的页面,包括Beer模型和我们创建的REST服务,将浏览器指向如下的URL即可查看: 页面加载成功后,你会看到下面的界面,我们已经创建了beers节点作为博客的一部分,我把/beers端点进行高亮显示了: 你可以点击/beers来展开可供调用的API,你可以操作并测试一下,如下图所示: 结论在这篇博文中,我展示了如何使用java EE 去创建一个rest服务,这个服务能够返回Pabst啤酒公司的啤酒产品清单数据。 之后我又使用node.js以及基于node.js的loopback框架使用很少的代码实现了相同功能的rest服务。 最重要的是,LoopBack API 还对beer实体的增删查改提供了默认的实现,使得我们不用再写一行代码就得到了一个具有完整增删查改功能的rest服务。 下面的清单对博文中涉及的javaEE和node.js各自特性进行一个对比:
接下来的内容?
|