NodeJs:基于Node的代码生成器 之 入门教程
2013-05-21 18:57
726 查看
背景
为了方便团队和其它朋友使用我开发的这款代码生成器,特此写一篇入门教程。环境要求
Node:http://nodejs.org/。.Net4.5:http://www.microsoft.com/zh-cn/download/details.aspx?id=30653。
happy.node:http://happy.codeplex.com/SourceControl/latest。
目录结构
模板文件和最终生成的代码文件
生成程序
app.jsvar _ = require('underscore'); var DatabaseSchemaReader = require('happy.database.schem.reader').DatabaseSchemaReader; var CodeGenerator = require('happy.code.generator').CodeGenerator; var project = { projectDirectory: './outputs', //输出目录 rootNamespace: 'AutoGenerateWcfService', //根命名空间 connectionString: 'Data Source=192.168.0.14\\SQLEXPRESS;Initial Catalog=Tenoner3.0;Persist Security Info=True;User ID=sa;Password=woshishui2010;', //连接字符串 openTables: ['HrEmployees'] //要生成的表,也可以全部生成。 }; //和数据库无关的代码生成 CodeGenerator.executeTemplateDirectory('./templates/commons', project); //和数据库相关的代码生成 var schemaReader = DatabaseSchemaReader.createSqlClientReader(project.connectionString); schemaReader.readAll(function (error, schema) { if (error) { console.log(error) return; } _.each(schema.tables, function (table) { if (_.contains(project.openTables, table.name)) { var ejsOptions = _.extend({ table: table, baseNamespace: 'Test' }, project); CodeGenerator.executeTemplateDirectory('./templates/tables', ejsOptions); } }); console.log('success!') });
常见问题
如何学习模板语法?语法采用的是ejs模板的语法,不懂请参考:https://github.com/visionmedia/ejs,非常简单,十分钟学不会找我。
如何详细学习API呢?
如何指定输出的文件路径呢?
如何设置只生成一次呢?如果文件已经生成,就不要生成了。
如何扩展呢?
随便使用了,有问题可以随时交流。
备注
写的还是比较简单,作为一个开始吧!工具里自带了一些demo,也可以作为更好的入门教程使用。相关文章推荐
- Node入门教程(9)第七章:NodeJs的文件处理
- Node初学者入门,一本全面的NodeJS教程(推荐阅读)
- Node初学者入门,一本全面的NodeJS教程
- Node初学者入门,一本全面的NodeJS教程(转)
- Nodejs入门-基于Node.js的简单应用
- Node初学者入门,一本全面的NodeJS教程
- (pomelo系列入门教程)深入浅出node.js游戏服务器开发——基于Pomelo的MMO RPG开发
- 基于Nodejs生态圈的TypeScript+React开发入门教程
- node.js入门视频教程_基于node.js+Express.js+Jade+MongoDB开发Web即时聊天系统
- Node初学者入门,一本全面的NodeJS教程(转载)
- 基于Nodejs生态圈的TypeScript+React开发入门教程
- NodeJs入门教程
- Node入门教程(11)第九章:Node 的网络模块
- Node入门教程(12)第十章:Node的HTTP模块
- 少见的极好的node.js入门教程
- IOS8开发视频教程之:基于Swift实战UI从入门到精通
- IOS8开发视频教程之:基于Swift实战UI从入门到精通
- [置顶] nodejs入门实战教程(01)——从上传实例出发
- 基于Node.js的JavaScript项目构建工具gulp的使用教程
- nodejs+npm+gulp使用入门教程