Est-il possible d'écrire des méthodes de base de données dans le fichier de propriétés, comme certaines requêtes de base de données et peuvent être accédées en utilisant des servlets qui peuvent réduire le code? Webapp peut accéder au fichier de propriétés.servlets et fichier de ressources
Répondre
- un fichier propeties peut avoir des paires clé-valeur comme query1 = select quelque chose de quelque part
Vous pouvez combiner 1 et 2 afin d'exécuter des requêtes SQL en webapp, mais je ne suis pas sûr qu'il réduira le code (vous devez toujours ouvrir la connexion db, lire les rs, fermer la connexion, etc.)
merci à tous ... est-il possible d'écrire des méthodes dans un fichier de propriétés? – srikanth
Bien sûr, vous pouvez placer vos requêtes dans un fichier de propriétés mais si vous utilisez JDBC, le code dépend beaucoup de ces requêtes. Le nombre de paramètres et leur ordre ne doivent pas être modifiés, il en va de même pour les résultats, donc je ne vois pas beaucoup d'avantages à le faire.
Vous pouvez stocker les requêtes dans un fichier auquel la webapp peut accéder, puis utiliser des instructions préparées pour les exécuter. En faisant cela, vos chaînes de requêtes sont dans un fichier externe, tout ce que vous faites dans le code est de remplir les paramètres, mais vous devrez d'abord lire les chaînes de requête de ce que vous appelez "fichier de propriétés".
Exemple:
String query; // read the query from the "properties file"
//Suppose you put "INSERT INTO BOOKS (AUTHOR, TITLE) VALUES (?, ?);"
PreparedStatement ps = conn.prepareStatement(query);
ps.setString(1, "param1");
ps.setString(2, "param2");
ps.executeUpdate();
Je l'ai vu le travail DB fait toutes sortes de façons de SQL directement dans le codage dur chaque méthode que l'accès une base de données, SQL stockées dans les chaînes statiques dans les fichiers centraux, pour qu'il soit stocké dans les fichiers de propriétés et enfin bien sûr ORMs tels que Hibernate. J'ai même vu SQL stocké dans des DBs!
Je ne recommanderais jamais de stocker les requêtes SQL (ou ORM) loin du code qui en a besoin. La raison simple est que, d'après mon expérience, en rompant la connexion, les développeurs commencent à réutiliser et à utiliser les requêtes. Au fil du temps, les développeurs perdent la trace de la requête utilisée et commencent à en ajouter de nouveaux pour éviter le risque de casser des choses. Finalement, ils finissent avec des fichiers pleins de requêtes sans aucune idée de ceux qui sont même utilisés. Le pire que j'ai jamais vu était où les développeurs centralisaient le SQL et le freinaient en parties individuelles. Il était presque impossible de dire si un changement briserait les choses. L'argument initial pour séparer les requêtes est généralement «maintenance» ou «au cas où nous changerions la base de données», etc. Mais à la fin de la journée, cela devient un problème plus important que ce que nous avions l'intention de résoudre.
Pour résumer, je vous recommande de stocker les requêtes aussi près du code qui les utilise que possible. Hibernate et similaire vont un long chemin à faire de cette solution pragmatique.
- 1. Servlets et communication AJAX
- 2. servlets et classpath
- 3. Téléchargement groupé et servlets Java
- 4. Servlets et relation backend
- 5. Tampons de protocole Google et servlets
- 6. comment lier les servlets du fichier html
- 7. Servlets et didacticiels vidéo JSP
- 8. Erreur dans jsp et servlets
- 9. Fichier de ressources d'inclusion et de référence de classe C#
- 10. Impossible de charger les ressources du fichier de ressources
- 11. JSP/Servlets: Comment puis-je télécharger un fichier zip, décompressez et extraire le fichier CSV
- 12. Ressources RESTful et problèmes de ressources orthogonales
- 13. Servlets encodeRedirectURL
- 14. Servlets de test unitaire
- 15. Télécharger un fichier depuis jsp à l'aide de servlets?
- 16. Comment supprimer un fichier txt lors de l'utilisation de Tomcat et de servlets?
- 17. ressources uniques et multiples ressources
- 18. ressources non valide Fichier
- 19. UTF-8 et Servlets sur Tomcat/Linux
- 20. Jetée intégrée: JSP et servlets ensemble?
- 21. Charger le fichier de ressources dans la bibliothèque de classes et connaître le fichier de ressources à utiliser
- 22. Classes abstraites et servlets en Java EE
- 23. Connexion entre fichier jsp et classe de ressources
- 24. Fichiers multilingues et ressources
- 25. Accès printemps haricots de filtres de servlets et les étiquettes
- 26. printemps initialisation de servlets mvc
- 27. Modèle de threads Java Servlets
- 28. Est-ce qu'un fichier de ressources d'accès au fichier js de ressources non incorporées (.resx) peut?
- 29. Servlets SIP, serveur de chat
- 30. red5 et servlets: Comment puis-je obtenir HttpServerRequest et HttpServerResponse?
Vous devrez probablement fournir plus de contexte que celui-ci. En règle générale, cependant, il est généralement recommandé d'avoir accès à votre base de données - et autant de logique métier que possible - du côté du serveur, d'autant plus que vous faites moins confiance à vos utilisateurs. En ce qui concerne les "fichiers de propriétés", je ne sais pas de quoi vous parlez. – Steve
@Steve: http://java.sun.com/docs/books/tutorial/essential/environment/properties.html C'est comme les fichiers '.ini' pour Java. – BalusC
@srikanth: votre question est vague. "Méthodes de base de données", qu'est-ce que c'est? Vous ne voulez pas dire des instructions SQL? Ou voulez-vous dire le vrai code Java? Pourquoi voudriez-vous faire ça? – BalusC