2011-02-06 1 views
1

J'ai un projet cette année. Il s'agit de développer une application Java avec une base de données pour la circulation et la validation des documents entre le manager, le secrétaire et le chef des finances. Comment rendre la base de données accessible à tous, puisque l'application sera installée sur les ordinateurs que j'ai mentionnés plus haut, dois-je l'installer (la base de données) sur ces ordinateurs et cette modification, les contraintes de cohérence et l'intégrité de la base de données sera violé.Java DB Technologie client-serveur - DB centralisée - Comment?

C'est mon problème pour le moment. Notez qu'avant de développer une application pour gérer une bibliothèque et qu'il s'agissait d'un poste client.

Y a-t-il une possibilité (ou technologie en Java) pour mettre la base de données sur le web et y être accessible ou la rendre accessible depuis un ordinateur que je réalise en tant que serveur client-serveur.

Je peux faire des recherches si vous pouvez me donner une solution ou un signe

Je vous serais reconnaissant de votre aide ou de donner des liens pour les tutoriels. En attente de votre réponse.

Meilleures salutations,

enter image description here

Répondre

3

Comment rendre la base de données accessible par tout, puisque l'application être installé sur les ordinateurs que je mentionné ci-dessus, dois-je installer il (la base de données) sur ces ordinateurs et cette modification, les contraintes de cohérence et d'intégrité de la base de données seront enfreintes.

Votre question suggère que vous aurez besoin d'une base de données sur un ordinateur. Appelons-le un ordinateur DB. Je suggère que ce soit un serveur, que personne du personnel régulier, tel que le secrétaire, le directeur, etc ... ne puisse y accéder. Avoir une base de données centrale éliminera vos soucis concernant la violation d'intégrité.

Maintenant, vous avez deux options. Vous pouvez créer une application Web que vos utilisateurs utiliseront pour interagir avec votre système.Ceci est une approche plus moderne, puisque vous aurez un système à 3 niveaux:

  1. utilisateurs peuvent accéder à votre application via un navigateur
  2. l'application Web lui-même est stockée sur un serveur d'application, et il accède à la base de données
  3. la base de données est la partie back-end

la deuxième option fait une application de bureau et de le déployer sur l'ordinateur de tout le monde qui va l'utiliser; et ensuite le faisant se connecter à la base de données pour interagir avec elle. La première option est plus facile lorsque vous souhaitez exposer votre application à un grand nombre d'utilisateurs (et sur le Web), mais sachez ce que vous faites en faisant ce genre de choses, car vous devez prendre la sécurité très au sérieux .

Si vous allez la première route, vous aurez besoin d'un certain nombre de choses:

d'abord, une base de données. Utilisez ce que vous pouvez, mais si vous avez besoin de bases de données gratuites et de haute qualité, utilisez PostgreSQL ou MySQL.

Deuxièmement, un serveur d'applications. Je suggère d'utiliser Tomcat ou GlassFish.

Maintenant, vous devez développer votre application en utilisant JavaEE. Il y a beaucoup d'informations à ce sujet, alors j'espère que cela vous aidera au début et vous orientera dans la bonne direction.

Notez que Tomcat ne prend pas entièrement en charge Java EE, mais un sous-ensemble de celui-ci. Et ce sous-ensemble est certainement plus que suffisant pour ce que vous devez accomplir.

+0

Merci l'homme! Je suis vraiment très reconnaissant! – alibenmessaoud

2

Si je vous comprends bien, vous cherchez des façons de mettre en œuvre un client-serveur système, où plusieurs clients sur des ordinateurs distincts chacun se connectent à un serveur central (ou cluster de serveurs) hébergeant une base de données. En Java, généralement (mais pas nécessairement) la base de données est dans une application Web, et les clients sont des clients Web légers - dans ce cas, il est généralement appelé une application d'entreprise .

Java a un SDK entier dédié pour cela, appelé Java Enterprise Edition. Vous trouverez peut-être many questions dealing with this on SO, voici quelques-unes que je pense peut être particulièrement utile: