[发明专利]代码生成方法及装置无效
申请号: | 200810167735.8 | 申请日: | 2008-10-06 |
公开(公告)号: | CN101714078A | 公开(公告)日: | 2010-05-26 |
发明(设计)人: | 方晓 | 申请(专利权)人: | 广东金宇恒科技有限公司 |
主分类号: | G06F9/44 | 分类号: | G06F9/44 |
代理公司: | 隆天国际知识产权代理有限公司 72003 | 代理人: | 郭晓东;邢雪红 |
地址: | 528200 广*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 代码 生成 方法 装置 | ||
技术领域
本发明涉及程序控制装置,尤其涉及用于执行专门程序的装置。
背景技术
随着J2EE(JAVA2平台版)技术的发展,hibernate框架、spring框架和webwork/struts等轻型开源框架越来越多地被软件开发公司应用于B/S业务处理。这些轻型开源框架,具有轻量级、通用以及良好的扩展性等特点,可帮助解决项目开发的一些核心技术难点问题,比如:开发人员不用去考虑框架的稳定性,性能以及扩展等问题。
但是,框架只能决定整个项目的开发模式、解决一些通用性的问题,还有一些问题是其无法解决的,例如:
业务代码重复的问题。因为框架是无法知道项目业务的,那么可能会有人做一系列的业务组件来解决这个业务代码重复的问题,比如:将一些业务类似的模块做成一个组件,这种业务组件式开发可以提高代码的重用性,但是这么多的业务模块必须是业务一摸一样的,而事实上是:大部分业务有部分很相似、但又有部分完全不同的,只要存在一点点的不同,哪怕是一个验证的规则不同,就可能需要对这个组件进行修改/调整。由于实际需求的变化在项目开发过程是无法完全掌控的,也就是说,难以保证需求不会发生改变,所以,用这种业务组件的做法虽然可以解决代码重复的问题,但它必须采用滚雪球模式来满足日益变化的需求,而随着雪球越滚越大,这种做法会越来越低效,甚至难以维系。
代码规范与统一的问题。因为这个更加依赖于一个项目开发规范的管理,它会占用项目经理的很多精力,比如:一次又一次地做代码评审和代码走查,而且也很难达到令人满意的效果,并且还有可能增加开发人员和项目经理的矛盾。
展示层的开发效率与统一性问题。虽然开源的框架提供了丰富的模板技术,但是模板技术只能解决展示层的一小部分的问题,开发人员还是要针对不同的业务做展示层,有数据表明,在这种B/S模式开发下,展示层的代码量要占总代码量60%以上。另外,展示层风格的统一也是对项目开发者的专业化水平的要求之一。
发明内容
本发明旨在克服现有技术的不足,而提出一种可以解决上述框架所不能解决的问题的代码生成方法及装置。
为了实现上述目的,本发明提出一种代码生成方法,用以在J2EE开源的整合框架下生成代码,包括以下步骤:
a.根据业务情况,选择需要生成的展示类型;
b.根据数据源的情况,建立统一模型,该数据源包括:JAVA对象、XML数据、关系数据库的物理表或JSON数据;
c.根据统一模型的情况,确定实体类的类路径;
d.根据统一模型情况,对实体的属性进行加工;以及,
e.根据实体的属性,生成代码文件,该代码文件包括:后台代码、前台代码和配置代码。
该步骤a中的展示类型包括:单表、树型加单表、主从表以及树型加主从表。
该步骤b中的建立数据模型是在一人机界面下操作实现的。
该步骤d中的对实体的属性进行加工是在一人机界面下操作实现的。
该步骤e中的生成代码文件的过程进一步包括:在一人机界面下对初试的统一模型进行加工,然后通过XML文件将其转换为一精细的统一模型。
本发明的代码生成方法还包括以下步骤:f、将步骤d加工好的实体的属性保存为模板,所述模板仅包含用以加工的人机界面的页面信息。
该步骤e中的生成代码文件的过程进一步包括:生成代码查看的界面。
为了实现上述目的,本发明还提出一种代码生成装置,用以在J2EE开源的整合框架下生成代码,其包括:
一展示类型选择装置,用以根据业务情况,选择需要生成的展示类型;
一同一模型建立装置,用以根据数据源的情况,建立统一模型,该数据源包括:JAVA对象、XML数据、关系数据库的物理表或JSON数据;
一类路径选择装置,用以根据统一模型的情况,确定实体类的类路径;
一实体属性加工装置,用以根据统一模型情况,对实体的属性进行加工;以及,
一代码生成装置,用以根据实体的属性,生成代码文件,该代码文件包括:后台代码、前台代码和配置代码。
该代码生成装置设置在一B/S应用服务器中。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于广东金宇恒科技有限公司,未经广东金宇恒科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200810167735.8/2.html,转载请声明来源钻瓜专利网。