Strategies for Landing an Oracle DBA Job as a Fresher
Java EE6 CDI
1. The
New
Java
EE
CDI
-‐
the
re-‐invented
component
model
for
Java
EE
6.
BeAer
than
Spring?
Johan
Eltes
|
johan.eltes@callistaenterprise.se
|
Cadec
2010-‐01-‐20
onsdag 27 januari 2010 1
Säg att ultimata beviset för att en “lättviktig” miljö gubbat till sig, är att det behövs en specialpaketerad eclipse-distribution.
Spring är definitivt där.
Det är en stor plattform i sig själv. Vi behöver något lättviktigare!
Ta av ryggsäcken!
Nämn tydligt att det handlar om annoteringsbaserad komponentmodel!
Det finns inget standardiserat sätt konfigurera “bönor” med XML i CDI.
Det är ju trots allt enhetsestning / TDD som är drivkraften för DI!
Gå långsamt igenom projektet.
Visa beans.xml.
Dema usecase 1 - brytpunkt i Service, visa att DAO injecerats.
Qualifiers:
- Förklara
- Öppna Qualifer-annoteringen
Producers
- Klargör att detta blir extra mycket använt när man inte har XML-konfigurering. En klass kan ju bara ha en annotering, men många bean-konfigar (i Spring)
- Visa JmsTemplates och förklara först producer methods och sedan producer fields.
Ta på den lilla ryggsäcken!
Kommentera Spring integrationstestning!
Gå igenom uppsättningen. med Test-EJB.
- Visa testcase.
- Visa Resources-klassen (producer som arv i Java EE 5)
- Visa Dao och sätt brytpunkt där, visa att EntityManager har injecerats.
Use-case 3: Systematically handle cross-cutting concerns ("AOP")
Rational:
- Toggling technical features like transaction handling, logging, etc without editing a lot of classes
Charactersistics
- One bean per class (of technical feature)
Options for annotation based DI
- Integration of a full-fledged point-cut language (e.g. aspectj)
- Injecting proxy handlers (interceptor) based on annotations
- Injecting type-compatible “pre-preprocessor” (decorator) based on annotations
Dema:
- Visa koden
- Kör koden och visa konsolen.
Brokering of events between beans
- Beskriv caset
- Visa koden
- kommentera att det är typsäkert, lätviktigt och flexibelt
Use-case 5: Contextual services
Gå igenom bilden. Ingen demo.
SPI för:
- metaprogrammering
- integrera CDI-implementationer i olika containers (t.ex. Weld i Tomcat)
- Att göra kundspecifika tillägg till programmeringsmodellen
Demo!
- Visa TemplateProducern
- Kör koden
- Ändra i filen
- Visa att testet fallerar