Accueil > Java, Programmation > Java 5 et l’injection de dépendance

Java 5 et l’injection de dépendance

11/05/2010 jmguilla Editer

This post is also available in: Anglais

Comment chargé dynamiquement une implémentation en Java 5?

Impossible d’utiliser Java 6? Impossible d’utiliser l’une des fonctionnalités les plus cools, le chargement dynamique d’implémenation en utilisant:

ServiceLoader.load(MyInterface.class)

Je sais combien c’est ennuyeux… Ce n’est pas dans l’API publique, je l’ai trouvé ici. En résumé, cette fonctionnalité est accessible en Java 5, et facilement en plus!!:

   CharEncoder getEncoder(String encodingName) { 
       Iterator ps = Service.providers(MyInterface.class); 
       while (ps.hasNext()) { 
           MyInterface myInterface = (MyInterface)ps.next(); 
           MyImpl myImpl = MyInterface.getImpl(implName); 
           if (myImpl != null) 
               return myImpl; 
       } 
       return null; 
   }

Voilà!

Categories: Java, Programmation Tags: ,
Les commentaires sont fermés.