【发布时间】:2010-09-26 11:50:46
【问题描述】:
我知道内置代码生成和重构可以使用 Eclipse 中的“源”和“重构”菜单项来完成。
我还使用 Commonclipse 插件来轻松使用构建 hashCode、toString、equals 方法的 Apache Commons 类。
为了在 Eclipse IDE 下轻松生成 Java 源代码,我应该注意哪些其他插件或工具?
【问题讨论】:
标签: java eclipse code-generation
我知道内置代码生成和重构可以使用 Eclipse 中的“源”和“重构”菜单项来完成。
我还使用 Commonclipse 插件来轻松使用构建 hashCode、toString、equals 方法的 Apache Commons 类。
为了在 Eclipse IDE 下轻松生成 Java 源代码,我应该注意哪些其他插件或工具?
【问题讨论】:
标签: java eclipse code-generation
Telosys (http://www.telosys.org/) 是一个简单高效的 Java 代码生成工具。
此代码生成器可作为 Eclipse 插件 (http://marketplace.eclipse.org/content/telosys-tools) 和命令行界面 (https://github.com/telosys-tools-bricks/telosys-cli/wiki) 使用。
定义所有实体的模型可以从头开始(DSL 文本模型)或从现有数据库(DB 模型)创建。
模板基于 Velocity (http://velocity.apache.org),可从 GitHub 下载。所有模板都是可定制的,如有必要,可以从头开始创建新模板。 现有模板可以为 JPA、Spring MVC、数据库文档、REST API 等生成代码。
【讨论】:
您可以查看http://fast-code.sourceforge.net/ 了解基于弹簧的应用程序。您只需键入 foo 即可创建 FooService 和 FooServiceImpl 以及配置。它也有很好的方法来创建单元测试。可以在这里查看所有模板:http://fast-code.sourceforge.net/templates-config.xml
【讨论】:
Project Lombok 使您能够有效地以速记方式编码。比如你可以声明一个类,添加一个lombok注解,它会自动生成getter、setter、equals、hashCode、toString和构造函数。
【讨论】:
Eclipse Xtend 是一个非常强大的代码生成器,除其他外,它支持闭包和数据类 - 自动 getter/setters/hashCode/equals。
【讨论】:
如果您有兴趣进一步了解代码生成并进入模型驱动的软件开发,您应该查看openArchitectureWare。
如果您完成了Getting Started 教程,您应该很快就能上手。
【讨论】:
以下是您可能会感兴趣的三个 java 代码生成器:
The JmrTeam generator:Jet Model Robotization 可用于 Eclipse(即将推出 IDEA),可用于在任何类型的项目(Maven、Gradle、Java、Python、Php 等)中管理和生成代码,任何类型框架(springboot/spring/springMVC、React/Vue/Angular、hibernate、mybatis、struts、JPA等)。
javapoet:用于生成 .java 源文件的 Java API。
jhipster:用于创建Spring Boot + Angular/React/Vue项目的开源应用平台。生成器源代码在here
【讨论】:
这真的取决于你想做什么? J2EE、Web 服务、Swing ...
我做了大量的网络服务开发并且非常依赖:
对于 Axis2 开发:
有一个很好的关于 Axis2 插件的教程,叫做 Developing Web Services Using Apache Axis2 Eclipse Plugins - Part 1
【讨论】:
我认为这并不是您真正要问的问题,但对于模型驱动开发,我认为 Borland's Together 仍然是目前最好的基于 Eclipse 的工具。
【讨论】:
我刚刚发布了我的个人 Java 代码生成器:JCG。你可以在
找到它https://github.com/makkax/JavaCodeGenerator
它是一个用 Java 编写的生成器,您可以在其中直接编写所有 Java 类型、字段、方法和注解,而无需模板。
使用 JCG,您可以轻松生成任意数量的具有复杂相互依赖性的 Java 类型。
【讨论】:
我不知道你是否是 UML 的忠实粉丝,但 IBM Rational suite 非常强大。
我用它从 UML 转移到生成的模拟对象,但这只是它可以做的一小部分
【讨论】:
如果您想生成独立于技术的代码,Zontroy 是一个不错的选择。所以你不需要考虑你的项目是否是JavaEE项目。您可以从数据库中以任何技术生成任何文件。
【讨论】:
jsoncafe.com JAVA、Android Gson、Swift Class、Swift Codable、c#等模型类的在线代码生成器
【讨论】: