Plain Old Java -objektit

Vaikka POJO-objekteja on ollut käytössä aiemminkin, niillä on entistä tärkeämpi tehtävä Java EE 5 -ohjelmiston ohjelmointimetodologiassa. Nyt voidaan POJO-objekteista luotujen bean-yrityskomponenttien ja olioiden avulla luoda EJB-sovelluksia, joissa on pysyvyysominaisuuksia.

Java 2 Enterprise Edition -kehyksen monimutkaisuus on aiemmin vaikeuttanut huomattavasti käyttöönottoa. Java EE 5 -määrityksessä haettiin yksinkertaisempaa kehitystapaa käyttämällä POJO-objekteja suunnittelun perustana. POJO-ohjelmointimallin avulla yksikkötestauksen voi tehdä sovelluspalvelimen ulkopuolella, jolloin ohjelmointi on kokonaisuudessaan entistä sujuvampaa.

Yksinkertainen POJO-objekti

Seuraava koodi on esimerkki yksinkertaisesta POJO-objektista. Huomaa, että siinä ei ole viittauksia rajapintoihin. Jotta tätä POJO-objektia voisi käyttää EJB 2.1 -sovelluksen perustana, tarvitaan lisää kehyksen luokkia tukemaan sitä ja itse luokan on toteutettava lisää rajapintoja.

public class Test {

String name;

		/**
    *  Tämä on testiobjektin konstruktori.
    **/
    public Test(){
    
        name = "Jane";

    } 

}

EJB 3.0 -bean-komponentin luonti edellyttää komponentin määrittävän huomautuksen lisäystä luokkatasolla. Seuraavassa esimerkissä POJO-objekti muutetaan istunnon tilattomaksi bean-komponentiksi lisäämällä @Stateless-huomautus.

@Stateless

String class Test {

	String name;

	/**
 *  Tämä on testiobjektin konstruktori.
	**/
	public Test () {

			name = "jane";

	}

}
Oikeassa sovelluksessa POJO-objektiin tarvitaan lisää liiketoimintalogiikkaa. POJO-objekteja käytetään Java EE -määrityksen kontekstissa siksi, että siten komponenttia koskevat metatiedot voidaan liittää suoraan POJO-objektiin. Näin käsiteltävien artefaktien määrä vähenee ja on helpompi varmistaa metatietojen eheys.
Uudessa POJO-pohjaisessa ohjelmointimallissa voidaan myös keskittyä käsittelemään Java EE 5 -komponentteja Java-muokkausohjelmassa sen sijaan, että kirjoitettaisiin liiketoimintalogiikkaa XML:ssä. Tämän sovelluskehitysohjelmiston avulla voidaan käyttää hyväksi ominaisuuksia (kuten kirjoituksenaikaista tarkistusta, sisällönhallinnan aputoimintoa ja koodinparannusta), jotka voivat edelleen yksinkertaistaa Java EE 5 -sovellusten kehitysprosessia.