码迷,mamicode.com
首页 > 其他好文 > 详细

使用PowerDesigner进行代码生成

时间:2016-04-16 16:59:33      阅读:317      评论:0      收藏:0      [点我收藏+]

标签:

  很多代码生成器都选择了从表结构来生成领域模型,这样的方案有一个前提,就是领域模型和数据库表结构是同构的,也就是说领域模型中的类和数据库中的记录结构十分吻合,这样数据库表结构可以简单的直接映射到领域模型。 

    但是在业务逻辑比较复杂的情况下,对象方案和关系方案往往是不相配的,通常在两者之间有一个数据映射器来隔离两者,这时两者是相互不可见的,相互独立演变的。这样,基于表结构的代码生成领域模型的类就行不通了,而应该使用对象模型。而这样的代码生成几乎不需要自己在写代码生成器,可以使用PowerDesigner9。 

    PowerDesigner9自己就已经具有代码生成功能,你只要建立一个Object_Oriented Model(语言选择C#,类图),完成类设计后,使用Language菜单下的“Generate C# Code”。生成完后看看代码文件,所有的属性都没有get和set方法,要想生成这两个方法,就要自己动手修改PowerDesigner的代码生成模板,可以选择Language菜单下的“Edit Current Object Language”,在弹出的窗口中修改代码模板: 
技术分享

可以在value部分看到代码生成的脚本,如果你使用codesmith等代码生成工具写过模板,这段脚本就很容易理解了,只要自己修改下就可以了,例如,我把其中的第三行:[%visibility% ][%flags% ]%dataType% _%Code%[ = %InitialValue%]; 

这句改成: 

private %dataType% _%Code%[ = %InitialValue%]; 

public %dataType% %Code% 



get 



return _%Code%; 



set 



value = _%Code%; 





另外两个if分支中的也作相应的修改,再生成一次看看,get和set函数都有了。 

C#的代码模板是PowerDesigner的安装目录下的Resource Files\Object Languages目录下的csharp.xol文件,打开后可以看到实际上是一个xml文件,这样你就可以自己定义代码生成的模板了。 

来源:http://tech.it168.com/m/2007-08-29/200708291905519.shtml

相关文章:

powerdesigner自动生成代码的修改

powerDesigner类图生成JAVA代码  

使用PowerDesigner进行代码生成

标签:

原文地址:http://www.cnblogs.com/endv/p/5398556.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!