où est l'utilisation de la sérialisation dans une application WebApplication. p> li>
est-il nécessaire qu'un haricot de forme soit sérialisable. p> li>
dans tomcat Qu'est-ce que l'utilisation de sessions.sers fichier .. p> li> ol>
5 Réponses :
wow, beaucoup de questions sans beaucoup de contexte. P>
Pour votre n ° 1, je vais supposer que vous parlez de sérialisement que vous faites allusion dans vos autres points sur la sérialisation de Java, pas la sérialisation em> contre le parallélisme. Si tel est le cas, de nombreuses applications Web sertialiseront ou sauveront l'état des objets pour le garder durable. Cette durabilité peut être utilisée à travers les demandes HTTP (comme dans la gestion de la session), pour le stockage des informations à plus long terme ou pour envoyer un "réseau" en termes de veille à ce que toutes les parties reçoivent une copie desdites informations. P >
On doit se poser à HTTP s'il s'agit bien d'une bonne idée que par la conception et l'échelle apatride est "bonne" et si l'on dispose d'un magasin de support tel qu'un dB pourquoi la DB ne fait pas le travail. Le bean de forme que je devinerais est utilisé dans cette nature, car les servlets passeront autour des informations de formulaire sous forme de descrbied. P>
Pour votre première et deuxième question, consultez ce Oui, nous avons besoin de sérialisation chaque fois que nous devons persister les objets dans le système de fichiers ou envoyer des objets sur le fil. Vous pourriez penser que dans une application Web, nous ne le faisons pas nécessairement. Mais le serveur nécessite généralement une chose sérialisable au cas où il est nécessaire à l'avenir lorsque vous passez à un environnement en cluster ou que vous souhaitez transmettre votre haricot à un composant distant, c'est-à-dire composant EJB. Ou vous voudrez peut-être stocker votre haricot dans une session, pour cette raison pour cette raison, vos haricots devraient être sérialisables. P> li>
Oui, pour la même raison, indiquée ci-dessus. p> li>
sessions.ser est une session sérialisée. Tomcat l'a persisté, il peut donc être récupéré plus tard. Maintenant, vous avez eu une idée selon laquelle nous avons besoin de haricots sérialisables, car vous voudrez peut-être stocker des objets de haricots à la session et à la session Persist Tomcat sur le système de fichiers, c'est-à-dire session.ser. Donc, vos haricots doivent mettre en œuvre sérialisisable afin qu'ils puissent être persistés / récupérés avec la session. p> li>
ol>
Au fait, l'exactitude de persister et de récupérer de la bean dépend de la mise en œuvre correcte de sérialisable. Pour cela, je vous recommanderais de lire les sujets connexes en Java efficace. P>
sessions (et tous les attributs qui y sont ajoutés) doivent être sérialisables si le conteneur souhaite stocker la session. Cela peut avoir deux raisons: p>
Une autre raison possible est de passer des attributs de demande d'une webApp à un autre à l'aide de context croisé Dispathing. Les deux WebApps ont des chargeurs de classe différents si simples casting ne fonctionneraient pas. P>
Donc, votre Tomcat semble écrire la session à un fichier à l'aide de la sérialisation. Un haricot de forme est typiquement aussi stocké dans la session, alors oui, il doit être sérialisé. P>
Et dernier, il peut y avoir beaucoup plus de raisons de sérialisables comme dans toute autre application. Les caches peuvent en avoir besoin pour échanger le contenu de cache (comme Ehcache peut faire). Toute autre partie de données peut être sérialisée pour être stockée sous forme de blob dans une base de données, ... p>
1) Il s'agit d'une fonctionnalité dépendante du serveur d'applications, mais la spécification de servlet indique que si le conteneur de servlet souhaite prendre en charge les environnements distribués (sessions de partage entre les instances) etc., il doit accepter des objets qui implémentent sérialisables et être capables de les migrer. . Tomcat prend également en charge la conservation de l'état de la session à travers le redémarrage des serveurs pour des objets de session sérialisables. Vous pouvez transformer cette fonctionnalité de Tomcat ON ou OFF dans le fichier Conf / Context.xml (voir les commentaires là-bas). P>
2) Il ne serait nécessaire que pour un bean de forme Serializable Si A) La session est scopée et b) que vous utilisez soit des sessions distribuées, soit une fonctionnalité telle que Tomcat utilise pour persister la session qui l'exige. p>
3) Le fichier sessions.ser est le fichier contenant les objets sérialisés de la session. Tomcat l'utilise pour les préserver à travers les redémarrages du serveur si vous l'avez configuré pour le faire (voir ci-dessus). En général, un fichier .ser est un objet Java sérialisé, une représentation binaire de l'état de l'objet. P>
une très bonne description de Wikipedia : p>
sérialisation a un certain nombre de Avantages. Il fournit: p>
- une méthode de persistant d'objets qui sont plus pratiques que écrire leurs propriétés à un texte Fichier sur disque et réassemblage en lisant ce dos dans. li>
- une méthode d'émission d'appels de procédure à distance, par exemple, comme dans le savon li>
- Procédé de distribution d'objets, en particulier dans les logiciels Componterie
comme com, corba, etc. li>- Procédé de détection des modifications des données variables du temps. LI> ul> blockQuote>
Un vrai monde (simple) exemple: dites Vous créez une instance utilisateur dans Java. Maintenant, vous voulez afficher cet objet Dans un navigateur Web utilisant JavaScript. Une option est de sérialiser le objet de telle manière que JavaScript peut désérialiser l'objet (en utilisant une représentation que Java et JavaScript peuvent comprendre) et Affichez-le. P> li>
- Cela dépend de ce que vous devez faire avec le haricot de forme quant à savoir si devrait être sérialisé ou non. li>
- app est un site Web application qui vous aide à déployer et gérer d'autres applications Web à matou. Je ne suis pas un expert de Tomcat, mais Je pense que le responsable Tomcat tente de N'oubliez pas d'informations sur le sessions créées par le web applications qu'il gère. Ce doit se souvenir de cette information même Quand le processus Tomcat est redémarré. Donc, Tomcat Manager Crée un fichier nommé "session.ser" qui est une représentation sérialisée des informations qu'il a besoin rappelez-vous à propos de tout le géré Sessions d'applications. LI> ol>
Pouvez-vous s'il vous plaît élaborer pourquoi les réponses données ne vous ont-elles pas satisfaites? Vous semblez avoir ajouté une prime quelques semaines après la publication des réponses, mais vous n'avez pas semblé répondre / commentaires sur aucun d'entre eux.
Peut-être parce que le "démarrage d'une générosité" a l'air tentant :)
Nous sommes tous juste des hitmen sur Internet.