背景
利用现有的开源框架,做了一个代码生成工具,因为以后都打算用这个工具,就重构了代码、更新了文档和完善了示例。这篇文章简单介绍一下工具的组成和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 });
备注
欢迎朋友们下载使用,我可以义务支持。
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/110130.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...