好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

代码生成器重构

代码生成器重构

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/

    

本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

版权信息

查看更多关于代码生成器重构的详细内容...

  阅读:40次