Générer tous les appels setXXX d'un POJO dans Eclipse?
Je fais actuellement beaucoup de tests avec des entités JPA, où je dois continuer à appeler les méthodes setter sur l'entité qui ressemble à ceci:
myEntity.setXXX(value);
myEntity.setYYY(value);
myEntity.setZZZ(value);
Y a-t-il un raccourci ou un menu magique dans Eclipse IDE pour générer tous les appels de méthode setter qui commencent par "set", comme ceux affichés dans le popup Ctrl-space (auto completion) (je pense que les méthodes héritées de L'objet ne sont pas affichées au popup) ?
Donc im imaginer quelque chose comme:
- I type myEntity.ensemble
- et myEntity.set* sont générés immédiatement
Je suis un programmeur paresseux et utilise actuellement Eclipse Helios IDE.
Merci !
Modifier
Je ne cherche pas source - > generate getter et setter, car cela m'aiderait à générer les méthodes elles-mêmes. Générer le method calls
est ce que je veux réaliser.
5 réponses
J'ai trouvé la réponse (je cherchais toujours Cette chose)...
Le plus simple est d'étendre les membres de la classe dans "Package Explorer", de les Trier par nom, de sélectionner plusieurs setters, puis vous avez dans le presse-papiers tous les noms de méthodes...
;-)
J'aime la réponse de @ Oscar. Cela conduit cependant à un certain nettoyage.
Quand je colle dans le presse-papiers, j'obtiens quelque chose qui ressemble à ceci:
setOne(int)
setTwo(String)
Afin de nettoyer cela, j'ajoute d'abord des points-virgules Avec cette recherche / remplacer regexp:
search = (.)$
replace = \1;
Ensuite, j'Ajoute les appels getter (en supposant que l'objet de données entrant est nommé "data"):
search = s(et.*)\(.*
replace = s\1(data.g\1());
Cela ne gère pas plusieurs arguments dans un appel de méthode...
Vous pouvez utiliser le contour à droite. Là, vous pouvez trier par ordre alphabétique ou par ordre de déclaration en utilisant le bouton de la barre d'outils de la vue.
Et puis vous pouvez filtrer non requis ceci.
D'ici aussi, vous pouvez copier..toutes les fonctions setter ou getters fonctions noms...
Source --> Generate Getters and Setters...
Vous pouvez également y accéder via la commande Quick Fix (Ctrl+1
) lorsque le curseur est sur une propriété.
modifier
Si vous cherchez simplement un moyen plus rapide de copier les propriétés d'un objet à un autre, je vous suggère de regarder en utilisant la réflexion. Je pense que ce chemin serait beaucoup plus facile à long terme, puis générant le même code à plusieurs reprises.
Communes BeanUtils peut enlever un peu de la douleur dans l'écriture pure réflexion code. Par exemple, copyProperties
prend un bean de destination et un autre bean ou une carte comme source.
Il existe un plugin eclipse pour le faire. Le nom du plugin est **
FastCode
**. Il ya tellement de nombreux modèles. Parmi ceux-ci, il y a un modèle pour générer du code pour créer un objet de la classe et la méthode all setters.