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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • xinetd 说明

    xinetd 说明xinetd 是什么 1 什么是 xinetdextend 是新一代的网络守护进程服务程序 又叫超级 Internet 服务器 常用来管理多种轻量级 Internet 服务 xinetd 提供类似于 inetd tcp wrapper 的功能 但是更加

    2025年10月25日
    5
  • 可外链相册大合集!

    可外链相册大合集!博主个人的贴图策略是:本地照片上传用Photobucket收集网页上的照片用poco。(这两个工具在第6和第12项有介绍),并在此强烈鄙视一下,所谓的外联吧,如果不是开淘宝店,就不要用。刚开始用,感觉不错和Photobucket 一样好用,也号称免费,可是一个多月后图片全被封了,然后告诉我不交钱,图片永远不能用!!博主好不容易上传,贴图,加整理的博文就这样被无情地毁了。,强烈抗议这种欺骗消费者的行

    2022年6月15日
    47
  • Lena.jpg 与图像处理的渊源

    Lena.jpg 与图像处理的渊源作为图像处理研究人员,相信大家一定认识下面这幅图片(下载自:https://en.wikipedia.org/wiki/Lenna):这就是Lenna本人了,全图是很sexy的,大家去看吧(http://www.lenna.org/full/l_hires.jpg)。熟悉图像处理或者压缩的工程师、研究人员和学生经常在他们的实验或者项目任务里使用“Lenna”或者“Lena”的图像。Lenna…

    2022年6月19日
    33
  • 详述 Java 语言中的格式化输出

    详述 Java 语言中的格式化输出1前言相信大家在学习Java语言的时候,见到的第一条输出语句,就是:System.out.println(“HelloWorld”);毫无疑问,该语句的作用就是将HelloWorld打印到控制台,格式也非常的简单,直接按原格式输出。但是,如果将输出的内容换成“数值”或者“日期”呢?其打印的格式是否会有什么不同的变化呢?在本文中,就让咱们一起看一看在Java语言中,数值和日期是如何进行格

    2022年7月8日
    20
  • Nginx 出现 403 Forbidden 最终解决方法

    Nginx 出现 403 Forbidden 最终解决方法

    2022年2月8日
    52
  • Plants Vs Zombies Online_vascular plant

    Plants Vs Zombies Online_vascular plant24 83 2 6 63 910 10 164题解贪心+二分#include<bits/stdc++.h>using namespace std;typedef long long ll;const int N = 2e5 + 10;ll a[N],st[N]; int n,m;bool check(ll x){ memset(st,0,sizeof st); ll cnt = 0; for(int i = 1;i <= ..

    2022年8月8日
    6

发表回复

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

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