Movlin  ¦   CV   ¦   Kontakt  ¦   Blog

CV

Systemarkitekt

Systemintegration

BizTalk Server

Java

Java EE 5

Open Source

Spring

Ruby on Rails

Websiteanalys

Bokrecensioner

Konferenser

Øredev, Malmö 2007
The Server Side, Barcelona 2007
SAP TechEd 2006
JAOO 2006
Sime05

Java Enterprise Edition 5 (Java EE 5)

Så har då Java EE 5 slutligen blivit klar och till slut fick man ordning på specifikationen så att utvecklare kan börja koncentrera sig på att utveckla system utan att behöva fokusera på tekniken i första hand. De som tagit fram specifikationen har tagit åt sig kritiken ifrån Java kommuniteten och starka personligheter som Rod Johnson med sitt ramverk Spring

Nyheter i Java EE 5 är EJB 3.0, Java Persistence API, Java Server Faces 1.2 samt förbättrat stöd och utveckling av Web Services á la .Net med annoteringar.

EJB 3.0

Enligt specifikation så har har målet med EJB 3.0 varit att förbättra arkitekturen för att minska komplexiteten för "Enterpriseutvecklare". Bl.a. har man uppnått detta med införa

  • Annoteringar
  • Anamma "convention over configuration" (se Ruby on Rails)
  • Dependency Injection
  • Förenkling av de olika EJB typerna
  • Minskning av antalet checked exception att ta hand om
  • Uttökning av EJB QL

Äldre EJB specifikationer stöds fortfarande för att vara bakåtkompatibel

Annoteringar

Med annoteringar behöver försvinner kravet på deployment descriptorer och dessutom deklarerar man vilka klasser som är en EJB klass mha annoteringar.

Convention over configuration

Om utvecklaren håller sig defaultkonventionen ska denne inte behöva explicit uttrycka detta i konfigurationen vilket underlättar.

Dependency Injection

Likt många av dagens Java ramverk använder numera även EJB 3.0 dependency injection (se Dependency Injection, Spring för att binda klasser och tjänster. )

Förenkling av de olika EJB typerna

Borta är kravet på att skapa interface och olika klasser för de olika EJB typerna så som home interface för Session Beans samt alla interface för Entity Beans. Det finns heller inget krav på att Business Interfacet för en Session Bean måste ärva ifrån EJBObject, EJBLocalObject eller java.rmi.Remote.

Java Persistence API (JPA)

Syftet med JPA är att tillhandahålla ett lättviktigt persistensramverk där vanliga Java-klasser kan agera som entitetsklasser. Dessutom kan JPA användas utanför en Java EE applikationsserver.

Web Services

Precis som alla .Net-utvecklare är vana vid så kan numera även Java-utvecklare m.h.a annoteringar publisera en metod i Java klass som en Web Services.

@Stateless
@WebService
public class creditServiceBean {
...
  @WebMethod
  public int validateCreditCardNumber(String creditCardNumber);

Dessutom så har man lagt krut på att göra Web Service specifikationen än mer kompatibel med gällande Web Service standarder som växer fram för olika områden, bl.a. SOAP 1.2

Referenser

För att fördjupa dig än mer i ämnet kan du gå in på jcp.org och läsa om JSR 220 (EJB 3.0)

I samband med att Sun specifikation så släppte de även den första certifierade Java EE 5 applikationsservern Glassfish

Den första kommersiella produkten att certifieras var lite oväntat kanske SAP:s NetWeaver Applikation Server. Den går att ladda ner ifrån SAP Developer Network

Movlin | Adress: Humlevägen 24, 437 42 Lindome | Telefon: 0708-320809 | E-post: | © 2005-2008