Obiekty proxy w Java’ie
Co to są właściwie klasy Proxy? Z pojęciem proxy często się w informatyce można spotkać, mamy serwery proxy, wzorzec projektowy proxy i zawsze się to ogranicza do pośrednictwa, tak też jest i w tym przypadku, tylko że dostarcza to ogromnych możliwości. Na podstawie przekazanego literału klasy ( niektórzy nazywają to obiektem typu Class ) można dynamicznie w trakcie wykonywania programu stworzyć klasy implementujące np. wszystkie metody podanego interface’u. Taka możliwość skłoniła mnie do napisania mini-frameworka umożliwiającego całkowite oddzielenie Widoku aplikacji od Kontrolera. Tak więc w zależności od Kontrolera ten sam guzik widoku może robić 2 różne rzeczy.
Celem stworzenia obiektu proxy musimy posłużyć się statyczną metodą:
java.lang.reflect.Proxy.newProxyInstance( classLoader, interfaces, handler);
gdzie:
classLoader, to co tu dużo mówić classLoader,
intefaces, to tablica interface’ów jakie ma implementować nowo tworzona klasa
handler, obiekt implementujący interface InvocationHandler – będzie pośredniczył właśnie w wywołaniach metod interface’ów podanych jako 2 parametr.
Kod mojego frameworka razem z przykładem zastosowania można obejrzeć, przeanalizować, dostępne jest na googlowym SVN: svn checkout http://pjr-framework.googlecode.com/svn/trunk/ pjr-framework-read-only
| Drukuj artykuł | Ten wpis został napisany przez pejotr na 14-03-2009 o 21:34, i jest w kategorii Java, Odkurzone. Podążaj za odpowiedziami do tego wpisu przez RSS 2.0. Możesz napisać komentarz, lub trackbacka z Twojej własnej strony. |