您的位置:首页 > 编程语言

CodeMaker代码生成工具【源代码下载】(转)

2011-07-01 16:42 483 查看
http://www.chenjiliang.com/Article/View.aspx?ArticleID=18928

自从接触MVC三层模型的程序后,一直觉得写Modal是体力劳动,所以就开始“偷懒”,当时就写了一个简陋的【实体类生成器】,后来稍微改进了一下,将
生成的实体类的模板提取了出来,而不是固定到代码里,这样就可以实现对生成的实体类的内容进行灵活的处理,用一些简单的标记表名获取的是列名、还是表名,
以及循环段,但缺点还是不够灵活。我也简单了解过CodeSmith,个人感觉还是有点麻烦,但不能否认CodeSmith的强大功能。借这次项目的机
会,又重新整理了思路,用了一个星期的时间完成了一个小工具——【CodeMaker代码生成工具】。

CodeMaker代码生成工具的特点:

?使用标签编辑模板文件

?插件机制

?生成多张表

截图:

(CodeMaker主界面)



标签:

例如:


复制

保存

<[/b]c:foreach[/b] item=[/b]"column"[/b]>[/b]
public const string <[/b]c:value[/b] name=[/b]"ColumnName"[/b] rule=[/b]"upper"[/b] />[/b] = "<[/b]c:value[/b] name=[/b]"ColumnName"[/b] />[/b]";
</[/b]c:foreach[/b]>[/b]


以上这段模板生成的就是数据库中每个列的列名,例如:


复制

保存

public[/b] const[/b] string[/b] USERNAME = “UserName”;


<c:foreach>和<c:value>即为CodeMaker中定义的标签,分别用于【循环】和【取值】,如果做
过Java开发的朋友可能会很熟悉<c:foreach>标签,,没错,就是JSTL中的<c:foreach>,这里只不过为
了和代码中注释的标签(例如:<summary>)区分,所以加了个前缀,,在<c:value>中,会有一些属性对值进行操
作,比如rule=”upper”,表示将该值全部改为大写等

插件机制:

该工具所需的【数据库支持】、【模板支持】、【标签支持】、【输出文件类型的支持】等都是采用插件的形式,使用者可以定义自己的标签和模板解析方
式,,只需将相关的类在配置文件中进行注册,即可在项目中使用。因为是初次接触插件这种形式,所以很多地方还不是很好,希望大家可以提一些意见或建议

目前已测试可以使用的模板有:

Hibernate(Java)和 NHibernate(.Net C#)的实体类和映射文件的生成

我会尽快完善一下该工具,然后发布,请有需要的朋友下载使用,,谢谢大家的支持。

CodeMaker_v0.1.2下载

http://files.cnblogs.com/wangzeran/CodeMaker_v0.1.2.zip

CodeMaker 源代码下载

http://files.cnblogs.com/wangzeran/CodeMaker_Src.zip
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: