NodeJs:Happy代码生成器,重构了代码,更新了文档,完善了示例,欢迎下载使用…

NodeJs:Happy代码生成器,重构了代码,更新了文档,完善了示例,欢迎下载使用…

背景

利用现有的开源框架,做了一个代码生成工具,因为以后都打算用这个工具,就重构了代码、更新了文档和完善了示例。这篇文章简单介绍一下工具的组成和API文档的使用。一则:为了我的团队成员;二则:为了让需要的朋友可以下载使用。

为什么要使用这个工具

  • 简单:核心就2个类+四个API方法、asp的模板语法(ejs)、为了方便代码生成,数据库元数据做了预处理(如:可空类型、C#类型的字符串表示)。
  • 快捷:比如:你按照三层架构定义了3个模板,且你的数据库有10个表,一个方法调用会生成30个文件(目标可以自定义)。
  • 文档齐全:中文文档,不懂英文也OK。
  • 容易DIY:没有限制、没有升级。
  • 元数据定义方便:动态类型,想咋弄咋弄。

工具结构

工具下载:http://yunpan.cn/Q5FrvqT46Ujum。

NodeJs:Happy代码生成器,重构了代码,更新了文档,完善了示例,欢迎下载使用...

示例生成项目

项目结构

NodeJs:Happy代码生成器,重构了代码,更新了文档,完善了示例,欢迎下载使用...

执行代码

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 });

备注

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

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/110130.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • igmp是负责ip组播成员管理的协议_IGMP协议

    igmp是负责ip组播成员管理的协议_IGMP协议组播协议分为主机-路由器之间的组成员关系协议和路由器-路由器之间的组播路由协议。组成员关系协议包括IGMP(互连网组管理协议)。组播路由协议分为域内组播路由协议及域间组播路由协议。域内组播路由协议包括PIM-SM、PIM-DM、DVMRP等协议,域间组播路由协议包括MBGP、MSDP等协议。IGMP(InternetGroupManagementProtocol)作为因特网组管理协议,是TCP/IP协议族中负责IP组播成员管理的协议,它用来在IP主机和与其直接相邻的组播路由器之间建立、维护组播组成员关

    2022年9月14日
  • 把表单上的数据清除就可以了

    把表单上的数据清除就可以了

    2021年10月20日
  • Android代码混淆

    Android代码混淆

    2021年11月29日
  • 屏蔽(禁止)鼠标右键代码「建议收藏」

    屏蔽(禁止)鼠标右键代码「建议收藏」屏蔽鼠标右键禁止鼠标右键onselectstart="returnfalse"禁止选择,ondragstart="returnfalse"禁止拖放,o

    2022年7月3日
  • Sublime Text3+常用插件汇总[通俗易懂]

    Sublime Text3+常用插件汇总[通俗易懂]SublimeTextSublimeText官网:https://www.sublimetext.com/下载所需要的SublimeText版本,根据提示安装。插件安装:直接下载安装包解压缩到Packages目录(preferences===>BrowsePackages显示已安装的插件)。 用PackageControl安装插件:1.按Ctrl+`(…

    2022年6月24日
  • U872在企业平台中做自定义报表显示空白的格子

    U872在企业平台中做自定义报表显示空白的格子问题:在企业平台中做自定义报表时,调试的时候通过,但是打开的时候却有记录却没有显示出数据,出现空白的格子。解决办法:在SQL查询分析器中,我们看到了源码,发现定义别名的时候后面使用了多余的空格,可能是空格引出了问题,把空格删除后,运行正常。 

    2022年9月27日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号