Java(任何框架)中是否有一个CRUD生成器实用程序,如Rails中的Scaffolding?

时间:2009-01-05 21:26:54

标签: java ruby-on-rails crud scaffolding

Java中有一个CRUD生成器实用程序,比如Rails中的Scaffolding吗?可以在任何框架甚至是普通的servlet中。必须在jsp中生成控制器+视图,而不仅仅是DAO代码......

22 个答案:

答案 0 :(得分:27)

Spring Roo似乎正是您正在寻找的:CRUD代码生成,吐出纯Java代码,可以使tun完全独立于框架。

答案 1 :(得分:15)

Grails有脚手架。

答案 2 :(得分:11)

请参阅http://www.telosys.org/

上的Telosys Tools Eclipse插件

插件连接到数据库,生成轻量级存储库,允许您在必要时自定义存储库,并生成Java Bean,DAO,XML转换器,ScreenMaps(JSP)等...

您可以在几分钟内构建以数据为中心的Web应用程序

答案 3 :(得分:8)

使用JHipster。它建立在流行的前端脚手架工具'yeoman'上。它不仅使用Spring Boot& amp;生成您的后端,包括控制器,dao,安全性,用户管理,系统和API指标,日志记录等。 Spring MVC 4,但也使用角度js生成前端。你也可以获得像grunt,karma和bower这样的好东西,完全可以使用!除此之外,您还可以获得数据库版本控制!

它还有用于生成域实体的子生成器,用于生成java和相应的前端以管理它的数据。

运行完整的webapp需要10分钟。

答案 4 :(得分:8)

JBoss Seam有一个名为seam-gen的脚本实用程序,它将创建脚手架:

http://docs.jboss.org/seam/1.1BETA2/reference/en/html/gettingstarted.html

答案 5 :(得分:6)

AppFuse

它非常强大,也许它对于有问题的任务来说太强大了,但它做得很好。

答案 6 :(得分:5)

Google Code上有krank。我还没有尝试过,但看起来很有希望。

答案 7 :(得分:5)

我遇到了这个问题并尝试了许多建议的答案。最后,我找到了Lightadmin。它不会生成CRUD代码,但只需很少的代码就可以为Entity类提供一个很好的前端。要通过Lightadmin Web界面使User实体可用,它只需要对XML文件进行两处更改,然后需要UserAdministration类:

public class UserAdministration extends AdministrationConfiguration<User> {
    /* empty */
}

您可以在此Administration类中配置字段名称(可能还有更多),但我发现它在没有任何进一步配置的情况下已经非常有用。 Getting Started指南真正展示了它的简单性。完成这些简单步骤后,您可以通过http://localhost:8080/TestApp/admin打开管理界面。

答案 8 :(得分:5)

可能有点脱离背景,但对于Java EE,有Jboss Forge。有example使用它。

答案 9 :(得分:5)

Netbeans有类似的东西。

这里有一个演示:http://www.netbeans.org/kb/55/persistence-demo.html

答案 10 :(得分:4)

看看像这样的工具:

MetaWidget http://www.metawidget.org/

ISIS http://incubator.apache.org/isis/index.html(以前是Naked Objects)

他们“即时”生成UI,但允许您在必要时自定义UI。

比代码生成好多了。

答案 11 :(得分:3)

NetBeans可以为JSF中的现有数据库生成CRUD。

OpenXava http://openxava.org怎么样?

答案 12 :(得分:3)

查看Minuteproject

试试demos

关于技术

如果您只是寻找ORM + DAO,请尝试使用BSLA-JPA2轨道(BSLA意为基本弹簧层架构)。它促进了掩模图案以便于搜索。

如果您希望使用Active记录导向持久性,请查看JOOQ或Roo

如果您希望servlet查看minuteproject 4 Openxava4 Primefaces

如果您希望portlet查看Liferay Service builder minuteproject将从您的数据库生成service.xml输入。

关于您的模型

如果您希望您的代码(java)遵循java约定而不是DB约定使用minuteproject。它有丰富的设施,允许:

  • 包实体(表/视图)
  • 应用实体/字段命名约定
  • 应用构造型/约束/验证
  • 如果缺少外键here
  • ,则检索关系(one2many,many2one,many2many)
  • many more

这种丰富可以在字段/实体/包中单独应用,也可以通过约定全局应用(因此,您可以配置自己的约定)。

答案 13 :(得分:3)

查看Tynamo

答案 14 :(得分:3)

自从提出这个问题以来,已经有几个Java框架出现了。查看Spring Roo和Play Framework。还有Skyway Builder,我认为它们都早于两者。

答案 15 :(得分:2)

见Jspresso - http://www.jspresso.org/
它具有多个前端(Flex,纯HTML / Javascript,Swing等),但它不会给视图部分带来太多自由。值得检查一下。

答案 16 :(得分:2)

不要忘记Play。非常容易使用。一旦你有了ruby on rails的经验,你也很容易适应Java。

答案 17 :(得分:2)

http://www.grails.org/

尝试Grails

答案 18 :(得分:1)

reinCRUD是一个vaadin加载项,使用带注释的hibernate实体。您可以在几分钟内创建CRUD应用程序,并且可以重复使用列表,表单和搜索表单等组件。

答案 19 :(得分:1)

答案 20 :(得分:1)

尝试generjee

它生成CRUD并使用JPA,EJB,使用primefaces的JSF框架,java安全性,身份验证,审计,excel和pdf导出,用户管理,用户注册等规范为您提供后端和前端。

之后您可以下载源代码或部署到heroku。 我已经对它进行了测试,它给了我预期的结果

答案 21 :(得分:0)

如果您有一个包含所需CRUD(或其他)架构的示例项目,那么Simple Scaffolding可能是一种有用的方法。

这是一个单独的类,它扫描现有的代码库并创建模板,然后您可以将这些模板应用于其他实体。例如,MongoUserDao可以转换为模板,然后生成MongoCustomerDao。它适用于任何代码和测试装置。

非常基本,但是完成工作并且它是MIT许可下的FOSS。

GitHub回购在这里:https://github.com/gary-rowe/SimpleScaffolding