Utilisation de diverses méthodes InputStream pour le chargement de fichiers
Pour charger un fichier en tant qu'InputStream, les programmeurs ont plusieurs options à considérer. Ce discours compare et oppose trois méthodes :
Méthode Différences d'interprétation
La principale distinction entre ces méthodes réside dans la manière dont elles interprètent le nom de fichier fourni. ClassLoader.getResourceAsStream() et Class.getResourceAsStream() utilisent des approches différentes :
Class.getResourceAsStream(path):
ClassLoader.getResourceAsStream(path):
Considérations d'adéquation
Dans votre cas spécifique, en déployant dans WebSphere 6.1, vous devez utiliser Thread.currentThread().getContextClassLoader().getResourceAsStream(fileName). Ce choix est conforme à la pratique recommandée pour le chargement de ressources dans un environnement de serveur d'applications. this.getClass().getResourceAsStream() peut également convenir dans ce contexte.
Considérations supplémentaires pour les utilisateurs de Tomcat
Pour les utilisateurs de Tomcat exécutant versions antérieures à 8, notez que ClassLoader.getResourceAsStream() et Class.getResourceAsStream() peuvent se comporter différemment que prévu. Assurez-vous d'évaluer minutieusement le comportement de votre code dans ces environnements.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!