.net企业级架构实战之3——业务对象建模及codesmith模板
2008-09-14 18:17 莫耶 阅读(2116) 评论(1) 编辑 收藏 举报 在软件开发的需求调研完成时,应着手设计业务对象模型。
模型应恰到好处地容纳业务对系统的需求——不冗余致拖累系统,不残缺致无法满足业务,因此,建模忠实地反映了调研工作的成效。
建模的工具软件有很多,如Rational、Visual Case、UModel,不过本人基本上习惯了PowerDesigner:功能适用,各种模型能自由转化,具有不错的正反向数据库工程能力,还能良好地支持C#。OK,来建一个数据模型(用于ORM):
1、PowerDesigner数据库建模
PowerDesigner版本为12.0,“新建”一个“Physical Data Model”(物理数据模型),在其中构建一张“Table”(表)。此处的TB_ARTIST代表的是容纳艺人对象的表;
需要将它在数据库中生成,可以在PowerDesigner中完成这步操作。点选“DataBase”下的“Connect”(Ctrl+Shit+N),将开始连接数据库:
如果(Machine data source)数据源中不存在需要的数据库连接,可点击“Add“按钮,添加一个ODBC连接,操作很简单,此处不累述;连接上数据库后,选中要生成的表对象,选取“Database”菜单下的“Genernate Database”项,生成描述表结构的sql脚本文件:
此处可以选择“Generation type”(生成类型),是只生成脚本,还是通过ODBC连接直接生成表。流程大同小异,选择“ODBC Generation“,一步到位:
在生成操作前,会弹出“Excute SQL Query”对话框,提示确认即将运行的脚本内容,点击“Run”按钮,表就会生成好在数据库中。
基本上,PowerDesigner提供了完备的数据库工程功能,以辅助软件工程师专心设计。
2、CodeSmith模板生成nHibernate实体:
利用模板工具,生成实体类这种事情几乎不用写一行代码,效率提升,精力省下来干点值得投入的事。
这类工具软件也不少,CodeSmith就是其中的佼佼者之一。由于贯穿此系列中的实例用到nHibernate,所以就来看看模板生成nHibernate实体类(C#)和配置文件(hbm.xml)吧:
CodeSmith版本为4.1.2,选择右侧的"nHibernate.cst”模板,按右键选"Excute"项:
在弹出的对话框中,需要配置 生成文件的存放路径、ODBC数据源、生成的实体类程序集名称、生成的实体类引用空间名称、需要剔除的表名前缀(生成的实体类文件名称):
点击“Generate”,数据库中的表,就变成了一个个pono类文件和.hbm.xml配置文件,躺在文件夹里了。
借用工具,我们可以四两拨千金,专注于业务开发。在随后的实例中,将利用这些生成的实体模型,集成到系统的数据访问体系(Spring.net+nHibernate)中去。当然,那也是件很轻松的事~
欢迎转载,但必须保留文章的署名老莫的帐本子
并保留此链接:http://moye.cnblogs.com/
如有疑问请发邮件:moyerock@gmail.com