Java Web Du Projet De La Structure Des Meilleures Pratiques
Je suis en train de créer un nouveau Projet Web Java qui est de l'utilisation d'Hibernate et un standard de l'Architecture MVC.
Je viens de commencer à disposition les projets de la structure et en faisant cela, j'ai commencé à regarder autour pour voir si il y a des normes dans ce domaine, sur l'endroit où les Contrôleurs doivent aller et généralement la meilleure façon de poser tout. Cependant, je n'ai pas vraiment trouvé toutes les lignes directrices.
Donc ce que je suis curieux de savoir, c'est
- Quelqu'un est-il au courant de toute les pratiques exemplaires des lignes directrices pour la présentation d'un Projet Web Java?
- Quelqu'un aurait-il un ensemble particulier de dur des règles qu'ils suivent toujours pour les différents types de projet?
- Les gens ont tendance à diviser les paquets par les différentes couches comme une présentation, des affaires, et de l'application?
OriginalL'auteur Mark Davidson | 2009-01-31
Vous devez vous connecter pour publier un commentaire.
Pour continuer ma réponse précédente, j'ai de nombreux projets web. Dans chacun d'eux la structure de la src est plus ou moins la même. Les paquets sont à peu près séparés à 3 couches logiques.
Première est la couche de présentation, comme vous l'avez dit, pour les servlets, app auditeurs, et des aides.
Deuxième, il y a une couche pour la veille prolongée model/db de la couche d'accès. La troisième couche de logique métier. Cependant, parfois, la frontière entre ces couches n'est pas clair. Si vous êtes en utilisant hibernate pour la db d'accès, puis le modèle est défini par hibernate classes, donc je les ai mis dans la même zone que les objets dao. E. g. com.de l'échantillon.modèle est l'hibernation des objets de données et com.de l'échantillon.de modèle.dao tenir les objets dao.
Si l'utilisation de droite jdbc (généralement avec le Printemps), puis parfois, je le trouve plus commode de mettre les objets de données de plus près à la couche logique métier plutôt qu'avec la db de la couche d'accès.
(Le reste de la substance se situe généralement sous la couche de gestion).
OriginalL'auteur Yoni
Cela dépend vraiment de votre framework web.
Par exemple, si vous utilisez le Guichet, java fichiers et des pages web de co-exister dans le même répertoire tout en
dans la plupart des autres cadres, pages.fichiers jsp ou quel que soit votre présentation du moteur) et
code-behind (fichiers java ) sont totalement distinctes.
Afin de lire la documentation fournie avec votre framework (Spring MVC, Struts, JSF e.t.c).
Une autre bonne proposition est d'utiliser un générateur Maven pour générer un squelette de votre cadre spécifique. Certains frameworks web (tels que la couture) ont même leur propre outil de génération de code qui pose les fondations de votre projet web.
Ma seule bonne suggestion (qui n'est pas mentionné par Yoni) pour le répertoire src est
de faire des paquets en fonction des activités à la fin et PAS en fonction du type/de la couche
Cela signifie que les paquets pour
et PAS
La seconde structure est trop générique, tend à résoudre autour d'énormes paquets sans rapport avec des trucs et est difficile à maintenir.
sous-couches. Pour l'exemple que j'ai donner à des clients des clients.des actions, des clients.les servlets, les clients.les entités e.t.c. Mais dans un très gros projet de sous-paquets peut être sous-fins comme vous le dites. Pas de bonne réponse à mon humble avis
OriginalL'auteur kazanaki
D'abord, à suivre la structure classique d'un ide comme Eclipse, Netbeans, etc.
Dans Eclipse, par exemple, tout est arrangé déjà avec un WEB-INF et META-INF dossiers, le packaging et le déploiement est facile. Les Classes de code source (généralement sous src) est automatiquement copié dans WEB-INF/classes.
Il y a quelques autres considérations:
droit, merci pour cette remarque. Tant qu'ils sont stockés sous WEB-INF...
Quelques bons points, il y Yoni. Je suis cependant toujours intéressé par les peuples avis sur la façon dont, en particulier, le répertoire src devrait être structuré avec des packages, aka serait servlets être mis dans un paquet de présentation, car ils sont principalement appel JSP contenu.
OriginalL'auteur Yoni
OriginalL'auteur Chetan
Utiliser le Maven webapp archétype de mise en page.
J'ai inclus les
java
dossier dans l'exemple ici, c'était peut-être évident, mais il a été laissé dans le lien ci-dessus pour une raison quelconque.OriginalL'auteur Leif Gruenwoldt