我一直在线审查代码生成器的过程。我开始使用一个名为FastCode(http://www.3pintech.com/products/fast-code/)的有前途但不受欢迎的Eclipse插件开始搜索。
它具有更高的学习曲线,需要权衡灵活性。这是我找到的,因为我们的许多应用程序遵循一定的标准,我需要使用生成的代码来维护。不幸的是,这是非常错误的,我认为这可能是一个死的项目。
On SpringFuse。这看起来很有希望,但我有一些问题。
1)我们已经深入到项目开发生命周期中,我只需要在MYSql数据库中使用它作为新表的子集。 Springfuse似乎需要一个"让我们生成你的整个应用程序"方法
2)我们不使用Hibernate,而SpringFuse似乎与此相关
3)它似乎不是可配置的
我想要做的是从数据库表开始,然后从那里生成相应的POJO,用于CRUD操作的DAO,用于调用DAO的服务层和用于测试每个层的单元测试。我们有一个标准模式来创建我将使用的DAO层。
我正在考虑使用Perl或其他模板系统来做这件事,但这将涉及我的大量编码。我想知道SO社区是否知道在这里使用的任何好技术。
我实际上认为这里的在线服务很棒,比如很棒的JSON2POJO,但我认为它不存在。
答案 0 :(得分:0)
经过一番研究,最适合我的解决方案是使用FreeMarker Java模板引擎并编写自己的代码生成系统。使用正则表达式来解析我们的数据库文件并将我们现有的一些代码转换为FreeMarker模板只花了几天时间就产生了一个系统,它将为我们节省大量时间。
我建议这种方法适用于高度自定义的企业应用程序的类似用户。大多数渲染的代码都不适合黄金时段,但我生成的基本样板代码可以节省大量时间。
FreeMarker的模板系统与JSTL等其他技术非常相似,它会抛出非常具描述性的错误信息,因此设计模板非常简单。