Comment puis-je générer une entité (POJO) à partir d'un modèle de base de données à l'aide d'IntelliJ IDEA 10. Je crée une "source de données" dans IntelliJ mais je ne sais pas comment générer le POJO.
MISE À JOUR:
Dans IntelliJ 16, cette fonctionnalité est désormais implémentée. Les étapes pour le faire sont:
1. Base de données afficher le menu contextuel
2. Extensions scriptées
3. Générer des POJO
Vous pouvez lire plus ici:
Demande de fonctionnalité: autoriser "générer des classes à partir du schéma de base de données" pour les développeurs plain-JDBC
Vous devez d'abord dire à intelliJ que vous utilisez Hibernate (je suppose que vous l'êtes si vous avez besoin de l'orm pojo de la table)
Maintenant que vous avez configuré votre facette de configuration de mise en veille prolongée, vous pouvez extraire vos pojos.
La valeur par défaut Extensions scriptéesGenerate POJOs.groovy
n'est pas très bon lorsqu'il s'agit de tables avec trait de soulignement (ce qui est très courant).
Je fais donc quelques modifications.
Le code principal
def calcFields(DasObject table) {
DasUtil.getColumns(table).reduce([]) { fields, col ->
def spec = Case.LOWER.apply(col.dataType.specification)
def typeStr = typeMapping.find { p, t -> p.matcher(spec).find() }.value
fields += [[
name : javaName(col.name, false),
type : typeStr,
annos: """
/**
* $col.comment
*/"""]]
}
}
static String javaName(String str, boolean capitalize) {
def s = CaseFormat.LOWER_UNDERSCORE.to(CaseFormat.UPPER_CAMEL, str);
capitalize || s.length() == 1 ? s : Case.LOWER.apply(s[0]) + s[1..-1]
}
Vous pouvez trouver l'intégralité de Gist ici https://Gist.github.com/aristotll/ad799a7462e8b705b26103944cca24a6