Pokazywanie postów oznaczonych etykietą Java. Pokaż wszystkie posty
Pokazywanie postów oznaczonych etykietą Java. Pokaż wszystkie posty

środa, 7 marca 2012

EIwS-Cert - współbieżność w Springu (cz. 3)

Oprócz programowego podejścia do uruchamiania i planowania wykonania zadań Spring w ramach konfiguracji xml'owej udostępnia specjalną przestrzeń wspierającą współbieżność: xmlns:task="http://www.springframework.org/schema/task" dostępnej pod adresem: xsi:schemaLocation="http://www.springframework.org/schema/task http://www.springframework.org/schema/task/spring-task.xsd".

środa, 1 lutego 2012

EIwS-Cert - współbieżność w Springu (cz. 2)

W kolejnym z cyklu (Współbieżność w Springu cz. 1) wpisie dotyczącym współbieżności w Springu przedstawiona zostanie koncepcja planowania zadań.

sobota, 28 stycznia 2012

EIwS-Cert - współbieżność w Springu (cz. 1)

Kontynuując przygotowania do certyfikatu z Enterprise Integration with Spring chciałbym przedstawić sposób w jaki w Springu można zapewnić równoległe wykonywanie wielu zadań - współbieżność. W poprzednich wpisach z serii (wpis I i wpis II) przybliżono temat współbieżności w Javie. Spring na bazie tego co udostępnia Java (ale nie tylko) utworzył swoją warstwę bean'ów pozwalających zrealizować przetwarzanie równoległe.

poniedziałek, 23 stycznia 2012

EIwS-Cert - współbieżność w Java (cz. 2)

Współbieżna realizacja zleconych zadań nie ogranicza się jedynie do wykonania ich przez egzekutor, który posiada wolny wątek (więcej o tym traktuje poprzedni post). Realizację zadań można również zaplanować! Aby skorzystać z tej możliwości należy użyć dedykowany do tego rodzaju zadań egzekutor - ScheduledExecutorService. 

piątek, 20 stycznia 2012

EIwS-Cert - współbieżność w Java (cz. 1)

Jednym z pierwszych tematów, który omawiany jest na szkoleniu EIwS jest współbieżność. Zanim przedstawię sposoby w jakie Spring realizuje wielowątkowość proponuję zapoznać się z tym jak radzi sobie z tematem Java.

niedziela, 1 stycznia 2012

"Failed to create Java Virtual Machine" - problem po aktualizacji STS

Po zaktualizowaniu SpringSource Tool Suite do wersji 2.8.1 przy uruchamiania aplikacji zaczął pojawiać się komunikat "Failed to create Java Virtual Machine" i program kończył działanie. Rozwiązaniem problemu okazało się rozszerzenie konfiguracji uruchomieniowej aplikacji (sts.ini) o dodatkowy parametr.

wtorek, 9 lutego 2010

Wzorce JEE według Adama Bien'a

Zawodowo zajmuję się programowanie w Javie. Hobbystycznie, natomiast próbuję sił z JEE. Dlatego nie mogłem przejść obojętnie wobec książki, którą zaserwował Adam Bien - "Real World Java EE Patterns - Rethinking Best Practices". Dodatkowo w dotychczasowej karierze zawodowej zajmowałem się wyłącznie aplikacjami J2EE (ku mojemu wielkiemu rozczarowaniu). Jednak coraz więcej firm, dla których tworzone jest oprogramowanie migruje na serwery aplikacji zgodne ze specyfikacją JEE. Z tego powodu kwestią czasu jest kiedy w nowych projektach będzie można skorzystać z jej dobrodziejstw. Nie chcąc pozostać w tyle sięgnąłem po wyżej wymienioną książkę. 
 
Motywem przewodnim są wszechobecne wzorce. Adam skupia się w niej głównie na tych, które mogą być bardzo pomocne w tworzeniu aplikacji JEE. Pisze z perspektywy osoby, która wcześniej dokładnie poznała architekturę J2EE i rozlegle stosowała wzorce zaproponowane przez Sun'a. Wskazuje te które nie mają obecnie żadnego zastosowania w nowej architekturze, ponieważ nowe rozwiązania wyeliminowały potrzebę ich wykorzystania. Ukazuje również te, których znaczenie się nie zmieniło, jednak z przyczyn częstego i błędnego ich stosowania stara się wyraźnie zaznaczyć jak powinno się z nich korzystać.
 
Główny podział wzorców przebieg według wykorzystania  ich w odpowiednich warstwach. Warstwa integracji zawiera następujące wzorce: Service Facade, Service, Persistent Domain Object, Gateway, Fluid Logic, Paginator, Fase Lane Reader. Warstwa integracji natomiast: Data Access Object, Transfer Object., Service Activator. Dodatkowo w warstwie integracji opisuje strategie migracji beanów 2.x do 3.x ielegancki sposób wykorzystania Java Connector Architecture. 

Oprócz wymienionych wyżej wzorców przyporządkowanych do odpowiednich warstw przedstawione są inne, równie użyteczne jak: Service Starter, Singleton, Bean Locator, Thread Tracker, Dependency Injection Extender, Payload Extractor, Resource Binder i Context Holder.

Książkę czyta się bardzo przyjemnie. Każdy wzorzec zaprezentowany jest z punktu widzenia problemu, który rozwiązuje, strategii, testowania, dokumentowania, konsekwencji które niesie wykorzystanie i wskazania powiązanych wzorców. 
 
Moim zdaniem jest to obowiązkowa lektura dla architektów rozwiązań klasy Enterprise, jak również dla zwykłych programistów, którym przyjdzie implementować konkretne problemy biznesowe.