2 votes

Devrais-je charger les données mysql dans des tableaux ou simplement interroger la base de données en utilisant Java

Je suis en train de faire une application de bureau en Java pour la facturation des clients qui utilisera une base de données mysql (afin que je puisse créer par la suite une interface php utilisant la même base de données). Je me demandais si je devrais créer une classe qui stocke toutes les infos de mysql dans des tableaux au démarrage pour que je puisse travailler avec les tableaux, ou si je devrais simplement interroger la base de données lorsque j'ai besoin d'accéder aux données.

Je me demandais ce qui est le plus efficace, le plus rapide, etc... Est-ce que quelqu'un aurait de bons conseils?

3voto

Ned Batchelder Points 128913

Vous devez interroger la base de données lorsque vous avez besoin des données. C'est pour cela que les bases de données existent. Si vous importez toutes les données dans des tableaux Java, vous finirez par construire des méthodes d'interrogation sur ces tableaux, ou vous vous limiterez à des moyens simplistes d'accéder aux données.

Si vos données sont assez petites pour tenir facilement en RAM, alors MySQL les mettra en cache de toute façon, et cela ira aussi vite que si vous les aviez d'abord extraites dans des tableaux.

0voto

duffymo Points 188155

Mettre des données dans des tableaux peut avoir du sens si c'est statique - je qualifierais cela de mise en cache.

Mais les données de facturation me semblent plus dynamiques, selon la façon dont vous les définissez. Dans ce cas, je interrogerais la base de données à chaque fois.

0voto

Michael Berkowski Points 137903

Interrogez au besoin plutôt que de précharger toutes les informations. Cela utilisera potentiellement beaucoup moins de mémoire. Certaines de vos données peuvent avoir besoin d'être mises en cache pendant le travail, mais il est probable que la plupart d'entre elles ne le nécessitent pas. Le SGBDR est déjà conçu et optimisé pour stocker et récupérer les données au besoin, il est donc préférable de le laisser faire son travail.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X