web-dev-qa-db-fra.com

Existe-t-il un utilitaire générateur CRUD en Java (n'importe quel framework) comme Scaffolding in Rails?

Existe-t-il un utilitaire de génération de CRUD dans Java comme Scaffolding in Rails? Peut être dans n'importe quel framework ou même des servlets simples. Doit générer des contrôleurs + des vues en jsp, pas seulement du code DAO ...

49
Sathish

Spring Roo semble être exactement ce que vous recherchez: la génération de code CRUD, crache du Java Java qui peut être fait fonctionner entièrement indépendamment du framework).

28
Michael Borgwardt

Grails a un échafaudage.

15
Hates_

Voir le plugin Telosys Tools Eclipse sur http://www.telosys.org/

Le plugin se connecte à la base de données, génère un référentiel léger, vous permet de personnaliser le référentiel si nécessaire et génère Java Beans, DAO, convertisseurs XML, ScreenMaps (JSP) etc ...

Vous pouvez créer une application Web Data Centric en quelques minutes

11
J Thomson

Utilisez JHipster . Il est construit sur l'outil d'échafaudage avant populaire "yeoman". Il génère non seulement votre back-end, y compris les contrôleurs, DAO, la sécurité, la gestion des utilisateurs, les métriques du système et de l'API, la journalisation, etc. en utilisant Spring Boot & Spring MVC 4, mais génère également votre front-end en utilisant angular js Vous obtenez également des cadeaux comme grognement, karma et bower entièrement configurés et prêts à l'emploi! Parallèlement à cela, vous obtenez également le versionnement de la base de données!

Il a également des sous-générateurs pour générer des entités de domaine qui génèrent votre Java et le frontal correspondant pour gérer ses données.

Il faut 10 minutes pour lancer une application Web complète.

8
Varun Achar

JBoss Seam dispose d'un utilitaire de script appelé seam-gen qui créera des échafaudages:

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

8
Matt Sidesinger

AppFuse .

Il est très puissant, il sera peut-être trop puissant pour la tâche en question, mais il le fait bien.

6
Bozho

C'est peut-être un peu hors contexte, mais pour Java EE, il y a Jboss Forge . Il y a un exemple qui l'utilise.

5
jacktrades

Il y a krank sur Google Code. Je ne l'ai pas encore essayé, mais cela semble prometteur.

5
Adam Jaskiewicz

Netbeans a quelque chose comme ça.

Il y a une démo ici: http://www.netbeans.org/kb/55/persistence-demo.html

5
Sarel Botha

Je suis tombé sur cette question et j'ai essayé de nombreuses réponses suggérées. Au final, j'ai trouvé Lightadmin . Il ne génère pas de code CRUD, mais fournit un front-end sympa aux classes Entity avec très peu de code. Pour rendre l'entité User disponible via l'interface Web Lightadmin, il suffit de deux modifications dans les fichiers XML, puis d'une classe UserAdministration:

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

Vous pouvez configurer les noms de champs (et probablement beaucoup plus) dans cette classe Administration, mais je le trouve déjà très utile sans autre configuration. Le guide Mise en route montre vraiment à quel point c'est facile. Après ces étapes simples, vous pouvez ouvrir l'interface d'administration sur http://localhost:8080/TestApp/admin.

5
Benedikt Köppel

Jetez un œil à des outils comme:

MetaWidget http://www.metawidget.org/

ISIS http://incubator.Apache.org/isis/index.html (auparavant Naked Objects)

Ils génèrent l'interface utilisateur à la volée mais vous permettent de personnaliser l'interface utilisateur si nécessaire.

Beaucoup mieux que la génération de code.

4
Noel Grandin

Depuis que la question a été posée, il existe plusieurs frameworks pour Java qui est sorti. Consultez Spring Roo, et Play Framework . Il y a aussi Skyway Builder , qui je pense est antérieur aux deux.

3
Jean Barmash

Découvrez Tynamo

3
Kalle

Jetez un oeil à Minuteproject

Et essayez c'est démos .

Concernant les technologies

Si vous recherchez juste ORM + DAO, essayez la piste BSLA-JPA2 (BSLA signifie Basic Spring Layer Architecture). Il favorise le motif du masque pour faciliter la recherche.

Si vous voulez une persistance orientée enregistrement actif, regardez JOOQ ou Roo

Si vous voulez des servlets, regardez minuteproject 4 Openxava ou 4 Primefaces

Si vous voulez que les portlets regardent Liferay Service builder minuteproject générera service.xml entrée depuis votre base de données.

Concernant votre modèle

Si vous voulez que votre code (Java) respecte la convention Java et non la convention DB utilise minuteproject. Il dispose de fonctions d'enrichissement qui permettent de:

  • Entités de package (table/vue)
  • Appliquer des conventions de dénomination d'entité/champ
  • Appliquer des stéréotypes/contraintes/validations
  • récupérer les relations (one2many, many2one, many2many) s'il manque des clés étrangères ex ici
  • Et beaucoup plus

Cet enrichissement peut être appliqué individuellement au champ/entité/package ou globalement via des conventions ( Ainsi, vous configurez vos propres conventions ).

3
xflorian

NetBeans peut générer CRUD pour la base de données existante dans JSF.

Qu'en est-il d'OpenXava http://openxava.org ?

3
Andrey

Voir Jspresso - http://www.jspresso.org/
Il comporte plusieurs frontaux (Flex, HTML pur/Javascript, Swing, etc.) mais il ne vous donne pas beaucoup de liberté sur la partie vue. Cela vaut la peine de vérifier cependant.

2
user246645

Essayez Grails sur http://www.grails.org/

2
Azizasm

N'oubliez pas Play . Extrêmement facile à utiliser. Une fois que vous avez de l'expérience en Ruby on Rails il vous sera facile de vous adapter en Java aussi).

2
takacsot

essayez de generjee

Il génère CRUD et vous fournit un backend et un frontend en utilisant des spécifications telles que JPA, EJB, le cadre JSF en utilisant des primefaces, Java sécurité, authentification, audit, exportation Excel et pdf, gestion des utilisateurs, enregistrement des utilisateurs.

Ensuite, vous pouvez télécharger le code source ou déployer sur heroku. Je l'ai testé et cela m'a donné les résultats attendus

2
daniel rubambura
1
OscarRyz

reinCRUD est un module complémentaire vaadin qui fonctionne à l'aide d'entités d'hibernation annotées. Vous pouvez créer une application CRUD en quelques minutes et vous pouvez réutiliser des composants tels que des listes, des formulaires et des formulaires de recherche.

1
Florian

Si vous avez un exemple de projet contenant le type d'architecture CRUD (ou autre) que vous souhaitez, alors Simple Scaffolding pourrait être une approche utile.

Il s'agit d'une seule classe qui analyse votre base de code existante et crée des modèles que vous pouvez ensuite appliquer à d'autres entités. Par exemple, MongoUserDao peut être transformé en un modèle qui génère ensuite, par exemple, MongoCustomerDao. Il fonctionne avec n'importe quel code et appareils de test.

Très basique, mais fait le travail et c'est FOSS sous MIT license.

Le dépôt GitHub est ici: https://github.com/gary-rowe/SimpleScaffolding

0
Gary Rowe