代码生成器重构
NodeJs:Happy代码生成器,重构了代码,更新了文档,完善了示例,欢迎下载使用
背景
利用现有的开源框架,做了一个代码生成工具,因为以后都打算用这个工具,就重构了代码、更新了文档和完善了示例。这篇文章简单介绍一下工具的组成和API文档的使用。一则:为了我的团队成员;二则:为了让需要的朋友可以下载使用。
为什么要使用这个工具
简单:核心就2个类+四个API方法、asp的模板语法(ejs)、为了方便代码生成,数据库元数据做了预处理(如:可空类型、C#类型的字符串表示)。
快捷:比如:你按照三层架构定义了3个模板,且你的数据库有10个表,一个方法调用会生成30个文件(目标可以自定义)。
文档齐全:中文文档,不懂英文也OK。
容易DIY:没有限制、没有升级。
元数据定义方便:动态类型,想咋弄咋弄。
工具结构
工具下载: http://yunpan.cn/Q5FrvqT46Ujum 。
示例生成项目
项目结构
执行代码
test.js
1 var util = require('util' ); 2 var _ = require('underscore' ); 3 4 var DatabaseSchemaReader = require('database_schem_reader' ).DatabaseSchemaReader; 5 var CodeGenerator = require('code_generator' ).CodeGenerator; 6 7 var schemaReader = DatabaseSchemaReader.createSqlClientReader( 8 'Data Source=(LocalDB)\\v11.0;AttachDbFilename=' + __dirname + '\\test_database\\Test.mdf;Integrated Security=True;Connect Timeout=30' 9 ); 10 11 schemaReader.readAll( function (error, schema) { 12 _.each(schema.tables, function (table) { 13 14 CodeGenerator.executeTemplateDirectory('./templates/table' , { 15 table: table, 16 baseNamespace: 'Test' 17 }); 18 19 }); 20 21 console.log('success!' ) 22 });
备注
欢迎朋友们下载使用,我可以义务支持。
作者: Leo_wl
出处: http://www.cnblogs.com/Leo_wl/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
版权信息声明:本文来自网络,不代表【好得很程序员自学网】立场,转载请注明出处:http://haodehen.cn/did45703