Fork me on GitHub
代码生成器重构

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 });
复制代码

 

备注

 

欢迎朋友们下载使用,我可以义务支持。

posted on 2013-05-17 10:10  HackerVirus  阅读(256)  评论(0编辑  收藏  举报